Skip to content

Build CI Buildbox Images #637

Build CI Buildbox Images

Build CI Buildbox Images #637

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@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
with:
driver: docker
- name: Login to registry
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.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@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
with:
driver: docker
- name: Login to registry
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.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@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
with:
driver: docker
- name: Login to registry
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.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@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
with:
driver: docker
- name: Login to registry
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.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@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
with:
driver: docker
- name: Login to registry
uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.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