mirror of
https://git.cloudron.io/cloudron/gitea-app
synced 2025-09-25 22:47:24 +00:00
Compare commits
16 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
dd44f81d04 | ||
|
a4b0af1f02 | ||
|
4b15736f81 | ||
|
8876fedd40 | ||
|
65df2c54da | ||
|
245b93ea02 | ||
|
8596073c51 | ||
|
6a85b0cea2 | ||
|
5205ba5e83 | ||
|
f668f4f3ab | ||
|
7eca682cec | ||
|
f9f867ca89 | ||
|
9580ece3a1 | ||
|
f2818dc4f9 | ||
|
35ac25e140 | ||
|
3cb4caaeac |
143
CHANGELOG.md
143
CHANGELOG.md
@@ -1199,3 +1199,146 @@
|
||||
* Fix broken clone script on an empty archived repo (#24339) (#24348)
|
||||
* Fix Monaco IOS keyboard button (#24341) (#24347)
|
||||
* Don't set meta theme-color by default (#24340) (#24346)
|
||||
|
||||
[1.28.3]
|
||||
* Update Gitea to 1.19.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.3)
|
||||
* Use golang 1.20.4 to fix CVE-2023-24539, CVE-2023-24540, and CVE-2023-29400
|
||||
* Enable whitespace rendering on selection in Monaco (#24444) (#24485)
|
||||
* Improve milestone filter on issues page (#22423) (#24440)
|
||||
* Fix api error message if fork exists (#24487) (#24493)
|
||||
* Fix user-cards format (#24428) (#24431)
|
||||
|
||||
[1.28.4]
|
||||
* Update Gitea to 1.19.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.4)
|
||||
* Fix open redirect check for more cases (#25143) (#25155)
|
||||
* Return 404 in the API if the requested webhooks were not found (#24823) (#24830)
|
||||
* Fix organization field being null in GET /api/v1/teams/{id} (#24694) (#24696)
|
||||
* Set --font-weight-bold to 600 (#24840)
|
||||
* Make mailer SMTP check have timed context (#24751) (#24759)
|
||||
* Do not select line numbers when selecting text from the action run logs (#24594) (#24596)
|
||||
|
||||
[1.29.0]
|
||||
* Update Gitea to 1.20.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.0)
|
||||
* [Blog](https://blog.gitea.com/release-of-1.20.0/)
|
||||
* Add button on diff header to copy file name, misc diff header tweaks (#24986)
|
||||
* API endpoint for changing/creating/deleting multiple files (#24887)
|
||||
* Support changing git config through app.ini, use diff.algorithm=histogram by default (#24860)
|
||||
* Add up and down arrows to selected lookup repositories (#24727)
|
||||
* Add Go package registry (#24687)
|
||||
* Add status indicator on main home screen for each repo (#24638)
|
||||
* Support for status check pattern (#24633)
|
||||
|
||||
[1.29.1]
|
||||
* Update Gitea to 1.20.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.1)
|
||||
* Disallow dangerous URL schemes (#25960) (#25964)
|
||||
* Show the mismatched ROOT_URL warning on the sign-in page if OAuth2 is enabled (#25947) (#25972)
|
||||
* Make pending commit status yellow again (#25935) (#25968)
|
||||
* Fix version in rpm repodata/primary.xml.gz (#26009) (#26048)
|
||||
* Fix env config parsing for "GITEA____APP_NAME" (#26001) (#26013)
|
||||
* ParseScope with owner/repo always sets owner to zero (#25987) (#25989)
|
||||
* Fix SSPI auth panic (#25955) (#25969)
|
||||
* Avoid creating directories when loading config (#25944) (#25957)
|
||||
* Make environment-to-ini work with INSTALL_LOCK=true (#25926) (#25937)
|
||||
* Ignore `runs-on` with expressions when warning no matched runners (#25917) (#25933)
|
||||
* Avoid opening/closing PRs which are already merged (#25883) (#25903)
|
||||
* RPM Registry: Show zypper commands for SUSE based distros as well (#25981) (#26020)
|
||||
* Correctly refer to dev tags as nightly in the docker docs (#26004) (#26019)
|
||||
* Update path related documents (#25417) (#25982)
|
||||
* Adding remaining enum for migration repo model type. (#26021) (#26034)
|
||||
* Fix the route for pull-request's authors (#26016) (#26018)
|
||||
* Fix commit status color on dashboard repolist (#25993) (#25998)
|
||||
* Avoid hard-coding height in language dropdown menu (#25986) (#25997)
|
||||
* Add shutting down notice (#25920) (#25922)
|
||||
* Fix incorrect milestone count when provide a keyword (#25880) (#25904)
|
||||
|
||||
[1.29.2]
|
||||
* Update Gitea to 1.20.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.2)
|
||||
* Calculate `MAX_WORKERS` default value by CPU number (#26177) (#26183)
|
||||
* Display deprecated warning in admin panel pages as well as in the log file (#26094) (#26154)
|
||||
|
||||
[1.29.3]
|
||||
* Update Gitea to 1.20.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.3)
|
||||
* Fix the wrong derive path (#26271) (#26318)
|
||||
* Fix API leaking Usermail if not logged in (#25097) (#26350)
|
||||
* Add ThreadID parameter for Telegram webhooks (#25996) (#26480)
|
||||
* Add minimum polyfill to support "relative-time-element" in PaleMoon (#26575) (#26578)
|
||||
* Fix dark theme highlight for "NameNamespace" (#26519) (#26527)
|
||||
* Detect ogg mime-type as audio or video (#26494) (#26505)
|
||||
* Use object-fit: contain for oauth2 custom icons (#26493) (#26498)
|
||||
* Move dropzone progress bar to bottom to show filename when uploading (#26492) (#26497)
|
||||
* Remove last newline from config file (#26468) (#26471)
|
||||
* Minio: add missing region on client initialization (#26412) (#26438)
|
||||
* Add pull request review request webhook event (#26401) (#26407)
|
||||
* Fix text truncate (#26354) (#26384)
|
||||
* Fix incorrect color of selected assignees when create issue (#26324) (#26372)
|
||||
* Display human-readable text instead of cryptic filemodes (#26352) (#26358)
|
||||
* Hide last indexed SHA when a repo could not be indexed yet (#26340) (#26345)
|
||||
* Fix the topic validation rule and suport dots (#26286) (#26303)
|
||||
* Fix due date rendering the wrong date in issue (#26268) (#26274)
|
||||
* Don't autosize textarea in diff view (#26233) (#26244)
|
||||
* Fix commit compare style (#26209) (#26226)
|
||||
* Warn instead of reporting an error when a webhook cannot be found (#26039) (#26211)
|
||||
* Use "input" event instead of "keyup" event for migration form (#26602) (#26605)
|
||||
* Do not use deprecated log config options by default (#26592) (#26600)
|
||||
* Fix "issueReposQueryPattern does not match query" (#26556) (#26564)
|
||||
* Sync repo's IsEmpty status correctly (#26517) (#26560)
|
||||
* Fix project filter bugs (#26490) (#26558)
|
||||
* Use hidden over clip for text truncation (#26520) (#26522)
|
||||
* Set "type=button" for editor's toolbar buttons (#26510) (#26518)
|
||||
* Fix NuGet search endpoints (#25613) (#26499)
|
||||
* Fix storage path logic especially for relative paths (#26441) (#26481)
|
||||
* Close stdout correctly for "git blame" (#26470) (#26473)
|
||||
* Check first if minio bucket exists before trying to create it (#26420) (#26465)
|
||||
* Avoiding accessing undefined tributeValues #26461 (#26462)
|
||||
* Call git.InitSimple for runRepoSyncReleases (#26396) (#26450)
|
||||
* Add transaction when creating pull request created dirty data (#26259) (#26437)
|
||||
* Fix wrong middleware sequence (#26428) (#26436)
|
||||
* Fix admin queue page title and fix CI failures (#26409) (#26421)
|
||||
* Introduce ctx.PathParamRaw to avoid incorrect unescaping (#26392) (#26405)
|
||||
* Bypass MariaDB performance bug of the "IN" sub-query, fix incorrect IssueIndex (#26279) (#26368)
|
||||
* Fix incorrect CLI exit code and duplicate error message (#26346) (#26347)
|
||||
* Prevent newline errors with Debian packages (#26332) (#26342)
|
||||
* Fix bug with sqlite load read (#26305) (#26339)
|
||||
* Make git batch operations use parent context timeout instead of default timeout (#26325) (#26330)
|
||||
* Support getting changed files when commit ID is EmptySHA (#26290) (#26316)
|
||||
* Clarify the logger's MODE config option (#26267) (#26281)
|
||||
* Use shared template for webhook icons (#26242) (#26246)
|
||||
* Fix pull request check list is limited (#26179) (#26245)
|
||||
* Fix attachment clipboard copy on insecure origin (#26224) (#26231)
|
||||
* Fix access check for org-level project (#26182) (#26223)
|
||||
* Improve profile readme rendering (#25988) (#26453)
|
||||
* [docs] Add missing backtick in quickstart.zh-cn.md (#26349) (#26357)
|
||||
* Upgrade x/net to 0.13.0 (#26301)
|
||||
|
||||
[1.29.4]
|
||||
* Update Gitea to 1.20.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.4)
|
||||
* Check blocklist for emails when adding them to account (#26812) (#26831)
|
||||
* Add branch_filter to hooks API endpoints (#26599) (#26632)
|
||||
* Fix incorrect "tabindex" attributes (#26733) (#26734)
|
||||
* Use line-height: normal by default (#26635) (#26708)
|
||||
* Fix unable to display individual-level project (#26198) (#26636)
|
||||
* Fix wrong review requested number (#26784) (#26880)
|
||||
* Avoid double-unescaping of form value (#26853) (#26863)
|
||||
* Redirect from {repo}/issues/new to {repo}/issues/new/choose when blank issues are disabled (#26813) (#26847)
|
||||
* Sync tags when adopting repos (#26816) (#26834)
|
||||
* Fix verifyCommits error when push a new branch (#26664) (#26810)
|
||||
* Include the GITHUB_TOKEN/GITEA_TOKEN secret for fork pull requests (#26759) (#26806)
|
||||
* Fix some slice append usages (#26778) (#26798)
|
||||
* Add fix incorrect can_create_org_repo for org owner team (#26683) (#26791)
|
||||
* Fix bug for ctx usage (#26763)
|
||||
* Make issue template field template access correct template data (#26698) (#26709)
|
||||
* Use correct minio error (#26634) (#26639)
|
||||
* Ignore the trailing slashes when comparing oauth2 redirect_uri (#26597) (#26618)
|
||||
* Set errwriter for urfave/cli v1 (#26616)
|
||||
* Fix reopen logic for agit flow pull request (#26399) (#26613)
|
||||
* Fix context filter has no effect in dashboard (#26695) (#26811)
|
||||
* Fix being unable to use a repo that prohibits accepting PRs as a PR source. (#26785) (#26790)
|
||||
* Fix Page Not Found error (#26768)
|
||||
|
||||
|
@@ -4,15 +4,15 @@
|
||||
"author": "Gitea developers",
|
||||
"description": "file://DESCRIPTION.md",
|
||||
"tagline": "A painless self-hosted Git Service",
|
||||
"version": "1.28.2",
|
||||
"upstreamVersion": "1.19.2",
|
||||
"version": "1.29.4",
|
||||
"upstreamVersion": "1.20.4",
|
||||
"healthCheckPath": "/explore",
|
||||
"httpPort": 3000,
|
||||
"memoryLimit": 536870912,
|
||||
"addons": {
|
||||
"mysql": { },
|
||||
"sendmail": { },
|
||||
"localstorage": { "supportsDisplayName": true },
|
||||
"sendmail": { "supportsDisplayName": true },
|
||||
"localstorage": { },
|
||||
"ldap": { }
|
||||
},
|
||||
"tcpPorts": {
|
||||
|
@@ -19,7 +19,7 @@ WORKDIR /home/git
|
||||
# for autosign feature
|
||||
ENV GNUPGHOME="/app/data/gnupg"
|
||||
|
||||
ARG VERSION=1.19.2
|
||||
ARG VERSION=1.20.4
|
||||
|
||||
RUN curl -L https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64 -o /home/git/gitea/gitea \
|
||||
&& chmod +x /home/git/gitea/gitea
|
||||
|
@@ -53,11 +53,13 @@ PATH =
|
||||
ENABLED = true
|
||||
|
||||
; those settings are protected and can't be modified
|
||||
HOST = ##MAIL_SERVER:##MAIL_PORT
|
||||
SMTP_ADDR = ##MAIL_SERVER
|
||||
SMTP_PORT = ##MAIL_PORT
|
||||
USER = ##MAIL_SMTP_USERNAME
|
||||
PASSWD = ##MAIL_SMTP_PASSWORD
|
||||
FROM = ##MAIL_FROM
|
||||
SKIP_VERIFY = true
|
||||
PROTOCOL = smtps
|
||||
FORCE_TRUST_SERVER_CERT = true
|
||||
|
||||
|
||||
[security]
|
||||
|
6
start.sh
6
start.sh
@@ -111,11 +111,13 @@ 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 "${CLOUDRON_MAIL_SMTP_SERVER}:${CLOUDRON_MAIL_SMTPS_PORT}"
|
||||
crudini --set "/run/gitea/app.ini" mailer SMTP_ADDR "${CLOUDRON_MAIL_SMTP_SERVER}"
|
||||
crudini --set "/run/gitea/app.ini" mailer SMTP_PORT "${CLOUDRON_MAIL_SMTPS_PORT}"
|
||||
crudini --set "/run/gitea/app.ini" mailer PROTOCOL smtps
|
||||
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_DISPLAY_NAME:-Gitea} <${CLOUDRON_MAIL_FROM}>"
|
||||
crudini --set "/run/gitea/app.ini" mailer SKIP_VERIFY "true"
|
||||
crudini --set "/run/gitea/app.ini" mailer FORCE_TRUST_SERVER_CERT "true"
|
||||
crudini --set "/run/gitea/app.ini" security INSTALL_LOCK "true"
|
||||
crudini --set "/run/gitea/app.ini" security REVERSE_PROXY_LIMIT 1
|
||||
crudini --set "/run/gitea/app.ini" security REVERSE_PROXY_TRUSTED_PROXIES "*"
|
||||
|
62
test/package-lock.json
generated
62
test/package-lock.json
generated
@@ -9,10 +9,10 @@
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"chromedriver": "^112.0.0",
|
||||
"chromedriver": "^115.0.0",
|
||||
"expect.js": "^0.3.1",
|
||||
"mocha": "^10.2.0",
|
||||
"selenium-webdriver": "^4.9.0",
|
||||
"selenium-webdriver": "^4.10.0",
|
||||
"superagent": "^8.0.9"
|
||||
}
|
||||
},
|
||||
@@ -105,9 +105,9 @@
|
||||
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.2.3.tgz",
|
||||
"integrity": "sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw==",
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz",
|
||||
"integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.15.0",
|
||||
"form-data": "^4.0.0",
|
||||
@@ -236,14 +236,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/chromedriver": {
|
||||
"version": "112.0.0",
|
||||
"resolved": "https://registry.npmjs.org/chromedriver/-/chromedriver-112.0.0.tgz",
|
||||
"integrity": "sha512-fEw1tI05dmK1KK8MGh99LAppP7zCOPEXUxxbYX5wpIBCCmKasyrwZhk/qsdnxJYKd/h0TfiHvGEj7ReDQXW1AA==",
|
||||
"version": "115.0.0",
|
||||
"resolved": "https://registry.npmjs.org/chromedriver/-/chromedriver-115.0.0.tgz",
|
||||
"integrity": "sha512-mkPL+sXMLMUenoXCiKREw+cBl3ibfhiWxkiv9ByIPpqtrrInCt9zKdOolAsbmN/ndlH51WtT5ukUKbeRdrpikg==",
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@testim/chrome-version": "^1.1.3",
|
||||
"axios": "^1.2.1",
|
||||
"compare-versions": "^5.0.1",
|
||||
"axios": "^1.4.0",
|
||||
"compare-versions": "^6.0.0",
|
||||
"extract-zip": "^2.0.1",
|
||||
"https-proxy-agent": "^5.0.1",
|
||||
"proxy-from-env": "^1.1.0",
|
||||
@@ -253,7 +253,7 @@
|
||||
"chromedriver": "bin/chromedriver"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
"node": ">=16"
|
||||
}
|
||||
},
|
||||
"node_modules/cliui": {
|
||||
@@ -294,9 +294,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/compare-versions": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-5.0.1.tgz",
|
||||
"integrity": "sha512-v8Au3l0b+Nwkp4G142JcgJFh1/TUhdxut7wzD1Nq1dyp5oa3tXaqb03EXOAB6jS4gMlalkjAUPZBMiAfKUixHQ=="
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.0.0.tgz",
|
||||
"integrity": "sha512-s2MzYxfRsE9f/ow8hjn7ysa7pod1xhHdQMsgiJtKx6XSNf4x2N1KG4fjrkUmXcP/e9Y2ZX4zB6sHIso0Lm6evQ=="
|
||||
},
|
||||
"node_modules/component-emitter": {
|
||||
"version": "1.3.0",
|
||||
@@ -1171,9 +1171,9 @@
|
||||
]
|
||||
},
|
||||
"node_modules/selenium-webdriver": {
|
||||
"version": "4.9.0",
|
||||
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.9.0.tgz",
|
||||
"integrity": "sha512-QGaPoREo7sgOVhTiAvCasoi1f4ruTaJDtp0RKNFIbfyns5smK5+iCwnRTIPXb0R3CAYdaqUXd6BHduh37DorzQ==",
|
||||
"version": "4.10.0",
|
||||
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.10.0.tgz",
|
||||
"integrity": "sha512-hSQPw6jgc+ej/UEcdQPG/iBwwMeCEgZr9HByY/J8ToyXztEqXzU9aLsIyrlj1BywBcStO4JQK/zMUWWrV8+riA==",
|
||||
"dependencies": {
|
||||
"jszip": "^3.10.1",
|
||||
"tmp": "^0.2.1",
|
||||
@@ -1562,9 +1562,9 @@
|
||||
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
|
||||
},
|
||||
"axios": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.2.3.tgz",
|
||||
"integrity": "sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw==",
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz",
|
||||
"integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==",
|
||||
"requires": {
|
||||
"follow-redirects": "^1.15.0",
|
||||
"form-data": "^4.0.0",
|
||||
@@ -1657,13 +1657,13 @@
|
||||
}
|
||||
},
|
||||
"chromedriver": {
|
||||
"version": "112.0.0",
|
||||
"resolved": "https://registry.npmjs.org/chromedriver/-/chromedriver-112.0.0.tgz",
|
||||
"integrity": "sha512-fEw1tI05dmK1KK8MGh99LAppP7zCOPEXUxxbYX5wpIBCCmKasyrwZhk/qsdnxJYKd/h0TfiHvGEj7ReDQXW1AA==",
|
||||
"version": "115.0.0",
|
||||
"resolved": "https://registry.npmjs.org/chromedriver/-/chromedriver-115.0.0.tgz",
|
||||
"integrity": "sha512-mkPL+sXMLMUenoXCiKREw+cBl3ibfhiWxkiv9ByIPpqtrrInCt9zKdOolAsbmN/ndlH51WtT5ukUKbeRdrpikg==",
|
||||
"requires": {
|
||||
"@testim/chrome-version": "^1.1.3",
|
||||
"axios": "^1.2.1",
|
||||
"compare-versions": "^5.0.1",
|
||||
"axios": "^1.4.0",
|
||||
"compare-versions": "^6.0.0",
|
||||
"extract-zip": "^2.0.1",
|
||||
"https-proxy-agent": "^5.0.1",
|
||||
"proxy-from-env": "^1.1.0",
|
||||
@@ -1702,9 +1702,9 @@
|
||||
}
|
||||
},
|
||||
"compare-versions": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-5.0.1.tgz",
|
||||
"integrity": "sha512-v8Au3l0b+Nwkp4G142JcgJFh1/TUhdxut7wzD1Nq1dyp5oa3tXaqb03EXOAB6jS4gMlalkjAUPZBMiAfKUixHQ=="
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.0.0.tgz",
|
||||
"integrity": "sha512-s2MzYxfRsE9f/ow8hjn7ysa7pod1xhHdQMsgiJtKx6XSNf4x2N1KG4fjrkUmXcP/e9Y2ZX4zB6sHIso0Lm6evQ=="
|
||||
},
|
||||
"component-emitter": {
|
||||
"version": "1.3.0",
|
||||
@@ -2323,9 +2323,9 @@
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
|
||||
},
|
||||
"selenium-webdriver": {
|
||||
"version": "4.9.0",
|
||||
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.9.0.tgz",
|
||||
"integrity": "sha512-QGaPoREo7sgOVhTiAvCasoi1f4ruTaJDtp0RKNFIbfyns5smK5+iCwnRTIPXb0R3CAYdaqUXd6BHduh37DorzQ==",
|
||||
"version": "4.10.0",
|
||||
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.10.0.tgz",
|
||||
"integrity": "sha512-hSQPw6jgc+ej/UEcdQPG/iBwwMeCEgZr9HByY/J8ToyXztEqXzU9aLsIyrlj1BywBcStO4JQK/zMUWWrV8+riA==",
|
||||
"requires": {
|
||||
"jszip": "^3.10.1",
|
||||
"tmp": "^0.2.1",
|
||||
|
@@ -9,10 +9,10 @@
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"chromedriver": "^112.0.0",
|
||||
"chromedriver": "^115.0.0",
|
||||
"expect.js": "^0.3.1",
|
||||
"mocha": "^10.2.0",
|
||||
"selenium-webdriver": "^4.9.0",
|
||||
"selenium-webdriver": "^4.10.0",
|
||||
"superagent": "^8.0.9"
|
||||
}
|
||||
}
|
||||
|
29
test/test.js
29
test/test.js
@@ -27,20 +27,19 @@ if (!process.env.USERNAME || !process.env.PASSWORD || !process.env.EMAIL) {
|
||||
describe('Application life cycle test', function () {
|
||||
this.timeout(0);
|
||||
|
||||
var TIMEOUT = parseInt(process.env.TIMEOUT, 10) || 5000;
|
||||
var EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
|
||||
var LOCATION = 'test';
|
||||
var SSH_PORT = 29420;
|
||||
const TIMEOUT = parseInt(process.env.TIMEOUT, 10) || 5000;
|
||||
const EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
|
||||
const LOCATION = 'test';
|
||||
const SSH_PORT = 29420;
|
||||
|
||||
var app;
|
||||
var browser;
|
||||
let app, browser;
|
||||
|
||||
var repodir = '/tmp/testrepo';
|
||||
var reponame = 'testrepo';
|
||||
const repodir = '/tmp/testrepo';
|
||||
const reponame = 'testrepo';
|
||||
|
||||
var username = process.env.USERNAME;
|
||||
var password = process.env.PASSWORD;
|
||||
var email = process.env.EMAIL;
|
||||
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();
|
||||
@@ -116,7 +115,7 @@ describe('Application life cycle test', function () {
|
||||
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")]')).click();
|
||||
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);
|
||||
}
|
||||
@@ -167,11 +166,11 @@ describe('Application life cycle test', function () {
|
||||
async function sendMail() {
|
||||
await browser.get(`https://${app.fqdn}/admin/config`);
|
||||
|
||||
var button = await browser.findElement(By.xpath('//button[@id="test-mail-btn"]'));
|
||||
var button = await browser.findElement(By.xpath('//button[contains(text(), "Send")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(true)', button);
|
||||
await browser.findElement(By.xpath('//input[@name="email"]')).sendKeys('test@cloudron.io');
|
||||
await browser.findElement(By.xpath('//button[@id="test-mail-btn"]')).click();
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(),"A testing email has been sent to \'test@cloudron.io\'")]')), TIMEOUT);
|
||||
await browser.findElement(By.xpath('//button[contains(text(), "Send")]')).click();
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "A testing email has been sent")]')), TIMEOUT);
|
||||
}
|
||||
|
||||
xit('build app', function () { execSync('cloudron build', EXEC_ARGS); });
|
||||
|
Reference in New Issue
Block a user