generator: mark s390x entries no_build (hardware unavailable; reference-only)
ci/woodpecker/cron/drift Pipeline was successful
ci/woodpecker/cron/drift Pipeline was successful
This commit is contained in:
+33
-1
@@ -19,6 +19,38 @@ HEADER = """# GENERATED by oleks/ci-scripts — do not hand-edit.
|
||||
"""
|
||||
|
||||
|
||||
def is_no_build(repo: dict) -> bool:
|
||||
"""s390x = no-build: s390x hardware is currently unavailable, so those
|
||||
wheels are not built/published (the repo code is kept as a cross-compile
|
||||
reference only). Any manifest entry may opt in/out with an explicit
|
||||
`no_build:` flag; otherwise entries under `s390x/` default to no-build.
|
||||
See the ci-scripts wiki Spec/* pages and memory feedback-no-s390x-builds."""
|
||||
return repo.get("no_build", str(repo.get("dir", "")).startswith("s390x/"))
|
||||
|
||||
|
||||
def render_no_build(repo: dict) -> str:
|
||||
"""Render a neutralized pipeline that does NOT build. Uses `event: manual`
|
||||
so tag pushes never auto-trigger a build; a manual run just prints why."""
|
||||
arch = repo.get("arch", "amd64")
|
||||
return f"""{HEADER}# s390x = NO-BUILD: s390x hardware is currently unavailable, so this wheel is
|
||||
# not built or published — the repo is kept as a cross-compile reference only.
|
||||
# Re-enable by setting `no_build: false` on this repo in manifest.yaml.
|
||||
labels:
|
||||
arch: {arch}
|
||||
|
||||
when:
|
||||
- event: manual
|
||||
|
||||
steps:
|
||||
- name: build-disabled
|
||||
image: alpine:3
|
||||
commands:
|
||||
- echo "s390x build disabled — hardware currently unavailable."
|
||||
- echo "Repo kept as a cross-compile reference only; not built/published."
|
||||
- echo "See oleks/ci-scripts wiki Spec/* and memory feedback-no-s390x-builds."
|
||||
"""
|
||||
|
||||
|
||||
def render(repo: dict) -> str:
|
||||
arch = repo["arch"]
|
||||
mem_req = repo["memory_request"]
|
||||
@@ -246,7 +278,7 @@ def main():
|
||||
]
|
||||
for repo, render_fn in jobs:
|
||||
target = BUILDING / repo["dir"] / ".woodpecker.yaml"
|
||||
rendered = render_fn(repo)
|
||||
rendered = render_no_build(repo) if is_no_build(repo) else render_fn(repo)
|
||||
if check_only:
|
||||
current = target.read_text() if target.exists() else ""
|
||||
if current != rendered:
|
||||
|
||||
@@ -22,9 +22,18 @@
|
||||
# cores - Nix `cores` setting written into /etc/nix/nix.conf
|
||||
# max_jobs - whether to also cap `max-jobs = 1` (small/serial builds)
|
||||
# attic - whether to run the inline `attic watch-store` accelerator
|
||||
# no_build - if true, render a NEUTRALIZED pipeline (event: manual, no
|
||||
# build/publish). s390x = no-build: s390x hardware is
|
||||
# currently UNAVAILABLE, so those wheels are not built —
|
||||
# the repo code is kept as a cross-compile reference only.
|
||||
# Entries under s390x/ default to no_build even without the
|
||||
# flag (generate.py is_no_build). Re-enable by setting
|
||||
# no_build: false. arm64 builds are unaffected (arm64 hw is
|
||||
# available). See wiki Spec/* + memory feedback-no-s390x-builds.
|
||||
|
||||
repos:
|
||||
- dir: s390x/lxml-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 2Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -32,6 +41,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/pillow-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 6Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -39,6 +49,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/psycopg-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 6Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -46,6 +57,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/psycopg2-binary-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 6Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -53,6 +65,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/tiktoken-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 6Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -61,6 +74,7 @@ repos:
|
||||
attic: true
|
||||
redis_cache: true
|
||||
- dir: s390x/duckdb-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -68,6 +82,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/faiss-cpu-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -75,6 +90,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/numpy-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -82,6 +98,7 @@ repos:
|
||||
max_jobs: true
|
||||
attic: true
|
||||
- dir: s390x/pymupdf-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 50Gi
|
||||
@@ -89,6 +106,7 @@ repos:
|
||||
max_jobs: false
|
||||
attic: true
|
||||
- dir: s390x/markupsafe-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 2Gi
|
||||
memory_limit: 6Gi
|
||||
@@ -126,6 +144,7 @@ repos:
|
||||
# bespoke hand-maintained file; flagged alongside fastuuid.
|
||||
thin_repos:
|
||||
- dir: s390x/asyncpg-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -136,6 +155,7 @@ thin_repos:
|
||||
dead_secrets: []
|
||||
gitea_clone_token: false
|
||||
- dir: s390x/cryptography-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -147,6 +167,7 @@ thin_repos:
|
||||
tags_full: false
|
||||
dead_secrets: [attic_token, redis_password]
|
||||
- dir: s390x/lightningcss-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
@@ -156,6 +177,7 @@ thin_repos:
|
||||
tags_full: true
|
||||
dead_secrets: [attic_token, redis_password]
|
||||
- dir: s390x/nextjs-swc-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 50Gi
|
||||
@@ -165,6 +187,7 @@ thin_repos:
|
||||
tags_full: true
|
||||
dead_secrets: [attic_token, redis_password]
|
||||
- dir: s390x/rollup-s390x
|
||||
no_build: true
|
||||
arch: amd64
|
||||
memory_request: 8Gi
|
||||
memory_limit: 32Gi
|
||||
|
||||
Reference in New Issue
Block a user