Skip to content

Commit a1da2b4

Browse files
(MAINT) temporarily add in again
1 parent 053b153 commit a1da2b4

File tree

1 file changed

+107
-0
lines changed

1 file changed

+107
-0
lines changed
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
---
2+
name: Add compiler matrix
3+
on:
4+
pull_request:
5+
paths:
6+
- .github/workflows/**/*
7+
- spec/**/*
8+
- lib/**/*
9+
- tasks/**/*
10+
- functions/**/*
11+
- types/**/*
12+
- plans/**/*
13+
- hiera/**/*
14+
- manifests/**/*
15+
- templates/**/*
16+
- files/**/*
17+
- metadata.json
18+
- Rakefile
19+
- Gemfile
20+
- provision.yaml
21+
- .rspec
22+
- .rubocop.yml
23+
- .puppet-lint.rc
24+
- .fixtures.yml
25+
branches: [main]
26+
workflow_dispatch: {}
27+
jobs:
28+
test-add-compiler:
29+
name: PE ${{ matrix.version }} ${{ matrix.architecture }} on ${{ matrix.image }}
30+
runs-on: ubuntu-latest
31+
env:
32+
BOLT_GEM: true
33+
BOLT_DISABLE_ANALYTICS: true
34+
LANG: en_US.UTF-8
35+
PUPPET_FORGE_TOKEN: ${{ secrets.PUPPET_FORGE_API_TOKEN }}
36+
BUNDLE_RUBYGEMS___PUPPETCORE__PUPPET__COM: forge-key:${{ secrets.PUPPET_FORGE_API_TOKEN }}
37+
strategy:
38+
fail-fast: false
39+
matrix:
40+
architecture: [standard, large, extra-large]
41+
version: [2021.7.9, 2023.8.6, 2025.6.0]
42+
image: [almalinux-cloud/almalinux-8]
43+
steps:
44+
- name: Checkout Source
45+
uses: actions/checkout@v4
46+
- name: Activate Ruby 3.1
47+
uses: ruby/setup-ruby@v1
48+
with:
49+
ruby-version: '3.1'
50+
bundler-cache: true
51+
- name: Print bundle environment
52+
if: ${{ github.repository_owner == 'puppetlabs' }}
53+
run: |
54+
echo ::group::info:bundler
55+
bundle env
56+
echo ::endgroup::
57+
- name: Provision test cluster
58+
timeout-minutes: 15
59+
run: |
60+
echo ::group::prepare
61+
mkdir -p $HOME/.ssh
62+
echo 'Host *' > $HOME/.ssh/config
63+
echo ' ServerAliveInterval 150' >> $HOME/.ssh/config
64+
echo ' ServerAliveCountMax 2' >> $HOME/.ssh/config
65+
bundle exec rake spec_prep
66+
echo ::endgroup::
67+
echo ::group::provision
68+
bundle exec bolt plan run peadm_spec::provision_test_cluster \
69+
--modulepath spec/fixtures/modules \
70+
provider=provision_service \
71+
image=${{ matrix.image }} \
72+
architecture=${{ matrix.architecture }}-with-extra-compiler
73+
echo ::endgroup::
74+
echo ::group::info:request
75+
cat request.json || true; echo
76+
echo ::endgroup::
77+
echo ::group::info:inventory
78+
sed -e 's/password: .*/password: "[redacted]"/' < spec/fixtures/litmus_inventory.yaml || true
79+
echo ::endgroup::
80+
- name: Install PE on test cluster
81+
timeout-minutes: 120
82+
run: |
83+
bundle exec bolt plan run peadm_spec::install_test_cluster \
84+
--inventoryfile spec/fixtures/litmus_inventory.yaml \
85+
--modulepath spec/fixtures/modules \
86+
architecture=${{ matrix.architecture }} \
87+
console_password=${{ secrets.CONSOLE_PASSWORD }} \
88+
version=${{ matrix.version }}
89+
- name: Run add_compilers plan
90+
timeout-minutes: 50
91+
run: |
92+
bundle exec bolt plan run peadm_spec::add_compilers -v \
93+
--inventoryfile spec/fixtures/litmus_inventory.yaml \
94+
--modulepath spec/fixtures/modules \
95+
architecture=${{ matrix.architecture }}
96+
- name: Tear down test cluster
97+
if: ${{ always() }}
98+
continue-on-error: true
99+
run: |-
100+
if [ -f spec/fixtures/litmus_inventory.yaml ]; then
101+
echo ::group::tear_down
102+
bundle exec rake 'litmus:tear_down'
103+
echo ::endgroup::
104+
echo ::group::info:request
105+
cat request.json || true; echo
106+
echo ::endgroup::
107+
fi

0 commit comments

Comments
 (0)