|
|
|
name: 'Docker Non-Bazel Run'
|
|
|
|
description: 'Run a docker image for Protobuf CI testing with a non-Bazel build system'
|
|
|
|
inputs:
|
|
|
|
credentials:
|
|
|
|
required: true
|
|
|
|
description: "The GCP credentials to use for reading the docker image"
|
|
|
|
type: string
|
|
|
|
command:
|
|
|
|
required: true
|
|
|
|
description: A command to run in the docker image
|
|
|
|
image:
|
|
|
|
required: false
|
|
|
|
default: us-docker.pkg.dev/protobuf-build/containers/common/linux/bazel:5.1.1-aec4d74f2eb6938fc53ef7d9a79a4bf2da24abc1
|
|
|
|
description: "The docker image to use"
|
|
|
|
type: string
|
|
|
|
platform:
|
|
|
|
required: false
|
|
|
|
description: "The platform to use for the image"
|
|
|
|
type: string
|
|
|
|
skip-staleness-check:
|
|
|
|
required: false
|
|
|
|
description: "Skip staleness checks"
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
runs:
|
|
|
|
using: 'composite'
|
|
|
|
steps:
|
|
|
|
- name: Setup Runner
|
|
|
|
uses: ./.github/actions/internal/setup-runner
|
|
|
|
|
|
|
|
- name: Update stale files using Bazel
|
|
|
|
if: ${{ !inputs.skip-staleness-check }}
|
|
|
|
uses: ./.github/actions/bazel-docker
|
|
|
|
with:
|
|
|
|
image: us-docker.pkg.dev/protobuf-build/containers/common/linux/bazel:5.1.1-aec4d74f2eb6938fc53ef7d9a79a4bf2da24abc1
|
|
|
|
credentials: ${{ inputs.credentials }}
|
|
|
|
bazel-cache: regenerate-stale-files
|
|
|
|
bash: ./regenerate_stale_files.sh $BAZEL_FLAGS
|
|
|
|
|
|
|
|
- name: Generate docker flags
|
|
|
|
if: inputs.platform
|
|
|
|
shell: bash
|
|
|
|
run: echo "DOCKER_RUN_FLAGS=--platform ${{inputs.platform}}" >> $GITHUB_ENV
|
|
|
|
|
|
|
|
- name: Run Docker
|
|
|
|
uses: ./.github/actions/internal/docker-run
|
|
|
|
with:
|
|
|
|
image: ${{ inputs.image }}
|
|
|
|
command: ${{ inputs.command }}
|
|
|
|
run-flags: ${{ env.DOCKER_RUN_FLAGS }}
|