the-custodian/docs/changes/netkingdom-target-2026-10-17/forgejo-private-input-r1/tests/test_packages.py
codex 4a15141c69
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
Reject generated-only commits / generated-commit-guard (push) Waiting to run
docs: preserve reviewed NetKingdom session artifacts
2026-11-01 23:22:29 +01:00

13 lines
1 KiB
Python

import pathlib,json,subprocess,time
w=pathlib.Path('/tmp/forgejo-private-work');base=json.loads((w/'sandbox.json').read_text())
for n in ['race','race-replacement']:
p=w/'fixtures'/n
if p.exists():p.chmod(0o600)
p.write_text('A'*64);p.chmod(0o400)
i=base.index('--chdir');base[i:i]=['--dir','/run','--ro-bind',str(w/'fixtures'),'/run/forgejo-oidc','--bind',str(w/'fixtures'),'/run/writable-input']
args=['go','test','-p','4','-tags','sqlite sqlite_unlock_notify','./cmd','./services/auth/source/oauth2','./models/db','-run','TestPrivateSecret|TestReviewer|TestRequiredClaim|TestCurrentUserInfo|TestSensitive','-count=1','-v']
start=time.monotonic()
with (w/'packages.log').open('w') as out:p=subprocess.run(base+args,stdout=out,stderr=subprocess.STDOUT)
(w/'packages-result.json').write_text(json.dumps({'returncode':p.returncode,'seconds':time.monotonic()-start,'argv':args,'actual_packages':True,'network':'disabled by bwrap'},indent=2));print(p.returncode);print((w/'packages.log').read_text()[-6000:])
raise SystemExit(p.returncode)