20 changes: 11 additions & 9 deletions .fixtures.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,18 @@ fixtures:
service: "puppetlabs/service"
package: "puppetlabs/package"
reboot: "puppetlabs/reboot"
node_manager:
repo: "WhatsARanjit/node_manager"
ref: "0.7.5"
repositories:
facts: 'https://github.com/puppetlabs/puppetlabs-facts.git'
puppet_agent: 'https://github.com/puppetlabs/puppetlabs-puppet_agent.git'
provision: 'https://github.com/puppetlabs/provision.git'
stdlib: 'https://github.com/puppetlabs/puppetlabs-stdlib.git'
node_manager: 'https://github.com/WhatsARanjit/puppet-node_manager'
apply_helpers: 'https://github.com/puppetlabs/puppetlabs-apply_helpers'
bolt_shim: 'https://github.com/puppetlabs/puppetlabs-bolt_shim'
format: 'https://github.com/voxpupuli/puppet-format'
container_inventory: 'https://gitlab.com/nwops/bolt-container_inventory'
facts: "https://github.com/puppetlabs/puppetlabs-facts.git"
puppet_agent: "https://github.com/puppetlabs/puppetlabs-puppet_agent.git"
provision: "https://github.com/puppetlabs/provision.git"
stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git"
apply_helpers: "https://github.com/puppetlabs/puppetlabs-apply_helpers"
bolt_shim: "https://github.com/puppetlabs/puppetlabs-bolt_shim"
format: "https://github.com/voxpupuli/puppet-format"
container_inventory: "https://gitlab.com/nwops/bolt-container_inventory"
symlinks:
"peadm": "#{source_dir}"
"peadm_spec": "#{source_dir}/spec/acceptance/peadm_spec"
4 changes: 3 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ on:
jobs:
Spec:
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
# Temporary workaround for allowing locking node_manager less than latest
# uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
uses: "./.github/workflows/module_ci.yml"
secrets: "inherit"

Acceptance:
Expand Down
92 changes: 92 additions & 0 deletions .github/workflows/module_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# This is a generic workflow for Puppet module CI operations.
name: "Module CI"

on:
workflow_call:
inputs:
runs_on:
description: "The operating system used for the runner."
required: false
default: "ubuntu-latest"
type: "string"
flags:
description: "Additional flags to pass to matrix_from_metadata_v2."
required: false
default: ''
type: "string"


jobs:
setup_matrix:
name: "Setup Test Matrix"
runs-on: ${{ inputs.runs_on }}
outputs:
spec_matrix: ${{ steps.get-matrix.outputs.spec_matrix }}

env:
BUNDLE_WITHOUT: release_prep

steps:

- name: "Checkout"
uses: "actions/checkout@v4"
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: "Setup ruby"
uses: "ruby/setup-ruby@v1"
with:
ruby-version: "2.7"
bundler-cache: true

- name: "Bundle environment"
run: |
echo ::group::bundler environment
bundle env
echo ::endgroup::
- name: Setup Spec Test Matrix
id: get-matrix
run: |
bundle exec matrix_from_metadata_v2 ${{ inputs.flags }}
spec:
name: "Spec tests (Puppet: ${{matrix.puppet_version}}, Ruby Ver: ${{matrix.ruby_version}})"
needs: "setup_matrix"
runs-on: ${{ inputs.runs_on }}
strategy:
fail-fast: false
matrix: ${{ fromJson( needs.setup_matrix.outputs.spec_matrix ) }}

env:
BUNDLE_WITHOUT: release_prep
PUPPET_GEM_VERSION: ${{ matrix.puppet_version }}
FACTER_GEM_VERSION: 'https://github.com/puppetlabs/facter#main' # why is this set?

steps:
- name: "Checkout"
uses: "actions/checkout@v4"
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: "Setup ruby"
uses: "ruby/setup-ruby@v1"
with:
ruby-version: ${{matrix.ruby_version}}
bundler-cache: true

- name: "Bundle environment"
run: |
echo ::group::bundler environment
bundle env
echo ::endgroup::
- name: "Run Static & Syntax Tests"
run: |
bundle exec rake syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop
bundle exec dependency-checker metadata.json --override WhatsARanjit/node_manager,0.7.5
- name: "Run tests"
run: |
bundle exec rake parallel_spec
4 changes: 3 additions & 1 deletion .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ on:
jobs:
Spec:
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
# Temporary workaround for allowing locking node_manager less than latest
# uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
uses: "./.github/workflows/module_ci.yml"
secrets: "inherit"

Acceptance:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-install-latest-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ jobs:
echo ::endgroup::
- name: "Activate twingate to obtain unreleased build"
uses: comfucios/twingate-github-action@main
uses: twingate/github-action@main
with:
service-key: ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ jobs:
echo ::endgroup::
- name: "Activate twingate to obtain unreleased build"
uses: comfucios/twingate-github-action@main
uses: twingate/github-action@main
with:
service-key: ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-upgrade-latest-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ jobs:
echo "${HOME}/pause absent, continuing workflow."
- name: "Activate twingate to obtain unreleased build"
uses: comfucios/twingate-github-action@main
uses: twingate/github-action@main
with:
service-key: ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ jobs:
version=${{ matrix.version }}
- name: "Activate twingate to obtain unreleased build"
uses: comfucios/twingate-github-action@main
uses: twingate/github-action@main
with:
service-key: ${{ secrets.TWINGATE_PUBLIC_REPO_KEY }}

Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).

## [v3.18.1](https://github.com/puppetlabs/puppetlabs-peadm/tree/v3.18.1) - 2024-04-17

[Full Changelog](https://github.com/puppetlabs/puppetlabs-peadm/compare/v3.18.0...v3.18.1)

## [v3.18.0](https://github.com/puppetlabs/puppetlabs-peadm/tree/v3.18.0) - 2024-04-04

[Full Changelog](https://github.com/puppetlabs/puppetlabs-peadm/compare/v3.17.0...v3.18.0)
Expand Down
4 changes: 2 additions & 2 deletions metadata.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "puppetlabs-peadm",
"version": "3.18.0",
"version": "3.18.1",
"author": "puppetlabs",
"summary": "Bolt plans used to deploy an at-scale Puppet Enterprise architecture",
"license": "Apache-2.0",
Expand All @@ -14,7 +14,7 @@
},
{
"name": "WhatsARanjit/node_manager",
"version_requirement": ">= 0.7.5 < 2.0.0"
"version_requirement": "0.7.5"
},
{
"name": "puppetlabs/bolt_shim",
Expand Down
5 changes: 3 additions & 2 deletions spec/docker/bolt-project.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
---
name: peadm_docker_examples
modules:
modules:
- name: nwops/container_inventory
version_requirement: ">= 0.1.1"
- name: puppetlabs/stdlib
version_requirement: ">= 6.5.0 < 8.0.0"
- puppetlabs/ruby_task_helper
- WhatsARanjit/node_manager
- name: WhatsARanjit/node_manager
version_requirement: "0.7.5"
- puppetlabs/apply_helpers
- puppetlabs/bolt_shim
- puppet/format