Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Files
F9124946
pr_test.yml
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
6 KB
Subscribers
None
pr_test.yml
View Options
name
:
"PR
Testing"
on
:
[
pull_request
]
env
:
HONEYCOMB_WRITEKEY
:
7f3c63a70eecc61d635917de46bea4e6
HONEYCOMB_DATASET
:
litmus tests
jobs
:
setup_matrix
:
name
:
"Setup
Test
Matrix"
runs-on
:
ubuntu-20.04
outputs
:
matrix
:
${{ steps.get-matrix.outputs.matrix }}
steps
:
-
name
:
"Honeycomb:
Start
recording"
uses
:
puppetlabs/kvrhdn-gha-buildevents@pdk-templates-v1
with
:
apikey
:
${{ env.HONEYCOMB_WRITEKEY }}
dataset
:
${{ env.HONEYCOMB_DATASET }}
job-status
:
${{ job.status }}
-
name
:
"Honeycomb:
Start
first
step"
run
:
|
echo STEP_ID=setup-environment >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
-
name
:
Checkout Source
uses
:
actions/checkout@v2
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
buildevents cmd $TRACE_ID $STEP_ID 'bundle env' -- bundle env
echo ::endgroup::
-
name
:
"Honeycomb:
Record
Setup
Environment
time"
if
:
${{ github.repository_owner == 'puppetlabs' }}
run
:
|
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Environment'
echo STEP_ID=Setup-Acceptance-Test-Matrix >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
-
name
:
Run validation steps
run
:
|
bundle exec rake validate
if
:
${{ github.repository_owner == 'puppetlabs' }}
-
name
:
Setup Acceptance Test Matrix
id
:
get-matrix
run
:
|
if [ '${{ github.repository_owner }}' == 'puppetlabs' ]; then
buildevents cmd $TRACE_ID $STEP_ID matrix_from_metadata -- bundle exec matrix_from_metadata_v2
else
echo "::set-output name=matrix::{}"
fi
-
name
:
"Honeycomb:
Record
Setup
Test
Matrix
time"
if
:
${{ always() }}
run
:
|
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Test Matrix'
Acceptance
:
name
:
"${{matrix.platforms.label}},
${{matrix.collection}}"
needs
:
-
setup_matrix
if
:
${{ needs.setup_matrix.outputs.matrix != '{}' }}
runs-on
:
ubuntu-20.04
strategy
:
fail-fast
:
false
matrix
:
${{fromJson(needs.setup_matrix.outputs.matrix)}}
env
:
BUILDEVENT_FILE
:
'../buildevents.txt'
steps
:
-
run
:
|
echo 'platform=${{ matrix.platforms.image }}' >> $BUILDEVENT_FILE
echo 'collection=${{ matrix.collection }}' >> $BUILDEVENT_FILE
echo 'label=${{ matrix.platforms.label }}' >> $BUILDEVENT_FILE
-
name
:
"Honeycomb:
Start
recording"
uses
:
puppetlabs/kvrhdn-gha-buildevents@pdk-templates-v1
with
:
apikey
:
${{ env.HONEYCOMB_WRITEKEY }}
dataset
:
${{ env.HONEYCOMB_DATASET }}
job-status
:
${{ job.status }}
matrix-key
:
${{ matrix.platforms.label }}-${{ matrix.collection }}
-
name
:
"Honeycomb:
start
first
step"
run
:
|
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-1 >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
-
name
:
Checkout Source
uses
:
actions/checkout@v2
-
name
:
Activate Ruby 2.7
uses
:
ruby/setup-ruby@v1
with
:
ruby-version
:
"2.7"
bundler-cache
:
true
-
name
:
Print bundle environment
run
:
|
echo ::group::bundler environment
buildevents cmd $TRACE_ID $STEP_ID 'bundle env' -- bundle env
echo ::endgroup::
-
name
:
"Honeycomb:
Record
Setup
Environment
time"
if
:
${{ always() }}
run
:
|
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Setup Environment'
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-2 >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
-
name
:
Provision test environment
run
:
|
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:provision ${{ matrix.platforms.image }}' -- bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]'
echo ::group::=== REQUEST ===
cat request.json || true
echo
echo ::endgroup::
echo ::group::=== INVENTORY ===
if [ -f 'spec/fixtures/litmus_inventory.yaml' ];
then
FILE='spec/fixtures/litmus_inventory.yaml'
elif [ -f 'inventory.yaml' ];
then
FILE='inventory.yaml'
fi
sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true
echo ::endgroup::
-
name
:
Install agent
run
:
|
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:install_agent ${{ matrix.collection }}' -- bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]'
-
name
:
Install module
run
:
|
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:install_module' -- bundle exec rake 'litmus:install_module'
-
name
:
"Honeycomb:
Record
deployment
times"
if
:
${{ always() }}
run
:
|
echo ::group::honeycomb step
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Deploy test system'
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-3 >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
echo ::endgroup::
-
name
:
Run acceptance tests
run
:
|
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:acceptance:parallel' -- bundle exec rake 'litmus:acceptance:parallel'
-
name
:
"Honeycomb:
Record
acceptance
testing
times"
if
:
${{ always() }}
run
:
|
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Run acceptance tests'
echo STEP_ID=${{ matrix.platforms.image }}-${{ matrix.collection }}-4 >> $GITHUB_ENV
echo STEP_START=$(date +%s) >> $GITHUB_ENV
-
name
:
Remove test environment
if
:
${{ always() }}
continue-on-error
:
true
run
:
|
if [[ -f inventory.yaml || -f spec/fixtures/litmus_inventory.yaml ]]; then
buildevents cmd $TRACE_ID $STEP_ID 'rake litmus:tear_down' -- bundle exec rake 'litmus:tear_down'
echo ::group::=== REQUEST ===
cat request.json || true
echo
echo ::endgroup::
fi
-
name
:
"Honeycomb:
Record
removal
times"
if
:
${{ always() }}
run
:
|
buildevents step $TRACE_ID $STEP_ID $STEP_START 'Remove test environment'
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Jun 21, 7:46 PM (3 w, 1 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3307425
Attached To
rSPPG PostgreSQL puppet module
Event Timeline
Log In to Comment