mirror of
https://git.cloudron.io/cloudron/gitea-app
synced 2025-09-24 22:17:36 +00:00
Compare commits
18 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
506fc44188 | ||
|
b37adcbcba | ||
|
d5b80c9393 | ||
|
e180f84aef | ||
|
090c4c43a8 | ||
|
ce1c328a27 | ||
|
e76784cb8f | ||
|
64d8d5b661 | ||
|
bf30c8e13b | ||
|
381562f347 | ||
|
ffa9d52206 | ||
|
7d0d52ceae | ||
|
f19465b3d6 | ||
|
662cfae820 | ||
|
e365f033d1 | ||
|
b8e5fcc22d | ||
|
a176ab5f20 | ||
|
9b773524ce |
37
CHANGELOG.md
37
CHANGELOG.md
@@ -1629,3 +1629,40 @@
|
||||
* Set owner id to zero when GetRegistrationToken for repo (#31725) (#31729)
|
||||
* Fix API endpoint for registration-token (#31722) (#31728)
|
||||
* Add permission check when creating PR (#31033) (#31720)
|
||||
|
||||
[1.33.3]
|
||||
* Update Gitea to 1.22.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.22.3)
|
||||
* Fix bug when a token is given public only (#32204) (#32218)
|
||||
* Increase cacheContextLifetime to reduce false reports (#32011) (#32023)
|
||||
* Don't join repository when loading action table data (#32127) (#32143)
|
||||
* Fix javascript error when an anonymous user visits migration page (#32144) (#32179)
|
||||
* Don't init signing keys if oauth2 provider is disabled (#32177)
|
||||
* Fix wrong status of Set up Job when first step is skipped (#32120) (#32125)
|
||||
* Fix bug when deleting a migrated branch (#32075) (#32123)
|
||||
* Truncate commit message during Discord webhook push events (#31970) (#32121)
|
||||
* Allow to set branch protection in an empty repository (#32095) (#32119)
|
||||
* Fix panic when cloning with wrong ssh format. (#32076) (#32118)
|
||||
[1.33.4]
|
||||
* Update gitea to 1.22.4
|
||||
* [Full Changelog](https://github.com/go-gitea/gitea/releases/tag/v1.22.4)
|
||||
* Fix basic auth with webauthn (#32531) (#32536)
|
||||
* Refactor internal routers (partial backport, auth token const time comparing) (#32473) (#32479)
|
||||
|
||||
[1.33.5]
|
||||
* Update gitea to 1.22.5
|
||||
* [Full Changelog](https://github.com/go-gitea/gitea/releases/tag/v1.22.5)
|
||||
* Upgrade crypto library ([#​32791](https://github.com/go-gitea/gitea/issues/32791))
|
||||
* Fix delete branch perm checking ([#​32654](https://github.com/go-gitea/gitea/issues/32654)) ([#​32707](https://github.com/go-gitea/gitea/issues/32707))
|
||||
* Add standard-compliant route to serve outdated R packages ([#​32783](https://github.com/go-gitea/gitea/issues/32783)) ([#​32789](https://github.com/go-gitea/gitea/issues/32789))
|
||||
* Fix internal server error when updating labels without write permission ([#​32776](https://github.com/go-gitea/gitea/issues/32776)) ([#​32785](https://github.com/go-gitea/gitea/issues/32785))
|
||||
* Add Swift login endpoint ([#​32693](https://github.com/go-gitea/gitea/issues/32693)) ([#​32701](https://github.com/go-gitea/gitea/issues/32701))
|
||||
* Fix fork page branch selection ([#​32711](https://github.com/go-gitea/gitea/issues/32711)) ([#​32725](https://github.com/go-gitea/gitea/issues/32725))
|
||||
* Fix word overflow in file search page ([#​32695](https://github.com/go-gitea/gitea/issues/32695)) ([#​32699](https://github.com/go-gitea/gitea/issues/32699))
|
||||
* Fix gogit `GetRefCommitID` ([#​32705](https://github.com/go-gitea/gitea/issues/32705)) ([#​32712](https://github.com/go-gitea/gitea/issues/32712))
|
||||
* Fix race condition in mermaid observer ([#​32599](https://github.com/go-gitea/gitea/issues/32599)) ([#​32673](https://github.com/go-gitea/gitea/issues/32673))
|
||||
* Fixe a keystring misuse and refactor duplicates keystrings ([#​32668](https://github.com/go-gitea/gitea/issues/32668)) ([#​32792](https://github.com/go-gitea/gitea/issues/32792))
|
||||
* Bump relative-time-element to v4.4.4 ([#​32739](https://github.com/go-gitea/gitea/issues/32739))
|
||||
* Make wiki pages visit fast ([#​32732](https://github.com/go-gitea/gitea/issues/32732)) ([#​32745](https://github.com/go-gitea/gitea/issues/32745))
|
||||
* Don't create action when syncing mirror pull refs ([#​32659](https://github.com/go-gitea/gitea/issues/32659)) ([#​32664](https://github.com/go-gitea/gitea/issues/32664))
|
||||
|
||||
|
@@ -4,16 +4,20 @@
|
||||
"author": "Gitea developers",
|
||||
"description": "file://DESCRIPTION.md",
|
||||
"tagline": "A painless self-hosted Git Service",
|
||||
"version": "1.33.2",
|
||||
"upstreamVersion": "1.22.2",
|
||||
"version": "1.33.5",
|
||||
"upstreamVersion": "1.22.5",
|
||||
"healthCheckPath": "/explore",
|
||||
"httpPort": 3000,
|
||||
"memoryLimit": 536870912,
|
||||
"addons": {
|
||||
"mysql": { },
|
||||
"sendmail": { "supportsDisplayName": true },
|
||||
"localstorage": { },
|
||||
"oidc": { "loginRedirectUri": "/user/oauth2/cloudron/callback" }
|
||||
"mysql": {},
|
||||
"sendmail": {
|
||||
"supportsDisplayName": true
|
||||
},
|
||||
"localstorage": {},
|
||||
"oidc": {
|
||||
"loginRedirectUri": "/user/oauth2/cloudron/callback"
|
||||
}
|
||||
},
|
||||
"tcpPorts": {
|
||||
"SSH_PORT": {
|
||||
@@ -34,10 +38,23 @@
|
||||
"https://screenshots.cloudron.io/io.gitea.cloudronapp/4.png",
|
||||
"https://screenshots.cloudron.io/io.gitea.cloudronapp/5.png"
|
||||
],
|
||||
"tags": [ "version control", "git", "code hosting", "development", "github", "bitbucket", "gitlab" ],
|
||||
"tags": [
|
||||
"version control",
|
||||
"git",
|
||||
"code hosting",
|
||||
"development",
|
||||
"github",
|
||||
"bitbucket",
|
||||
"gitlab"
|
||||
],
|
||||
"changelog": "file://CHANGELOG.md",
|
||||
"postInstallMessage": "file://POSTINSTALL.md",
|
||||
"minBoxVersion": "7.5.1",
|
||||
"checklist": {
|
||||
"change-default-password": {
|
||||
"message": "Change the default admin password"
|
||||
}
|
||||
},
|
||||
"minBoxVersion": "8.1.0",
|
||||
"forumUrl": "https://forum.cloudron.io/category/19/gitea",
|
||||
"documentationUrl": "https://docs.cloudron.io/apps/gitea/"
|
||||
}
|
||||
|
@@ -19,9 +19,10 @@ WORKDIR /home/git
|
||||
# for autosign feature
|
||||
ENV GNUPGHOME="/app/data/gnupg"
|
||||
|
||||
ARG VERSION=1.22.2
|
||||
# renovate: datasource=github-releases depName=go-gitea/gitea versioning=semver extractVersion=^v(?<version>.+)$
|
||||
ARG GITEA_VERSION=1.22.5
|
||||
|
||||
RUN curl -L https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64 -o /home/git/gitea/gitea \
|
||||
RUN curl -L https://dl.gitea.io/gitea/${GITEA_VERSION}/gitea-${GITEA_VERSION}-linux-amd64 -o /home/git/gitea/gitea \
|
||||
&& chmod +x /home/git/gitea/gitea
|
||||
|
||||
# setup config paths
|
||||
|
@@ -3,8 +3,6 @@ This app is pre-setup with an admin account. The initial credentials are:
|
||||
**Username**: root<br/>
|
||||
**Password**: changeme<br/>
|
||||
|
||||
Please change the admin password immediately.
|
||||
|
||||
<sso>
|
||||
Use the `Local` authentication source for logging in as admin.
|
||||
</sso>
|
||||
|
4
renovate.json5
Normal file
4
renovate.json5
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": ["local>devops/renovator//default.renovate.json5"]
|
||||
}
|
1
start.sh
1
start.sh
@@ -4,6 +4,7 @@ set -eu -o pipefail
|
||||
|
||||
mkdir -p /run/gitea/tmp/uploads /run/sshd /run/gitea/sessions
|
||||
|
||||
# CLOUDRON_OIDC_PROVIDER_NAME not supported as it will be used in rest route!
|
||||
setup_oidc_source() {
|
||||
set -eu
|
||||
|
||||
|
740
test/package-lock.json
generated
740
test/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -9,10 +9,10 @@
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"chromedriver": "^128.0.1",
|
||||
"chromedriver": "^131.0.3",
|
||||
"expect.js": "^0.3.1",
|
||||
"mocha": "^10.7.3",
|
||||
"selenium-webdriver": "^4.24.0",
|
||||
"superagent": "^10.1.0"
|
||||
"mocha": "^11.0.1",
|
||||
"selenium-webdriver": "^4.27.0",
|
||||
"superagent": "^10.1.1"
|
||||
}
|
||||
}
|
||||
|
52
test/test.js
52
test/test.js
@@ -1,11 +1,7 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
/* jshint esversion: 8 */
|
||||
/* global it:false */
|
||||
/* global xit:false */
|
||||
/* global describe:false */
|
||||
/* global before:false */
|
||||
/* global after:false */
|
||||
/* global it, xit, describe, before, after, afterEach */
|
||||
|
||||
'use strict';
|
||||
|
||||
@@ -29,21 +25,23 @@ describe('Application life cycle test', function () {
|
||||
|
||||
const TIMEOUT = parseInt(process.env.TIMEOUT, 10) || 5000;
|
||||
const EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
|
||||
const LOCATION = 'test';
|
||||
const LOCATION = process.env.LOCATION || 'test';
|
||||
const SSH_PORT = 29420;
|
||||
|
||||
let app, browser;
|
||||
var athenticated_by_oidc = false;
|
||||
let athenticated_by_oidc = false;
|
||||
|
||||
const repodir = '/tmp/testrepo';
|
||||
const reponame = 'testrepo';
|
||||
|
||||
const username = process.env.USERNAME;
|
||||
const password = process.env.PASSWORD;
|
||||
const email = process.env.EMAIL;
|
||||
|
||||
before(function () {
|
||||
browser = new Builder().forBrowser('chrome').setChromeOptions(new Options().windowSize({ width: 1280, height: 1024 })).build();
|
||||
const chromeOptions = new Options().windowSize({ width: 1280, height: 1024 });
|
||||
if (process.env.CI) chromeOptions.addArguments('no-sandbox', 'disable-dev-shm-usage', 'headless');
|
||||
browser = new Builder().forBrowser('chrome').setChromeOptions(chromeOptions).build();
|
||||
if (!fs.existsSync('./screenshots')) fs.mkdirSync('./screenshots');
|
||||
});
|
||||
|
||||
after(function () {
|
||||
@@ -51,8 +49,19 @@ describe('Application life cycle test', function () {
|
||||
fs.rmSync(repodir, { recursive: true, force: true });
|
||||
});
|
||||
|
||||
afterEach(async function () {
|
||||
if (!process.env.CI || !app) return;
|
||||
|
||||
const currentUrl = await browser.getCurrentUrl();
|
||||
if (!currentUrl.includes(app.domain)) return;
|
||||
expect(this.currentTest.title).to.be.a('string');
|
||||
|
||||
const screenshotData = await browser.takeScreenshot();
|
||||
fs.writeFileSync(`./screenshots/${new Date().getTime()}-${this.currentTest.title.replaceAll(' ', '_')}.png`, screenshotData, 'base64');
|
||||
});
|
||||
|
||||
function getAppInfo() {
|
||||
var inspect = JSON.parse(execSync('cloudron inspect'));
|
||||
const inspect = JSON.parse(execSync('cloudron inspect'));
|
||||
app = inspect.apps.filter(function (a) { return a.location.indexOf(LOCATION) === 0; })[0];
|
||||
expect(app).to.be.an('object');
|
||||
}
|
||||
@@ -132,7 +141,8 @@ describe('Application life cycle test', function () {
|
||||
}
|
||||
|
||||
async function addPublicKey() {
|
||||
var publicKey = fs.readFileSync(__dirname + '/id_ed25519.pub', 'utf8');
|
||||
const publicKey = fs.readFileSync(__dirname + '/id_ed25519.pub', 'utf8');
|
||||
execSync(`chmod g-rw,o-rw ${__dirname}/id_ed25519`); // ssh will complain about perms later
|
||||
|
||||
await browser.get('https://' + app.fqdn + '/user/settings/keys');
|
||||
|
||||
@@ -147,25 +157,9 @@ describe('Application life cycle test', function () {
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "has been added.")]')), TIMEOUT);
|
||||
}
|
||||
|
||||
async function addPublicKeyOld() {
|
||||
var publicKey = fs.readFileSync(__dirname + '/id_ed25519.pub', 'utf8');
|
||||
|
||||
await browser.get('https://' + app.fqdn + '/user/settings/keys');
|
||||
|
||||
await browser.wait(until.elementLocated(By.id('add-ssh-button')), TIMEOUT);
|
||||
await browser.findElement(By.id('add-ssh-button')).click();
|
||||
await browser.findElement(By.id('ssh-key-title')).sendKeys('testkey');
|
||||
await browser.findElement(By.id('ssh-key-content')).sendKeys(publicKey.trim()); // #3480
|
||||
var button = browser.findElement(By.xpath('//button[contains(text(), "Add Key")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(false)', button);
|
||||
await browser.findElement(By.xpath('//button[contains(text(), "Add Key") and contains(@class, "green")]')).click();
|
||||
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "has been added.")]')), TIMEOUT);
|
||||
}
|
||||
|
||||
async function createRepo() {
|
||||
var getRepoPage = await browser.get('https://' + app.fqdn + '/repo/create');
|
||||
|
||||
await browser.get(`https://${app.fqdn}/repo/create`);
|
||||
await browser.wait(until.elementLocated(By.id('repo_name')));
|
||||
await browser.findElement(By.id('repo_name')).sendKeys(reponame);
|
||||
var button = browser.findElement(By.xpath('//button[contains(text(), "Create Repository")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(true)', button);
|
||||
|
Reference in New Issue
Block a user