aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hashizume <michael.hashizume@puppet.com>2023-04-19 11:37:41 -0700
committerMichael Hashizume <michael.hashizume@puppet.com>2023-04-19 11:37:41 -0700
commit3688608d318953def361332e779cad88e9e2c6e3 (patch)
tree47906806e25feb9cb07c228967a50d9ccabc2868
parentbf6cf14c4dc27e2b1b4a7b1f32d57ff7ff3aeb8f (diff)
downloadpuppet-sshkeys_core-3688608d318953def361332e779cad88e9e2c6e3.tar.gz
puppet-sshkeys_core-3688608d318953def361332e779cad88e9e2c6e3.tar.bz2
(MODULES-11418) Resuable workflows for unit tests
This commit switches the GitHub Actions workflows for unit tests over to using the reusable workflows in puppetlabs/phoenix-github-actions.
-rw-r--r--.github/workflows/unit_tests.yaml16
-rw-r--r--.github/workflows/unit_tests_with_nightly_puppet_gem.yaml69
-rw-r--r--.github/workflows/unit_tests_with_released_puppet_gem.yaml50
3 files changed, 16 insertions, 119 deletions
diff --git a/.github/workflows/unit_tests.yaml b/.github/workflows/unit_tests.yaml
new file mode 100644
index 0000000..81a0f34
--- /dev/null
+++ b/.github/workflows/unit_tests.yaml
@@ -0,0 +1,16 @@
+---
+name: Unit Tests
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+ branches: [ main ]
+ workflow_dispatch:
+
+jobs:
+ Nightly:
+ uses: "puppetlabs/phoenix-github-actions/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml@main"
+
+ Released:
+ uses: "puppetlabs/phoenix-github-actions/.github/workflows/unit_tests_with_released_puppet_gem.yaml@main"
diff --git a/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml b/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml
deleted file mode 100644
index 789161f..0000000
--- a/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml
+++ /dev/null
@@ -1,69 +0,0 @@
----
-name: Unit Tests with nightly Puppet gem
-
-on:
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
-
-jobs:
- unit_tests_with_nightly_puppet_gem:
- name: ${{ matrix.os_type }} / Puppet${{ matrix.puppet_version }} gem / Ruby ${{ matrix.ruby }}
- strategy:
- matrix:
- os: [ 'ubuntu-20.04', 'macos-latest', 'windows-2019' ]
- puppet_version: [ 6, 7 ]
- include:
- - puppet_version: 6
- ruby: 2.5
- - puppet_version: 7
- ruby: 2.7
-
- - os: 'ubuntu-20.04'
- os_type: 'Linux'
- env_set_cmd: 'export '
- gem_file: 'puppet-latest.gem'
- - os: 'macos-latest'
- os_type: 'macOS'
- env_set_cmd: 'export '
- gem_file: 'puppet-latest-universal-darwin.gem'
- - os: 'windows-2019'
- os_type: 'Windows'
- env_set_cmd: '$env:'
- gem_file: 'puppet-latest-x64-mingw32.gem'
-
- runs-on: ${{ matrix.os }}
- steps:
- - name: Checkout current PR code
- uses: actions/checkout@v3
-
- - name: Install ruby version ${{ matrix.ruby }}
- uses: ruby/setup-ruby@v1
- with:
- ruby-version: ${{ matrix.ruby }}
-
- - name: Install the latest nightly build of puppet${{ matrix.puppet_version }} gem
- run: |
- sleep_time=0
- until [ $sleep_time -ge 15 ]
- do
- curl --location http://nightlies.puppet.com/downloads/gems/puppet${{ matrix.puppet_version }}-nightly/${{ matrix.gem_file }} --output puppet.gem
- gem install puppet.gem -N && break
-
- sleep_time=$((sleep_time*2+1))
- echo "Retrying download and install of gem in $sleep_time seconds..."
- sleep $sleep_time
- done
- shell: bash
-
- - name: Prepare testing environment with bundler
- run: |
- git config --global core.longpaths true
- bundle config set system 'true'
- bundle config set --local without 'release'
- ${{ matrix.env_set_cmd }}PUPPET_GEM_VERSION=$(ruby -e 'puts /puppet\s+\((.+)\)/.match(`gem list -eld puppet`)[1]')
- bundle update --jobs 4 --retry 3
-
- - name: Run unit tests
- run: bundle exec rake parallel_spec
diff --git a/.github/workflows/unit_tests_with_released_puppet_gem.yaml b/.github/workflows/unit_tests_with_released_puppet_gem.yaml
deleted file mode 100644
index 8b5afcb..0000000
--- a/.github/workflows/unit_tests_with_released_puppet_gem.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
----
-name: Unit Tests with released Puppet gem
-
-on:
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
-
-jobs:
- unit_tests_with_released_puppet_gem:
- name: ${{ matrix.os_type }} / Puppet${{ matrix.puppet_version }} gem / Ruby ${{ matrix.ruby }}
- strategy:
- matrix:
- os: [ 'ubuntu-20.04', 'macos-latest', 'windows-2019' ]
- puppet_version: [ 6, 7 ]
- include:
- - puppet_version: 6
- ruby: 2.5
- - puppet_version: 7
- ruby: 2.7
-
- - os: 'ubuntu-20.04'
- os_type: 'Linux'
- - os: 'macos-latest'
- os_type: 'macOS'
- - os: 'windows-2019'
- os_type: 'Windows'
-
- runs-on: ${{ matrix.os }}
- env:
- PUPPET_GEM_VERSION: ~> ${{ matrix.puppet_version }}.0
- steps:
- - name: Checkout current PR code
- uses: actions/checkout@v3
-
- - name: Install ruby version ${{ matrix.ruby }}
- uses: ruby/setup-ruby@v1
- with:
- ruby-version: ${{ matrix.ruby }}
-
- - name: Prepare testing environment with bundler
- run: |
- git config --global core.longpaths true
- bundle config set system 'true'
- bundle config set --local without 'release'
- bundle update --jobs 4 --retry 3
-
- - name: Run unit tests
- run: bundle exec rake parallel_spec