Skip to content

Commit

Permalink
Limit build platforms to linux/amd64 and linux/arm64/v8
Browse files Browse the repository at this point in the history
Signed-off-by: Pedro Algarvio <[email protected]>
  • Loading branch information
s0undt3ch committed Nov 24, 2023
1 parent 797f100 commit 74ee941
Show file tree
Hide file tree
Showing 32 changed files with 35 additions and 51 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/.container.template.j2
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }}<%- if multiarch %> --multiarch --exclude-platforms=<{ exclude_platforms }><%- endif %>
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }}<%- if multiarch %> --multiarch<%- endif %>

mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/almalinux-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/amazonlinux-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/archlinux-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/busybox-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/centos-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/centos-stream-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/consul-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/debian-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le,linux/ppc64le,linux/arm/v5
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/etcd-v2-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/etcd-v3-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/fedora-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/mariadb-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/mysql-server-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/openldap-minion-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/opensuse-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/packaging-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le,linux/386,linux/arm/v5,linux/arm/v7
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/percona-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/photon-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le,linux/ppc64le,linux/arm/v5
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/python-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rabbitmq-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/redis-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/salt-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/salt-gitfs-http-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ssh-minion-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tinyproxy-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ubuntu-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vault-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/virt-minion-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/zookeeper-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: "Generate Matrix Data"
id: set-matrix
run: |
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch --exclude-platforms=linux/s390x,linux/mips64le
inv containers.matrix --from-workflow ${{ env.PATH_IN_REPO }} --multiarch
mirror-image:
runs-on: ubuntu-latest
Expand Down
10 changes: 0 additions & 10 deletions containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,6 @@ custom:
- debian-11
- debian-12
- centosstream-9
exclude_platforms:
- linux/386
- linux/arm/v5
- linux/arm/v7
# <---- Custom Containers ---------------------------------------------------------------------------------

# ----- Mirrored Containers ------------------------------------------------------------------------------>
Expand Down Expand Up @@ -192,9 +188,6 @@ mirrors:
commands:
- apt update
- apt upgrade -y
exclude_platforms:
- linux/ppc64le
- linux/arm/v5

Fedora:
container: fedora
Expand Down Expand Up @@ -222,9 +215,6 @@ mirrors:
- tdnf update -y
- tdnf upgrade -y
- tdnf install -y rpm shadow
exclude_platforms:
- linux/ppc64le
- linux/arm/v5

Ubuntu:
container: ubuntu
Expand Down
16 changes: 5 additions & 11 deletions tasks/containers.py
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,6 @@ def generate(ctx, ghcr_org="saltstack/salt-ci-containers"):
)
workflow_tpl = utils.REPO_ROOT / ".github" / "workflows" / ".container.template.j2"
template = env.from_string(workflow_tpl.read_text())
exclude_platforms = [
"linux/s390x",
"linux/mips64le",
]
exclude_platforms.extend(details.get("exclude_platforms") or [])
cron_hour = cron_hour_range.pop()
if not cron_hour_range:
cron_hour_range = list(range(0, 24))
Expand All @@ -151,7 +146,6 @@ def generate(ctx, ghcr_org="saltstack/salt-ci-containers"):
"is_mirror": is_mirror,
"workflow_file_name": workflow_file_name,
"multiarch": details.get("multiarch", True),
"exclude_platforms": ",".join(exclude_platforms),
"cron_hour": cron_hour,
}
workflows_dir = utils.REPO_ROOT / ".github" / "workflows"
Expand All @@ -173,17 +167,17 @@ def generate(ctx, ghcr_org="saltstack/salt-ci-containers"):


@task
def matrix(ctx, image, from_workflow=False, multiarch=False, exclude_platforms=None):
def matrix(ctx, image, from_workflow=False, multiarch=False, build_platforms=None):
"""
Generate the container mirrors.
"""
ctx.cd(utils.REPO_ROOT)
mirrors_path = utils.REPO_ROOT / image

if exclude_platforms is None:
excludes = []
if build_platforms is None:
build_platforms = ["linux/amd64", "linux/arm64/v8"]
else:
excludes = exclude_platforms.split(",")
build_platforms = build_platforms.split(",")

for name, details in _get_containers():
if details["path"] == image:
Expand All @@ -208,7 +202,7 @@ def matrix(ctx, image, from_workflow=False, multiarch=False, exclude_platforms=N
platform = "{os}/{architecture}".format(**entry["platform"])
if "variant" in entry["platform"]:
platform += f"/{entry['platform']['variant']}"
if platform in excludes:
if platform not in build_platforms:
continue
output.append(
{
Expand Down

0 comments on commit 74ee941

Please sign in to comment.