1
0
mirror of https://git.cloudron.io/cloudron/gitea-app synced 2025-09-25 14:37:44 +00:00

Compare commits

...

21 Commits

Author SHA1 Message Date
Girish Ramakrishnan
9551b31c8e Version 1.13.6 2019-11-03 18:30:32 -08:00
Girish Ramakrishnan
4514b6fc9b Update node modules 2019-11-03 18:24:06 -08:00
Girish Ramakrishnan
783cce292c Update gitea to 1.9.5 2019-10-30 14:46:11 -07:00
Girish Ramakrishnan
538f3fdead Version 1.9.4 2019-10-09 09:35:34 -07:00
Girish Ramakrishnan
b2b86f170f Update gitea to 1.9.4 2019-10-09 09:20:41 -07:00
Girish Ramakrishnan
4301fd5117 Version 1.13.4 2019-09-08 11:04:31 -07:00
Girish Ramakrishnan
7aebe88c3e Update gitea to 1.9.3 2019-09-08 10:51:41 -07:00
Girish Ramakrishnan
91cc96705e Version 1.13.3 2019-08-22 18:07:30 -07:00
Girish Ramakrishnan
6fe012f901 Update gitea to 1.9.2 2019-08-22 18:01:55 -07:00
Girish Ramakrishnan
29197622fc Remove session config now that migration is done 2019-08-19 20:11:47 -07:00
Girish Ramakrishnan
3adbf0b442 Version 1.13.2 2019-08-19 17:29:50 -07:00
Girish Ramakrishnan
6c0a2ab20b no need to relogin since session persists 2019-08-19 17:29:26 -07:00
Girish Ramakrishnan
1943723dd3 Use file based sessions
Fixes #5
2019-08-19 17:10:23 -07:00
Johannes Zellner
2d15227f2e Update chromedriver 2019-08-15 14:02:50 +02:00
Johannes Zellner
cbc0bfb222 Bump version for 1.9.1 2019-08-15 13:37:27 +02:00
Johannes Zellner
10df3c6ba9 Bump version for Gitea 1.9.0 2019-07-31 18:16:42 +02:00
Johannes Zellner
047ec295bc Remove unused test requires 2019-07-31 18:16:28 +02:00
Johannes Zellner
31b8a17230 Ensure we never test with the default port 2019-07-31 18:15:17 +02:00
Girish Ramakrishnan
ebb46bb7ac Version 1.12.0 2019-06-17 14:40:15 -07:00
Girish Ramakrishnan
53f180ef95 Update manifest to v2 2019-06-17 14:30:49 -07:00
Girish Ramakrishnan
d89fc6a0ec Update Gitea to 1.8.3 2019-06-17 14:29:03 -07:00
9 changed files with 456 additions and 437 deletions

View File

