fix(ci): validate release identities and workflow environment
GitHub Git mirror / mirror (push) Successful in 4s
Development CI / check-and-package (push) Canceled after 0s
Development CI / image (push) Canceled after 0s
Development CI / deploy-development (push) Canceled after 0s
Main CI / check-and-package (pull_request) Successful in 3m52s
Main CI / image (pull_request) Successful in 16s
GitHub Git mirror / mirror (push) Successful in 4s
Development CI / check-and-package (push) Canceled after 0s
Development CI / image (push) Canceled after 0s
Development CI / deploy-development (push) Canceled after 0s
Main CI / check-and-package (pull_request) Successful in 3m52s
Main CI / image (pull_request) Successful in 16s
This commit is contained in:
1 parent
525fa51b19
commit
344ff42823
2 files changed
+2
-1
No files matched your search
@@ -31,7 +31,6 @@ jobs:
|
|||||||
if: gitea.ref == 'refs/heads/main'
|
if: gitea.ref == 'refs/heads/main'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
timeout-minutes: 55
|
timeout-minutes: 55
|
||||||
env:
|
|
||||||
container:
|
container:
|
||||||
image: node:24-bookworm
|
image: node:24-bookworm
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
@@ -310,6 +310,8 @@ def preflight(version, commit):
|
|||||||
require(state['version'] == version, 'Reserved version mismatch')
|
require(state['version'] == version, 'Reserved version mismatch')
|
||||||
validate_identity(version, commit)
|
validate_identity(version, commit)
|
||||||
gitea, github = clients()
|
gitea, github = clients()
|
||||||
|
require(gitea.request('/user')['login'] == 'eezd', 'Unexpected Gitea release identity')
|
||||||
|
require(github.request('/user')['login'] == 'eezd', 'Unexpected GitHub release identity')
|
||||||
repository = github.repo()
|
repository = github.repo()
|
||||||
require(repository['permissions']['push'], 'GitHub credential cannot publish this repository')
|
require(repository['permissions']['push'], 'GitHub credential cannot publish this repository')
|
||||||
scopes = {s.strip() for s in github.headers.get('X-OAuth-Scopes', '').split(',')}
|
scopes = {s.strip() for s in github.headers.get('X-OAuth-Scopes', '').split(',')}
|
||||||
|
|||||||
Reference in new issue
Block a user