Skip to content

Commit

Permalink
Merge pull request #174 from cisagov/improvement/add-aarch64-platforms
Browse files Browse the repository at this point in the history
Add `arm64` platforms to Molecule configuration
  • Loading branch information
mcdonnnj committed Jun 2, 2024
2 parents 81839d9 + ba48f71 commit 9e3015c
Show file tree
Hide file tree
Showing 4 changed files with 139 additions and 13 deletions.
2 changes: 2 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ updates:
- dependency-name: mxschmitt/action-tmate
- dependency-name: step-security/harden-runner
# # Managed by cisagov/skeleton-ansible-role
# - dependency-name: docker/setup-buildx-action
# - dependency-name: docker/setup-qemu-action
# - dependency-name: github/codeql-action
package-ecosystem: github-actions
schedule:
Expand Down
27 changes: 26 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -168,12 +168,30 @@ jobs:
uses: mxschmitt/action-tmate@v3
if: env.RUN_TMATE
test:
name: >-
test (${{ matrix.scenario }}) -
${{ matrix.platform }}-${{ matrix.architecture }}
needs:
- diagnostics
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
architecture:
- amd64
- arm64
platform:
- amazonlinux2023-systemd
- debian10-systemd
- debian11-systemd
- debian12-systemd
- debian13-systemd
- fedora39-systemd
- fedora40-systemd
- kali-systemd
- ubuntu-20-systemd
- ubuntu-22-systemd
- ubuntu-24-systemd
scenario:
- default
steps:
Expand Down Expand Up @@ -204,8 +222,15 @@ jobs:
run: |
python -m pip install --upgrade pip
pip install --upgrade --requirement requirements-test.txt
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Run molecule tests
run: molecule test --scenario-name ${{ matrix.scenario }}
run: >-
molecule test
--platform-name ${{ matrix.platform }}-${{ matrix.architecture }}
--scenario-name ${{ matrix.scenario }}
- name: Setup tmate debug session
uses: mxschmitt/action-tmate@v3
if: env.RUN_TMATE
121 changes: 110 additions & 11 deletions molecule/default/molecule.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,102 +7,201 @@ platforms:
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-amazonlinux2023-ansible:latest
name: amazonlinux2023-systemd
name: amazonlinux2023-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-amazonlinux2023-ansible:latest
name: amazonlinux2023-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian10-ansible:latest
name: debian10-systemd
name: debian10-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian10-ansible:latest
name: debian10-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian11-ansible:latest
name: debian11-systemd
name: debian11-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian11-ansible:latest
name: debian11-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian12-ansible:latest
name: debian12-systemd
name: debian12-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-debian12-ansible:latest
name: debian12-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/cisagov/docker-debian13-ansible:latest
name: debian13-systemd
name: debian13-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/cisagov/docker-debian13-ansible:latest
name: debian13-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/cisagov/docker-kali-ansible:latest
name: kali-systemd
name: kali-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/cisagov/docker-kali-ansible:latest
name: kali-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-fedora39-ansible:latest
name: fedora39-systemd
name: fedora39-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-fedora39-ansible:latest
name: fedora39-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-fedora40-ansible:latest
name: fedora40-systemd
name: fedora40-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-fedora40-ansible:latest
name: fedora40-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2004-ansible:latest
name: ubuntu-20-systemd
name: ubuntu-20-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2004-ansible:latest
name: ubuntu-20-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2204-ansible:latest
name: ubuntu-22-systemd
name: ubuntu-22-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2204-ansible:latest
name: ubuntu-22-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2404-ansible:latest
name: ubuntu-24-systemd
name: ubuntu-24-systemd-amd64
platform: amd64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- cgroupns_mode: host
command: /lib/systemd/systemd
image: docker.io/geerlingguy/docker-ubuntu2404-ansible:latest
name: ubuntu-24-systemd-arm64
platform: arm64
pre_build_image: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
scenario:
name: default
verifier:
Expand Down
2 changes: 1 addition & 1 deletion update_molecule_images.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,4 @@ check_dependencies
# Note that we can't use --max-args in place of -n in the xargs
# command since the version of xargs distributed with macOS does not
# support it.
yq '.platforms[].image' < "$source_file" | xargs -n 1 docker pull
yq '.platforms[] | "\(.platform) \(.image)"' < "$source_file" | xargs -n 2 docker pull --platform

0 comments on commit 9e3015c

Please sign in to comment.