From a752d8c9ac0efdee04a667e81788ebc11aa89d28 Mon Sep 17 00:00:00 2001 From: jordanbreen28 Date: Mon, 3 Apr 2023 15:47:35 +0100 Subject: [PATCH] (CONT-127) - Remove Honeycomb --- .github/workflows/ci.yml | 124 +++++++++++++++++++++++++++++++++- .github/workflows/nightly.yml | 123 ++++++++++++++++++++++++++++++++- 2 files changed, 241 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a5738adb..70737e1f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,125 @@ jobs: uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main" secrets: "inherit" - Acceptance: + Acceptance-Ubuntu: + name: "Acceptance - Ubuntu Runner" needs: Spec - uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main" - secrets: "inherit" + strategy: + fail-fast: false + matrix: + platform: + - ubuntu-20.04 + - ubuntu-latest + collection: + - puppet6-nightly + - puppet7-nightly + + runs-on: ${{ matrix.platform }} + + steps: + - name: Checkout Source + uses: actions/checkout@v2 + + - name: Activate Ruby 2.7 + uses: ruby/setup-ruby@v1 + with: + ruby-version: "2.7" + + - name: Cache gems + uses: actions/cache@v2 + with: + path: vendor/gems + key: ${{ runner.os }}-pr-${{ hashFiles('**/Gemfile') }} + restore-keys: | + ${{ runner.os }}-pr- + ${{ runner.os }}- + + - name: Prepare inventory file + run: | + cat <> spec/fixtures/litmus_inventory.yaml + --- + version: 2 + groups: + - name: local + targets: + - uri: litmus_localhost + config: + transport: local + - name: ssh_nodes + targets: [] + - name: winrm_nodes + targets: [] + EOF + + - name: Install gems and puppet agent + run: | + bundle install + sudo -u root env "PATH=$PATH" bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + + - name: Install module + run: bundle exec rake 'litmus:install_module' + + - name: Run acceptance tests + run: sudo -u root env "PATH=$PATH" bundle exec rake 'litmus:acceptance:localhost' + + Acceptance-Windows: + name: "${{matrix.platforms.label}}, ${{matrix.collection}}" + needs: Spec + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + platforms: + - label: "Windows 2016" + provider: "provision::provision_service" + image: "windows-2016" + - label: "Windows 2019" + provider: "provision::provision_service" + image: "windows-2019-core" + - label: "Windows 2022" + provider: "provision::provision_service" + image: "windows-2022" + collection: + - puppet6-nightly + - puppet7-nightly + + steps: + - 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 + bundle env + echo ::endgroup:: + + - name: Provision test environment + run: | + bundle exec rake "litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]" + # Redact password + FILE='spec/fixtures/litmus_inventory.yaml' + sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true + + - name: Install agent + run: | + bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + + - name: Install module + run: | + bundle exec rake 'litmus:install_module' + + - name: Run acceptance tests + run: | + bundle exec rake 'litmus:acceptance:parallel' + + - name: Remove test environment + if: ${{ always() }} + continue-on-error: true + run: | + bundle exec rake 'litmus:tear_down' diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a28cd2db..b29c3637 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -10,8 +10,125 @@ jobs: uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main" secrets: "inherit" - Acceptance: + Acceptance-Ubuntu: + name: "Acceptance - Ubuntu Runner" needs: Spec - uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main" - secrets: "inherit" + strategy: + fail-fast: false + matrix: + platform: + - ubuntu-20.04 + - ubuntu-latest + collection: + - puppet6-nightly + - puppet7-nightly + + runs-on: ${{ matrix.platform }} + + steps: + - name: Checkout Source + uses: actions/checkout@v2 + + - name: Activate Ruby 2.7 + uses: ruby/setup-ruby@v1 + with: + ruby-version: "2.7" + + - name: Cache gems + uses: actions/cache@v2 + with: + path: vendor/gems + key: ${{ runner.os }}-pr-${{ hashFiles('**/Gemfile') }} + restore-keys: | + ${{ runner.os }}-pr- + ${{ runner.os }}- + + - name: Prepare inventory file + run: | + cat <> spec/fixtures/litmus_inventory.yaml + --- + version: 2 + groups: + - name: local + targets: + - uri: litmus_localhost + config: + transport: local + - name: ssh_nodes + targets: [] + - name: winrm_nodes + targets: [] + EOF + + - name: Install gems and puppet agent + run: | + bundle install + sudo -u root env "PATH=$PATH" bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + + - name: Install module + run: bundle exec rake 'litmus:install_module' + + - name: Run acceptance tests + run: sudo -u root env "PATH=$PATH" bundle exec rake 'litmus:acceptance:localhost' + + Acceptance-Windows: + name: "${{matrix.platforms.label}}, ${{matrix.collection}}" + needs: Spec + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + platforms: + - label: "Windows 2016" + provider: "provision::provision_service" + image: "windows-2016" + - label: "Windows 2019" + provider: "provision::provision_service" + image: "windows-2019-core" + - label: "Windows 2022" + provider: "provision::provision_service" + image: "windows-2022" + collection: + - puppet6-nightly + - puppet7-nightly + + steps: + - 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 + bundle env + echo ::endgroup:: + + - name: Provision test environment + run: | + bundle exec rake "litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]" + # Redact password + FILE='spec/fixtures/litmus_inventory.yaml' + sed -e 's/password: .*/password: "[redacted]"/' < $FILE || true + + - name: Install agent + run: | + bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + + - name: Install module + run: | + bundle exec rake 'litmus:install_module' + + - name: Run acceptance tests + run: | + bundle exec rake 'litmus:acceptance:parallel' + - name: Remove test environment + if: ${{ always() }} + continue-on-error: true + run: | + bundle exec rake 'litmus:tear_down'