55 - cron : " 0 0 * * *"
66 workflow_dispatch :
77
8+ env :
9+ PUPPET_FORGE_TOKEN : ${{ secrets.PUPPET_FORGE_TOKEN_PUBLIC }}
10+ BUNDLE_RUBYGEMS___PUPPETCORE__PUPPET__COM : " forge-key:${{ secrets.PUPPET_FORGE_TOKEN_PUBLIC }}"
11+
812jobs :
913 Spec :
1014 uses : " puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
@@ -18,10 +22,13 @@ jobs:
1822 runs-on : " ubuntu-24.04"
1923 outputs :
2024 matrix : ${{ steps.get-matrix.outputs.matrix }}
25+
26+ env :
27+ BUNDLE_WITHOUT : release_prep
2128
2229 steps :
2330 - name : " Checkout"
24- uses : " actions/checkout@v3 "
31+ uses : " actions/checkout@v4 "
2532
2633 - name : " Setup ruby"
2734 uses : " ruby/setup-ruby@v1"
@@ -32,28 +39,49 @@ jobs:
3239 - name : Setup Test Matrix
3340 id : get-matrix
3441 run : |
35- bundle exec matrix_from_metadata_v2 --provision-service
42+ bundle exec matrix_from_metadata_v3 --provision-prefer provision_service --nightly --platform-exclude scientific-7 --platform-exclude ubuntu-18.04 --platform-exclude ubuntu-20.04
3643
3744 Acceptance :
38- name : " Acceptance tests (${{matrix.platforms.label}}, ${{matrix.collection}})"
45+ name : " Acceptance tests (${{matrix.platforms.label}}, ${{matrix.collection.collection || matrix.collection }})"
3946 needs : setup_matrix
4047 runs-on : ubuntu-latest
48+ timeout-minutes : 180
4149 strategy :
4250 fail-fast : false
4351 matrix : ${{fromJson(needs.setup_matrix.outputs.matrix)}}
4452
4553 env :
46- PUPPET_GEM_VERSION : ' ~> 7.24'
54+ BUNDLE_WITHOUT : release_prep
55+ PUPPET_GEM_VERSION : ' ~> 8.9'
4756 FACTER_GEM_VERSION : ' https://github.com/puppetlabs/facter#main' # why is this set?
57+ TWINGATE_PUBLIC_REPO_KEY : ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}
4858
4959 steps :
5060 - name : " Install Twingate"
5161 uses : " twingate/github-action@v1"
5262 with :
5363 service-key : ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}
5464
65+ - name : Fix DNS
66+ run : |
67+ echo "=== Remove Azure DNS from eth0 interface ==="
68+ sudo resolvectl dns eth0 ""
69+
70+ echo "=== Configure Twingate DNS properly ==="
71+ sudo resolvectl dns sdwan0 100.95.0.251 100.95.0.252
72+ sudo resolvectl domain sdwan0 delivery.puppetlabs.net
73+
74+ echo "=== Flush DNS cache ==="
75+ sudo resolvectl flush-caches
76+
77+ echo "=== Check new configuration ==="
78+ resolvectl status
79+
80+ echo "=== Test DNS resolution ==="
81+ nslookup artifactory.delivery.puppetlabs.net
82+
5583 - name : " Checkout"
56- uses : " actions/checkout@v3 "
84+ uses : " actions/checkout@v4 "
5785
5886 - name : " Setup ruby"
5987 uses : " ruby/setup-ruby@v1"
@@ -72,9 +100,26 @@ jobs:
72100 FILE='spec/fixtures/litmus_inventory.yaml'
73101 sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true
74102
103+ - name : " Fix Debian 10 EOL repositories"
104+ if : contains(matrix.platforms.image, 'debian-10') || contains(matrix.platforms.image, 'buster')
105+ run : |
106+ bundle exec bolt command run "
107+ sed -i 's|deb.debian.org|archive.debian.org|g' /etc/apt/sources.list &&
108+ sed -i 's|security.debian.org|archive.debian.org|g' /etc/apt/sources.list &&
109+ sed -i '/buster-updates/d' /etc/apt/sources.list &&
110+ echo 'Acquire::Check-Valid-Until \"false\";' > /etc/apt/apt.conf.d/99no-check-valid-until &&
111+ echo 'Acquire::AllowInsecureRepositories \"true\";' > /etc/apt/apt.conf.d/99allow-insecure &&
112+ echo 'Acquire::AllowDowngradeToInsecureRepositories \"true\";' >> /etc/apt/apt.conf.d/99allow-insecure
113+ " -t ssh_nodes -i spec/fixtures/litmus_inventory.yaml
114+
75115 - name : " Install Puppet agent"
76116 run : |
77- bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]'
117+ if [[ "${{ matrix.collection.version }}" ]] ; then
118+ export PUPPET_VERSION=${{ matrix.collection.version }}
119+ bundle exec rake 'litmus:install_agent[${{ matrix.collection.collection }}]'
120+ else
121+ bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]'
122+ fi
78123
79124 - name : " Install module"
80125 run : |
0 commit comments