chore(scripts): Simplify archlinux_util.sh script #106
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: 'Tests' | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
test-autogenerated: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
feature: | |
- ${{ vars.FEATURE_COMMON_UTILS}} | |
- ${{ vars.FEATURE_AWS_CLI}} | |
- ${{ vars.FEATURE_DOCKER_IN_DOCKER}} | |
- ${{ vars.FEATURE_DOCKER_OUTSIDE_OF_DOCKER}} | |
- ${{ vars.FEATURE_TERRAFORM}} | |
- ${{ vars.FEATURE_GO}} | |
- ${{ vars.FEATURE_GCLOUD_CLI}} | |
- ${{ vars.FEATURE_AZURE_CLI}} | |
base-image: | |
- archlinux:latest | |
- archlinux:base | |
- archlinux:base-devel | |
- archlinux:multilib-devel | |
steps: | |
- uses: actions/checkout@v4 | |
- name: 'Install Dependencies' | |
run: yarn global add @devcontainers/cli | |
- name: "Generating tests for '${{ matrix.feature }}' against '${{ matrix.base-image }}'" | |
run: make FEATURES=${{ matrix.feature }} BASE_IMAGE=${{ matrix.base-image }} test-autogenerated | |
test-scenarios: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
feature: | |
- ${{ vars.FEATURE_COMMON_UTILS}} | |
- ${{ vars.FEATURE_AWS_CLI}} | |
- ${{ vars.FEATURE_DOCKER_IN_DOCKER}} | |
- ${{ vars.FEATURE_DOCKER_OUTSIDE_OF_DOCKER}} | |
- ${{ vars.FEATURE_TERRAFORM}} | |
- ${{ vars.FEATURE_GO}} | |
- ${{ vars.FEATURE_GCLOUD_CLI}} | |
- ${{ vars.FEATURE_AZURE_CLI}} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: 'Install Dependencies' | |
run: yarn global add @devcontainers/cli | |
- name: "Generating tests for '${{ matrix.feature }}' scenarios" | |
run: make FEATURES=${{ matrix.feature }} test-scenarios | |
test-global: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: 'Install Dependencies' | |
run: yarn global add @devcontainers/cli | |
- name: 'Testing global scenarios' | |
run: make test-global | |
validate: | |
name: Validate | |
runs-on: ubuntu-latest | |
needs: [test-autogenerated, test-scenarios, test-global] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: 'Validate devcontainer-feature.json files' | |
uses: devcontainers/action@v1 | |
with: | |
validate-only: 'true' | |
base-path-to-features: './src' | |
bump-version: | |
needs: [validate] | |
name: 'Create PR for Image Version' | |
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
pull-requests: write | |
issues: write | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: 'Install Dependencies' | |
run: yarn global add semver | |
- name: 'Run Image Version Bump' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GH_ACTIONS_USERNAME: ${{ vars.GH_ACTIONS_USERNAME }} | |
run: make bump-version |