docker/debian: Update base image to trixie and add gcc13 to devtools #991
Workflow file for this run
  
    
      This file contains hidden or 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: Envoy/build-tools | |
| permissions: | |
| contents: read | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| jobs: | |
| build_image: | |
| if: >- | |
| ${{ | |
| github.repository == 'envoyproxy/envoy-build-tools' | |
| || vars.ENVOY_CI_RUN == 'true' | |
| }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| target: [ubuntu, debian] | |
| arch: [amd64, arm64] | |
| name: Build (${{ matrix.target }}-${{ matrix.arch }}) | |
| uses: ./.github/workflows/_build_image.yml | |
| with: | |
| distro: ${{ matrix.target }} | |
| os_family: ${{ matrix.os_family != '' && matrix.os_family || 'linux' }} | |
| host-platform: ${{ matrix.arch }} | |
| runs-on: ${{ matrix.arch == 'amd64' && 'ubuntu-22.04' || 'ubuntu-22.04-arm' }} | |
| target-platforms: ${{ matrix.arch == 'amd64' && 'linux/amd64' || 'linux/arm64' }} | |
| push-manifests: | |
| name: Create manifests (${{ github.event_name == 'pull_request' && 'dry run' || 'push' }}) | |
| runs-on: ubuntu-latest | |
| needs: [build_image] | |
| permissions: | |
| contents: read | |
| packages: write | |
| steps: | |
| - uses: envoyproxy/toolshed/gh-actions/[email protected] | |
| with: | |
| mounts: | | |
| - src: /mnt/workspace | |
| target: ${{ github.workspace }} | |
| chown: "runner:runner" | |
| - name: 'Checkout repository' | |
| uses: actions/checkout@v5 | |
| - name: Get docker SHA | |
| id: docker-sha | |
| shell: bash | |
| run: | | |
| TAG_SHA=$(git log -1 --pretty=format:"%H" ./docker) | |
| echo "sha=${TAG_SHA}" >> $GITHUB_OUTPUT | |
| - name: Generate manifest configuration | |
| id: config | |
| uses: envoyproxy/toolshed/gh-actions/[email protected] | |
| with: | |
| input-format: yaml | |
| filter: >- | |
| {manifests: .} | |
| input: | | |
| ## debian | |
| # devtools | |
| - name: envoy-build | |
| tag: devtools-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-devtools-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # ci | |
| - name: envoy-build | |
| tag: ci-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-ci-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # worker | |
| - name: envoy-build | |
| tag: worker-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-worker-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # worker (gcr) | |
| - name: envoy-build | |
| tag: worker-${{ steps.docker-sha.outputs.sha }} | |
| registry: gcr.io/envoy-ci | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-worker-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # docker | |
| - name: envoy-build | |
| tag: docker-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-docker-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # test | |
| - name: envoy-build | |
| tag: test-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-debian-{arch}/debian-test-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # llvm | |
| - name: envoy-build | |
| tag: llvm-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| artifact-pattern: oci-debian-{arch}/debian-llvm-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # mobile | |
| - name: envoy-build | |
| tag: mobile-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| artifact-pattern: oci-debian-{arch}/debian-mobile-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| ## ubuntu | |
| # ci | |
| - name: envoy-build-ubuntu | |
| tag: ci-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - arm64 | |
| - amd64 | |
| artifact-pattern: oci-ubuntu-{arch}/ubuntu-ci-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # mobile | |
| - name: envoy-build-ubuntu | |
| tag: mobile-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| artifact-pattern: oci-ubuntu-{arch}/ubuntu-mobile-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # test | |
| - name: envoy-build-ubuntu | |
| tag: test-${{ steps.docker-sha.outputs.sha }} | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| artifact-pattern: oci-ubuntu-{arch}/ubuntu-test-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| # full | |
| - name: envoy-build-ubuntu | |
| tag: full-f8d1fd9bdac3a7843d1e69816456648989d238be | |
| registry: docker.io/envoyproxy | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-ubuntu-{arch}/ubuntu-full-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| additional-tags: | |
| - ${{ steps.docker-sha.outputs.sha }} | |
| # full (gcr) | |
| - name: envoy-build | |
| tag: ${{ steps.docker-sha.outputs.sha }} | |
| registry: gcr.io/envoy-ci | |
| architectures: | |
| - amd64 | |
| - arm64 | |
| artifact-pattern: oci-ubuntu-{arch}/ubuntu-full-${{ steps.docker-sha.outputs.sha }}-{arch}.tar | |
| - name: Collect and push OCI artifacts | |
| uses: envoyproxy/toolshed/gh-actions/oci/[email protected] | |
| with: | |
| manifest-config: ${{ steps.config.outputs.value }} | |
| dry-run: ${{ github.event_name == 'pull_request' }} | |
| dockerhub-username: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && secrets.DOCKERHUB_USERNAME || '' }} | |
| dockerhub-password: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && secrets.DOCKERHUB_PASSWORD || '' }} | |
| gcr-key: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && secrets.GCP_SERVICE_ACCOUNT_KEY || '' }} |