Build CI Buildbox Images #664
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build CI Buildbox Images | |
run-name: Build CI Buildbox Images | |
on: | |
push: | |
paths: | |
- .github/workflows/build-ci-buildbox-images.yaml | |
- build.assets/Dockerfile | |
- build.assets/Dockerfile-arm | |
- build.assets/Dockerfile-centos7 | |
- build.assets/Dockerfile-node | |
- build.assets/Makefile | |
- build.assets/images.mk | |
- build.assets/versions.mk | |
branches: | |
- master | |
- branch/** | |
env: | |
REGISTRY: ghcr.io | |
jobs: | |
buildbox: | |
name: Build Ubuntu Buildbox | |
runs-on: ubuntu-22.04-32core | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: Checkout Teleport | |
uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 | |
with: | |
driver: docker | |
- name: Login to registry | |
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
# We need to keep env vars in sync, so, we can't use standard build actions | |
- name: Build and push buildbox image | |
run: cd build.assets && make buildbox PUSH=1 | |
buildbox-arm: | |
name: Build Debian ARM Buildbox | |
runs-on: ubuntu-22.04-32core | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: Checkout Teleport | |
uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 | |
with: | |
driver: docker | |
- name: Login to registry | |
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
# We need to keep env vars in sync, so, we can't use standard build actions | |
- name: Build and push buildbox image | |
run: cd build.assets && make buildbox-arm PUSH=1 | |
buildbox-centos7: | |
name: Build CentOS 7 Buildbox | |
# Build assets on x86 for now, as no GHA-hosted runner for ARM64. | |
runs-on: ubuntu-22.04-32core | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: Checkout Teleport | |
uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 | |
with: | |
driver: docker | |
- name: Login to registry | |
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
# We need to keep env vars in sync, so, we can't use standard build actions | |
- name: Build buildbox image | |
run: cd build.assets && make buildbox-centos7 PUSH=1 | |
buildbox-centos7-fips: | |
name: Build CentOS 7 FIPS Buildbox | |
# Build assets on x86 for now, as no GHA-hosted runner for ARM64. | |
runs-on: ubuntu-22.04-32core | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: Checkout Teleport | |
uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 | |
with: | |
driver: docker | |
- name: Login to registry | |
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
# We need to keep env vars in sync, so, we can't use standard build actions | |
- name: Build buildbox image | |
run: cd build.assets && make buildbox-centos7-fips PUSH=1 | |
buildbox-node: | |
name: Build Node.js Buildbox | |
runs-on: ubuntu-22.04-32core | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- name: Checkout Teleport | |
uses: actions/checkout@v4 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 | |
with: | |
driver: docker | |
- name: Login to registry | |
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
# We need to keep env vars in sync, so, we can't use standard build actions | |
- name: Build and push buildbox image | |
run: cd build.assets && make buildbox-node PUSH=1 |