@@ -319,3 +319,79 @@
* better custom app.ini integration
* optional sso support
[1.12.0]
* Update Gitea to 1.8.3
* Update manifest to v2
[1.13.0]
* Update Gitea to 1.9.0
[1.13.1]
* Update Gitea to 1.9.1
[1.13.2]
* Make sessions persist restarts
[1.13.3]
* Update Gitea to 1.9.2
* Fix wrong sender when send slack webhook (#7918) (#7924)
* Upload support text/plain; charset=utf8 (#7899)
* Lfs/lock: round locked_at timestamp to second (#7872) (#7875)
* Fix non existent milestone with 500 error (#7867) (#7873)
* SECURITY
* Fix No PGP signature on 1.9.1 tag (#7874)
* Release built with go 1.12.9 to fix security fixes in golang std lib, ref: https://groups.google.com/forum/#!msg/golang-announce/oeMaeUnkvVE/a49yvTLqAAAJ
* ENHANCEMENT
* Fix pull creation with empty changes (#7920) (#7926)
* BUILD
* Drone/docker: prepare multi-arch release + provide arm64 image (#7571) (#7884)
[1.13.4]
* Update Gitea to 1.9.3
* Fix go get from a private repository with Go 1.13 (#8100)
* Strict name matching for Repository.GetTagID() (#8082)
* Avoid ambiguity of branch/directory names for the git-diff-tree command (#8070)
* Add change title notification for issues (#8064)
* Run CORS handler first for /api routes (#7967) (#8053)
* Evaluate emojis in commit messages in list view (#8044)
* Fix failed to synchronize tags to releases for repository (#7990) (#7994)
* Fix adding default Telegram webhook (#7972) (#7992)
* Abort synchronization from LDAP source if there is some error (#7965)
* Fix deformed emoji in commit message (#8071)
* Keep blame view buttons sequence consistent with normal view when viewing a file (#8007) (#8009)
[1.13.5]
* Update Gitea to 1.9.4
* Highlight issue references (#8101) (#8404)
* Fix bug when migrating a private repository #7917 (#8403)
* Change general form binding to gogs form (#8334) (#8402)
* Fix editor commit to new branch if PR disabled (#8375) (#8401)
* Fix milestone num_issues (#8221) (#8400)
* Allow users with explicit read access to give approvals (#8398)
* Fix commit status in PR #8316 and PR #8321 (#8339)
* Fix API for edit and delete release attachment (#8290)
* Fix assets on release webhook (#8283)
* Fix release API URL generation (#8239)
* Allow registration when button is hidden (#8238)
* MS Teams webhook misses commit messages (backport v1.9) (#8225)
[1.13.6]
* Update Gitea to 1.9.5
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.9.5)
* Hide some user information via API if user doesn't have enough permission (#8655) (#8658)
* Fix milestone close timestamp (#8728) (#8731)
* Fix deadline on update issue or PR via API (#8699)
* Fix 'New Issue Missing Milestone Comment' (#8678) (#8682)
* Fix 500 when getting user as unauthenticated user (#8653) (#8662)
* Use AppSubUrl for more redirections (#8647) (#8652)
* Add SubURL to redirect path (#8632) (#8634) (#8640)
* Fix #8582 by handling empty repos (#8587) (#8593)
* Fix bug on pull requests when transfer head repository (#8571)
* Add missed close in ServeBlobLFS (#8527) (#8543)
* Return false if provided branch name is empty for IsBranchExist (#8485) (#8492)
* Create .ssh dir as necessary (#8369) (#8486) (#8489)
* Restore functionality for early gits (#7775) (#8476)
* Add check for empty set when dropping indexes during migration (#8475)
* Ensure Request Body Readers are closed in LFS server (#8454) (#8459)
* Ensure that LFS files are relative to the LFS content path (#8455) (#8458)
* Ignore mentions for users with no access (#8395) (#8484)

View File

@@ -4,7 +4,7 @@
"author": "Gitea developers",
"description": "file://DESCRIPTION.md",
"tagline": "A painless self-hosted Git Service",
"version": "1.11.0",
"version": "1.13.6",
"healthCheckPath": "/healthcheck",
"httpPort": 3000,
"addons": {
@@ -20,7 +20,7 @@
"defaultValue": 29418
}
},
"manifestVersion": 1,
"manifestVersion": 2,
"website": "https://gitea.io",
"contactEmail": "apps@cloudron.io",
"icon": "file://logo.png",
@@ -35,6 +35,6 @@
"tags": [ "version control", "git", "code hosting", "development" ],
"changelog": "file://CHANGELOG",
"postInstallMessage": "file://POSTINSTALL.md",
"minBoxVersion": "1.10.0",
"minBoxVersion": "4.1.4",
"documentationUrl": "https://cloudron.io/documentation/apps/gitea/"
}

View File

@@ -1,4 +1,4 @@
This app packages Gitea <upstream>1.8.2</upstream>
This app packages Gitea <upstream>1.9.5</upstream>
Gitea is a painless self-hosted Git service. It is similar to GitHub, Bitbucket or Gitlab.

View File

@@ -1,5 +1,7 @@
FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
ARG VERSION=1.9.5
RUN apt-get update && \
apt-get install -y openssh-server git && \
rm -rf /etc/ssh_host_* && \
@@ -14,7 +16,7 @@ RUN passwd -d git
RUN mkdir -p /home/git/gitea
WORKDIR /home/git
RUN curl -L https://dl.gitea.io/gitea/1.8.2/gitea-1.8.2-linux-amd64 -o /home/git/gitea/gitea \
RUN curl -L https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64 -o /home/git/gitea/gitea \
&& chmod +x /home/git/gitea/gitea
# setup config paths

View File

@@ -95,3 +95,11 @@ PATH =
[indexer]
; this setting is protected and can't be modified
ISSUE_INDEXER_PATH = /app/data/appdata/indexers/issues.bleve
[session]
PROVIDER = file
PROVIDER_CONFIG = /run/gitea/sessions
COOKIE_SECURE = true
COOKIE_NAME = cloudron_gitea
GC_INTERVAL_TIME = 2592000

View File

@@ -2,20 +2,20 @@
set -eu -o pipefail
mkdir -p /run/gitea/tmp/uploads /run/sshd
mkdir -p /run/gitea/tmp/uploads /run/sshd /run/gitea/sessions
setup_ldap_source() {
set -eu
# Get the existing LDAP source status. This allows the user to disable LDAP
# Note that this method is deprecated since this app now supports optionalSso
ldap_status=$(mysql -u"${MYSQL_USERNAME}" -p"${MYSQL_PASSWORD}" -h mysql --database="${MYSQL_DATABASE}" -N -B -e "select is_actived from login_source WHERE name='cloudron';")
ldap_status=$(mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -N -B -e "select is_actived from login_source WHERE name='cloudron';")
[[ -z "${ldap_status}" ]] && ldap_status="1"
now=$(date +%s)
if mysql -u"${MYSQL_USERNAME}" -p"${MYSQL_PASSWORD}" -h mysql --database="${MYSQL_DATABASE}" \
-e "REPLACE INTO login_source (id, type, name, is_actived, cfg, created_unix, updated_unix) VALUES (1,2,'cloudron',${ldap_status},'{\"Name\":\"cloudron\",\"Host\":\"${LDAP_SERVER}\",\"Port\":${LDAP_PORT},\"UseSSL\":false,\"SkipVerify\":true,\"BindDN\":\"${LDAP_BIND_DN}\",\"BindPassword\":\"${LDAP_BIND_PASSWORD}\",\"UserBase\":\"${LDAP_USERS_BASE_DN}\",\"AttributeUsername\":\"username\",\"AttributeName\":\"displayname\",\"AttributeSurname\":\"\",\"AttributeMail\":\"mail\",\"Filter\":\"(\\\\u007C(mail=%[1]s)(username=%[1]s))\"}','${now}','${now}');"; then
if mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" \
-e "REPLACE INTO login_source (id, type, name, is_actived, cfg, created_unix, updated_unix) VALUES (1,2,'cloudron',${ldap_status},'{\"Name\":\"cloudron\",\"Host\":\"${CLOUDRON_LDAP_SERVER}\",\"Port\":${CLOUDRON_LDAP_PORT},\"UseSSL\":false,\"SkipVerify\":true,\"BindDN\":\"${CLOUDRON_LDAP_BIND_DN}\",\"BindPassword\":\"${CLOUDRON_LDAP_BIND_PASSWORD}\",\"UserBase\":\"${CLOUDRON_LDAP_USERS_BASE_DN}\",\"AttributeUsername\":\"username\",\"AttributeName\":\"displayname\",\"AttributeSurname\":\"\",\"AttributeMail\":\"mail\",\"Filter\":\"(\\\\u007C(mail=%[1]s)(username=%[1]s))\"}','${now}','${now}');"; then
echo "==> LDAP Authentication was setup with activation status ${ldap_status}"
else
echo "==> Failed to setup LDAP authentication"
@@ -45,11 +45,11 @@ setup_auth() {
echo "==> Gitea is up, setting up auth"
if [[ -n "${LDAP_SERVER:-}" ]]; then
if [[ -n "${CLOUDRON_LDAP_SERVER:-}" ]]; then
setup_ldap_source
fi
user_count=$(mysql -u"${MYSQL_USERNAME}" -p"${MYSQL_PASSWORD}" -h mysql --database="${MYSQL_DATABASE}" -N -B -e "SELECT count(*) FROM user;")
user_count=$(mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -N -B -e "SELECT count(*) FROM user;")
# be careful, not to create root user for existing LDAP based installs
if [[ "${user_count}" == "0" ]]; then
echo "==> Setting up root user for first run"
@@ -94,13 +94,13 @@ crudini --merge "/run/gitea/app.ini" < "/app/data/app.ini"
# override important values
crudini --set "/run/gitea/app.ini" database DB_TYPE mysql
crudini --set "/run/gitea/app.ini" database HOST "${MYSQL_HOST}:${MYSQL_PORT}"
crudini --set "/run/gitea/app.ini" database NAME "${MYSQL_DATABASE}"
crudini --set "/run/gitea/app.ini" database USER "${MYSQL_USERNAME}"
crudini --set "/run/gitea/app.ini" database PASSWD "${MYSQL_PASSWORD}"
crudini --set "/run/gitea/app.ini" database HOST "${CLOUDRON_MYSQL_HOST}:${CLOUDRON_MYSQL_PORT}"
crudini --set "/run/gitea/app.ini" database NAME "${CLOUDRON_MYSQL_DATABASE}"
crudini --set "/run/gitea/app.ini" database USER "${CLOUDRON_MYSQL_USERNAME}"
crudini --set "/run/gitea/app.ini" database PASSWD "${CLOUDRON_MYSQL_PASSWORD}"
crudini --set "/run/gitea/app.ini" database SSL_MODE "disable"
crudini --set "/run/gitea/app.ini" server PROTOCOL "http"
crudini --set "/run/gitea/app.ini" server DOMAIN "${APP_DOMAIN}"
crudini --set "/run/gitea/app.ini" server DOMAIN "${CLOUDRON_APP_DOMAIN}"
crudini --set "/run/gitea/app.ini" server ROOT_URL "https://%(DOMAIN)s/"
crudini --set "/run/gitea/app.ini" server HTTP_ADDR ""
crudini --set "/run/gitea/app.ini" server HTTP_PORT "3000"
@@ -109,10 +109,10 @@ crudini --set "/run/gitea/app.ini" server SSH_PORT "${SSH_PORT}"
crudini --set "/run/gitea/app.ini" server APP_DATA_PATH "/app/data/appdata"
crudini --set "/run/gitea/app.ini" repository ROOT "/app/data/repository"
crudini --set "/run/gitea/app.ini" repository.upload TEMP_PATH "/run/gitea/tmp/uploads"
crudini --set "/run/gitea/app.ini" mailer HOST "${MAIL_SMTP_SERVER}:${MAIL_SMTPS_PORT}"
crudini --set "/run/gitea/app.ini" mailer USER "${MAIL_SMTP_USERNAME}"
crudini --set "/run/gitea/app.ini" mailer PASSWD "${MAIL_SMTP_PASSWORD}"
crudini --set "/run/gitea/app.ini" mailer FROM "${MAIL_FROM}"
crudini --set "/run/gitea/app.ini" mailer HOST "${CLOUDRON_MAIL_SMTP_SERVER}:${CLOUDRON_MAIL_SMTPS_PORT}"
crudini --set "/run/gitea/app.ini" mailer USER "${CLOUDRON_MAIL_SMTP_USERNAME}"
crudini --set "/run/gitea/app.ini" mailer PASSWD "${CLOUDRON_MAIL_SMTP_PASSWORD}"
crudini --set "/run/gitea/app.ini" mailer FROM "${CLOUDRON_MAIL_FROM}"
crudini --set "/run/gitea/app.ini" mailer SKIP_VERIFY "true"
crudini --set "/run/gitea/app.ini" security INSTALL_LOCK "true"
crudini --set "/run/gitea/app.ini" log MODE "console"

746
test/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -9,16 +9,14 @@
"author": "",
"license": "ISC",
"devDependencies": {
"ejs": "^2.6.1",
"chromedriver": "^78.0.1",
"expect.js": "^0.3.1",
"mkdirp": "^0.5.1",
"mocha": "^6.1.4",
"rimraf": "^2.6.3",
"superagent": "^5.0.5"
"mocha": "^6.2.2",
"rimraf": "^3.0.0",
"superagent": "^5.1.0"
},
"dependencies": {
"chromedriver": "^74.0.0",
"selenium-server-standalone-jar": "^3.141.5",
"selenium-server-standalone-jar": "^3.141.59",
"selenium-webdriver": "^3.6.0",
"superagent": "^1.8.5"
}

View File

@@ -12,14 +12,11 @@
require('chromedriver');
var execSync = require('child_process').execSync,
ejs = require('ejs'),
expect = require('expect.js'),
fs = require('fs'),
mkdirp = require('mkdirp'),
path = require('path'),
rimraf = require('rimraf'),
superagent = require('superagent'),
webdriver = require('selenium-webdriver');
superagent = require('superagent');
var by = require('selenium-webdriver').By,
until = require('selenium-webdriver').until,
@@ -352,7 +349,7 @@ return done();
done();
});
it('can login', login.bind(null, username, password));
xit('can login', login.bind(null, username, password)); // no need to relogin since session persists
it('displays correct clone url', checkCloneUrl);
it('can clone the url', cloneRepo);
it('file exists in repo', fileExists);
@@ -418,7 +415,7 @@ return done();
// No SSO
it('install app (no sso)', function () {
execSync('cloudron install --new --wait --no-sso --location ' + LOCATION, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
execSync(`cloudron install --new --wait --no-sso --location ${LOCATION} -p SSH_PORT=${SSH_PORT}`, { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
});
it('can get app information', function () {