(PE-39412) PEADM should be able to add multiple compilers at once without requiring service restarts on Primary #1115
Workflow file for this run
This file contains 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: Spec Tests | |
on: | |
schedule: | |
- cron: 0 0 * * * | |
workflow_dispatch: | |
pull_request: | |
paths: | |
- .github/workflows/**/* | |
- spec/**/* | |
- lib/**/* | |
- tasks/**/* | |
- functions/**/* | |
- types/**/* | |
- plans/**/* | |
- hiera/**/* | |
- manifests/**/* | |
- templates/**/* | |
- files/**/* | |
- metadata.json | |
- Rakefile | |
- Gemfile | |
- provision.yaml | |
- .rspec | |
- .rubocop.yml | |
- .puppet-lint.rc | |
- .fixtures.yml | |
jobs: | |
setup_matrix: | |
name: Setup Test Matrix | |
runs-on: ubuntu-20.04 | |
outputs: | |
spec_matrix: ${{ steps.get-matrix.outputs.spec_matrix }} | |
steps: | |
- name: Checkout Source | |
uses: actions/checkout@v4 | |
if: ${{ github.repository_owner == 'puppetlabs' }} | |
- name: Activate Ruby 2.7 | |
uses: ruby/setup-ruby@v1 | |
if: ${{ github.repository_owner == 'puppetlabs' }} | |
with: | |
ruby-version: '2.7' | |
bundler-cache: true | |
- name: Print bundle environment | |
if: ${{ github.repository_owner == 'puppetlabs' }} | |
run: | | |
echo ::group::bundler environment | |
bundle env | |
echo ::endgroup:: | |
- name: Run Static & Syntax Tests | |
if: ${{ github.repository_owner == 'puppetlabs' }} | |
run: | | |
bundle exec rake validate lint check rubocop | |
- name: Setup Spec Test Matrix | |
id: get-matrix | |
run: | | |
if [ '${{ github.repository_owner }}' == 'puppetlabs' ]; then | |
bundle exec matrix_from_metadata_v2 | |
else | |
echo "::set-output name=spec_matrix::{}" | |
fi | |
Spec: | |
name: 'Spec Tests (Puppet: ${{matrix.puppet_version}}, Ruby Ver: ${{matrix.ruby_version}})' | |
needs: [setup_matrix] | |
if: ${{ needs.setup_matrix.outputs.spec_matrix != '{}' }} | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: ${{fromJson(needs.setup_matrix.outputs.spec_matrix)}} | |
env: | |
PUPPET_GEM_VERSION: ${{ matrix.puppet_version }} | |
FACTER_GEM_VERSION: https://github.com/puppetlabs/facter#main | |
steps: | |
- run: | | |
echo "SANITIZED_PUPPET_VERSION=$(echo '${{ matrix.puppet_version }}' | sed 's/~> //g')" >> $GITHUB_ENV | |
- name: Checkout Source | |
uses: actions/checkout@v4 | |
- name: Activate Ruby ${{ matrix.ruby_version }} | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ${{matrix.ruby_version}} | |
bundler-cache: true | |
- name: Print bundle environment | |
run: | | |
echo ::group::bundler environment | |
bundle env | |
echo ::endgroup:: | |
- name: Run parallel_spec tests | |
run: |- | |
bundle exec rake parallel_spec |