Update workflows for all pull request tests in test.yml #1101
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: Dockerfiles | |
| # Test and push dockerfiles when merged into main and on schedule. | |
| on: | |
| push: | |
| branches: | |
| - main | |
| schedule: | |
| # * is a special character in YAML so you have to quote this string | |
| - cron: "0 0 1 * *" | |
| workflow_dispatch: | |
| # Cancel in-progress funs of the same workflow | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| docker: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - label: ros | |
| tag: noetic | |
| target: base | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros | |
| tag: noetic | |
| target: dev | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros | |
| tag: noetic | |
| target: full | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros | |
| tag: noetic | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling | |
| target: base | |
| platforms: "linux/amd64,linux/arm64/v8" | |
| - label: ros2 | |
| tag: rolling | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling | |
| target: full | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling-cuda | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling-cuda | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling-cuda | |
| target: full | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: rolling-cuda | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: jazzy | |
| target: base | |
| platforms: "linux/amd64,linux/arm64/v8" | |
| - label: ros2 | |
| tag: jazzy | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: jazzy | |
| target: full | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: jazzy | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: iron | |
| target: base | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: iron | |
| target: dev | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: iron | |
| target: full | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: iron | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: iron-cuda | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: iron-cuda | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: iron-cuda | |
| target: full | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: iron-cuda | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: humble | |
| target: base | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: humble | |
| target: dev | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: humble | |
| target: full | |
| platforms: "linux/amd64,linux/arm64" | |
| - label: ros2 | |
| tag: humble | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: humble-cuda | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: humble-cuda | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: humble-cuda | |
| target: full | |
| platforms: "linux/amd64" | |
| - label: ros2 | |
| tag: humble-cuda | |
| target: gazebo | |
| platforms: "linux/amd64" | |
| - label: gazebo | |
| tag: gazebo11 | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: gazebo | |
| tag: gazebo11 | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ignition | |
| tag: fortress | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: ignition | |
| tag: fortress | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: ignition | |
| tag: citadel | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: ignition | |
| tag: citadel | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: harmonic | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: harmonic | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: harmonic-cuda | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: harmonic-cuda | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: garden | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: garden | |
| target: dev | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: garden-cuda | |
| target: base | |
| platforms: "linux/amd64" | |
| - label: gz | |
| tag: garden-cuda | |
| target: dev | |
| platforms: "linux/amd64" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set current date | |
| id: date | |
| run: | | |
| echo "date=$(date +%Y-%m-%d)" >> "$GITHUB_OUTPUT" | |
| - name: Use current date | |
| run: | | |
| echo "Current date is ${{ steps.date.outputs.date }}" | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ vars.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
| - name: Log in to GHCR | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Build and push | |
| uses: docker/build-push-action@v6 | |
| with: | |
| file: ${{ matrix.label }}/${{ matrix.tag }}.Dockerfile | |
| target: ${{ matrix.target }} | |
| platforms: ${{ matrix.platforms }} | |
| tags: | | |
| ${{ vars.DOCKERHUB_USERNAME }}/${{ matrix.label }}:${{ matrix.tag }}-${{ matrix.target }} | |
| ${{ vars.DOCKERHUB_USERNAME }}/${{ matrix.label }}:${{ matrix.tag }}-${{ matrix.target }}-${{ steps.date.outputs.date }} | |
| ghcr.io/${{ github.repository_owner }}/${{ matrix.label }}:${{ matrix.tag }}-${{ matrix.target }} | |
| cache-from: | | |
| type=registry,ref=ghcr.io/${{ github.repository_owner }}/${{ matrix.label }}:${{ matrix.tag }}-buildcache | |
| type=gha | |
| cache-to: | | |
| type=registry,ref=ghcr.io/${{ github.repository_owner }}/${{ matrix.label }}:${{ matrix.tag }}-buildcache,mode=max | |
| type=gha,mode=max |