Skip to content

feat(release): dry-run mode builds real artifacts (Phase 3b-2) (#13099) #3

feat(release): dry-run mode builds real artifacts (Phase 3b-2) (#13099)

feat(release): dry-run mode builds real artifacts (Phase 3b-2) (#13099) #3

# Run BATS tests for bash scripts in the release, binary, and flex Docker contexts.
# Ensures all scripts have valid syntax and expected structure.
name: BATS Tests (release, binary, flex)
on:
push:
paths:
- '.github/workflows/docker-test-bats.yml'
- 'tests/bats/docker/**'
- 'docker/release/**'
- 'docker/binary/**'
- 'docker/flex/**'
pull_request:
paths:
- '.github/workflows/docker-test-bats.yml'
- 'tests/bats/docker/**'
- 'docker/release/**'
- 'docker/binary/**'
- 'docker/flex/**'
permissions:
contents: read
jobs:
bats-release:
name: BATS release
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v7
- name: Install Bats
run: |
git clone --depth 1 --branch v1.13.0 https://github.com/bats-core/bats-core.git /tmp/bats-core
/tmp/bats-core/install.sh "$HOME/bats"
echo "$HOME/bats/bin" >> "$GITHUB_PATH"
echo "PATH=$HOME/bats/bin:$PATH" >> "$GITHUB_ENV"
- name: Install Bats assertion libraries
run: |
git clone --depth 1 --branch v0.3.0 https://github.com/bats-core/bats-support.git tests/bats/docker/test_helper/bats-support
git clone --depth 1 --branch v2.2.4 https://github.com/bats-core/bats-assert.git tests/bats/docker/test_helper/bats-assert
- name: Run BATS tests (release)
run: bats tests/bats/docker/release/
bats-binary:
name: BATS binary
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v7
- name: Install Bats
run: |
git clone --depth 1 --branch v1.13.0 https://github.com/bats-core/bats-core.git /tmp/bats-core
/tmp/bats-core/install.sh "$HOME/bats"
echo "$HOME/bats/bin" >> "$GITHUB_PATH"
echo "PATH=$HOME/bats/bin:$PATH" >> "$GITHUB_ENV"
- name: Install Bats assertion libraries
run: |
git clone --depth 1 --branch v0.3.0 https://github.com/bats-core/bats-support.git tests/bats/docker/test_helper/bats-support
git clone --depth 1 --branch v2.2.4 https://github.com/bats-core/bats-assert.git tests/bats/docker/test_helper/bats-assert
- name: Run BATS tests (binary)
run: bats tests/bats/docker/binary/
bats-flex:
name: BATS flex
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v7
- name: Install Bats
run: |
git clone --depth 1 --branch v1.13.0 https://github.com/bats-core/bats-core.git /tmp/bats-core
/tmp/bats-core/install.sh "$HOME/bats"
echo "$HOME/bats/bin" >> "$GITHUB_PATH"
echo "PATH=$HOME/bats/bin:$PATH" >> "$GITHUB_ENV"
- name: Install Bats assertion libraries
run: |
git clone --depth 1 --branch v0.3.0 https://github.com/bats-core/bats-support.git tests/bats/docker/test_helper/bats-support
git clone --depth 1 --branch v2.2.4 https://github.com/bats-core/bats-assert.git tests/bats/docker/test_helper/bats-assert
- name: Run BATS tests (flex)
run: bats tests/bats/docker/flex/