Release 1.0.0: Builds ausschließlich für Release-Tags
Some checks failed
Release-Build und Pflichtabnahme / checks (push) Successful in 5m58s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, aarch64-apple-darwin) (push) Successful in 3m36s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, aarch64-unknown-linux-gnu) (push) Successful in 3m27s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, x86_64-unknown-linux-gnu) (push) Successful in 3m33s
Release-Build und Pflichtabnahme / build (messense/cargo-xwin@sha256:4696dd4e79edf8569fa99c4b06bd99273e0501c7adc983aa61d57945f795bef0, x86_64-pc-windows-msvc) (push) Successful in 6m14s
Release-Build und Pflichtabnahme / stage (push) Failing after 1m16s
Some checks failed
Release-Build und Pflichtabnahme / checks (push) Successful in 5m58s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, aarch64-apple-darwin) (push) Successful in 3m36s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, aarch64-unknown-linux-gnu) (push) Successful in 3m27s
Release-Build und Pflichtabnahme / build (ghcr.io/rust-cross/cargo-zigbuild@sha256:82af75c41958c2af2787e8bedd912da7678a9438937e223e9d83d006d747b38b, x86_64-unknown-linux-gnu) (push) Successful in 3m33s
Release-Build und Pflichtabnahme / build (messense/cargo-xwin@sha256:4696dd4e79edf8569fa99c4b06bd99273e0501c7adc983aa61d57945f795bef0, x86_64-pc-windows-msvc) (push) Successful in 6m14s
Release-Build und Pflichtabnahme / stage (push) Failing after 1m16s
This commit is contained in:
@@ -44,13 +44,19 @@ class Gitea:
|
||||
return response.read()
|
||||
|
||||
|
||||
def release_version(tag):
|
||||
dist.require(re.fullmatch(r'v(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)', tag),
|
||||
'Release-Tag muss vX.Y.Z entsprechen')
|
||||
return tag[1:]
|
||||
|
||||
|
||||
def expected(version):
|
||||
return [n for t in dist.TARGETS for n in (dist.name(version, t), dist.name(version, t) + '.sha256')] + ['acceptance.json']
|
||||
|
||||
|
||||
def stage(api, directory, tag, revision):
|
||||
version = tag.removeprefix('v')
|
||||
dist.require(tag == 'v' + version and re.fullmatch('[0-9a-f]{40}', revision), 'Tag/Revision ungültig')
|
||||
version = release_version(tag)
|
||||
dist.require(re.fullmatch('[0-9a-f]{40}', revision), 'Tag/Revision ungültig')
|
||||
dist.require(api.request('GET', '/tags/' + quote(tag, safe=''))['commit']['sha'] == revision, 'Tag zeigt auf andere Revision')
|
||||
names = expected(version)
|
||||
for target in dist.TARGETS:
|
||||
@@ -92,8 +98,7 @@ def verify_uploads(api, release_id, directory, names):
|
||||
|
||||
|
||||
def publish(api, directory, evidence, tag, revision):
|
||||
version = tag.removeprefix('v')
|
||||
dist.require(tag == 'v' + version, 'Versionstag erforderlich')
|
||||
version = release_version(tag)
|
||||
dist.require(api.request('GET', '/tags/' + quote(tag, safe=''))['commit']['sha'] == revision, 'Tag zeigt auf andere Revision')
|
||||
dist.gate(directory, evidence, revision, version)
|
||||
release = api.request('GET', '/releases/tags/' + quote(tag, safe=''))
|
||||
@@ -118,7 +123,7 @@ def main():
|
||||
else:
|
||||
args.packages.mkdir(parents=True) # Nie lokale Kandidaten überschreiben.
|
||||
release = api.request('GET', '/releases/tags/' + quote(args.tag, safe=''))
|
||||
names = expected(args.tag.removeprefix('v'))
|
||||
names = expected(release_version(args.tag))
|
||||
dist.require(release['draft'], 'Nur bestehende Entwürfe freigeben')
|
||||
assets = release.get('assets', [])
|
||||
dist.require(len(assets) == len(names) and {a['name'] for a in assets} == set(names), 'Pflichtassets fehlen')
|
||||
|
||||
Reference in New Issue
Block a user