Showing with 1,270 additions and 880 deletions.
  1. +3 −2 .github/dependabot.yml
  2. +2 −4 .github/workflows/add-to-project.yml
  3. +54 −63 .github/workflows/auto_release.yml
  4. +8 −11 .github/workflows/ci.yml
  5. +9 −11 .github/workflows/mend.yml
  6. +8 −10 .github/workflows/nightly.yml
  7. +7 −7 .github/workflows/release-prep.yml
  8. +5 −6 .github/workflows/release.yml
  9. +29 −45 .github/workflows/spec.yml
  10. +105 −0 .github/workflows/test-add-compiler-matrix.yml
  11. +28 −45 .github/workflows/test-add-compiler.yaml
  12. +112 −0 .github/workflows/test-add-replica-matrix.yaml
  13. +35 −45 .github/workflows/test-add-replica.yaml
  14. +36 −62 .github/workflows/test-backup-restore-migration.yaml
  15. +26 −55 .github/workflows/test-backup-restore.yaml
  16. +28 −48 .github/workflows/test-failover.yaml
  17. +23 −41 .github/workflows/test-install-latest-dev.yaml
  18. +20 −38 .github/workflows/test-install-latest-xlarge-dev-nightly.yaml
  19. +33 −51 .github/workflows/test-install-matrix.yaml
  20. +33 −50 .github/workflows/test-install-rhel-9.yaml
  21. +28 −47 .github/workflows/test-upgrade-latest-dev.yaml
  22. +19 −36 .github/workflows/test-upgrade-latest-xlarge-dev-nightly.yaml
  23. +43 −66 .github/workflows/test-upgrade-matrix.yaml
  24. +35 −55 .github/workflows/test-upgrade.yaml
  25. +40 −0 .github/workflows/yamlformatter.yml
  26. +22 −0 CHANGELOG.md
  27. +100 −4 REFERENCE.md
  28. +64 −0 documentation/add_compiler.md
  29. +89 −0 documentation/add_replica.md
  30. +8 −8 documentation/expanding.md
  31. +1 −1 metadata.json
  32. +29 −10 plans/add_compiler.pp
  33. +8 −12 plans/add_replica.pp
  34. +37 −7 spec/acceptance/peadm_spec/plans/add_compiler.pp
  35. +1 −1 spec/acceptance/peadm_spec/plans/add_replica.pp
  36. +11 −3 spec/acceptance/peadm_spec/plans/install_test_cluster.pp
  37. +18 −0 spec/acceptance/peadm_spec/plans/provision_test_cluster.pp
  38. +20 −0 spec/acceptance/peadm_spec/plans/verify_replica.pp
  39. +93 −36 spec/plans/add_compiler_spec.rb
5 changes: 3 additions & 2 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
---
version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: github-actions
directory: "/"
directory: /
schedule:
interval: daily
time: "13:00"
time: '13:00'
open-pull-requests-limit: 10
6 changes: 2 additions & 4 deletions .github/workflows/add-to-project.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
---
name: Add new issue to Solarch project

on:
issues:
types:
- opened

types: [opened]
jobs:
add-to-project:
name: Add issue to project
Expand Down
117 changes: 54 additions & 63 deletions .github/workflows/auto_release.yml
Original file line number Diff line number Diff line change
@@ -1,71 +1,62 @@
name: "Auto release"

---
name: Auto release
on:
workflow_dispatch:

env:
CHANGELOG_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

jobs:
auto_release:
name: "Automatic release prep"
name: Automatic release prep
runs-on: ubuntu-20.04

steps:
- name: "Checkout Source"
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false

- name: "PDK Release prep"
uses: docker://puppet/puppet-dev-tools:4.x
with:
args: 'pdk release prep --force --debug'
env:
CHANGELOG_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: "Get Version"
if: ${{ github.repository_owner == 'puppetlabs' }}
id: gv
run: |
echo "::set-output name=ver::$(jq --raw-output .version metadata.json)"
- name: "Check if a release is necessary"
if: ${{ github.repository_owner == 'puppetlabs' }}
id: check
run: |
git diff --quiet CHANGELOG.md && echo "::set-output name=release::false" || echo "::set-output name=release::true"
- name: "Commit changes"
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
run: |
git config --local user.email "${{ github.repository_owner }}@users.noreply.github.com"
git config --local user.name "GitHub Action"
git add .
git commit -m "Release prep v${{ steps.gv.outputs.ver }}"
- name: Create Pull Request
id: cpr
uses: puppetlabs/peter-evans-create-pull-request@v3
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: "Release prep v${{ steps.gv.outputs.ver }}"
branch: "release-prep"
delete-branch: true
title: "Release prep v${{ steps.gv.outputs.ver }}"
body: |
Automated release-prep through [pdk-templates](https://github.com/puppetlabs/pdk-templates/blob/main/moduleroot/.github/workflows/auto_release.yml.erb) from commit ${{ github.sha }}.
Please verify before merging:
- [ ] last [nightly](https://github.com/${{ github.repository }}/actions/workflows/nightly.yml) run is green
- [ ] [Changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) is readable and has no unlabeled pull requests
- [ ] Ensure the [changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) version and [metadata](https://github.com/${{ github.repository }}/blob/release-prep/metadata.json) version match
labels: "maintenance"

- name: PR outputs
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
run: |
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"
- name: Checkout Source
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false
- name: PDK Release prep
uses: docker://puppet/puppet-dev-tools:4.x
with:
args: pdk release prep --force --debug
env:
CHANGELOG_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Get Version
if: ${{ github.repository_owner == 'puppetlabs' }}
id: gv
run: |
echo "::set-output name=ver::$(jq --raw-output .version metadata.json)"
- name: Check if a release is necessary
if: ${{ github.repository_owner == 'puppetlabs' }}
id: check
run: |
git diff --quiet CHANGELOG.md && echo "::set-output name=release::false" || echo "::set-output name=release::true"
- name: Commit changes
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
run: |
git config --local user.email "${{ github.repository_owner }}@users.noreply.github.com"
git config --local user.name "GitHub Action"
git add .
git commit -m "Release prep v${{ steps.gv.outputs.ver }}"
- name: Create Pull Request
id: cpr
uses: puppetlabs/peter-evans-create-pull-request@v3
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Release prep v${{ steps.gv.outputs.ver }}
branch: release-prep
delete-branch: true
title: Release prep v${{ steps.gv.outputs.ver }}
body: |
Automated release-prep through [pdk-templates](https://github.com/puppetlabs/pdk-templates/blob/main/moduleroot/.github/workflows/auto_release.yml.erb) from commit ${{ github.sha }}.
Please verify before merging:
- [ ] last [nightly](https://github.com/${{ github.repository }}/actions/workflows/nightly.yml) run is green
- [ ] [Changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) is readable and has no unlabeled pull requests
- [ ] Ensure the [changelog](https://github.com/${{ github.repository }}/blob/release-prep/CHANGELOG.md) version and [metadata](https://github.com/${{ github.repository }}/blob/release-prep/metadata.json) version match
labels: maintenance
- name: PR outputs
if: ${{ github.repository_owner == 'puppetlabs' && steps.check.outputs.release == 'true' }}
run: |-
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"
19 changes: 8 additions & 11 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,18 @@
name: "ci"

---
name: ci
on:
pull_request:
branches:
- "main"
branches: [main]
workflow_dispatch:

jobs:
Spec:
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
secrets: "inherit"

uses: puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main
secrets: inherit
Acceptance:
if: ${{ github.repository_owner == 'puppetlabs' }}
needs: Spec
uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main"
uses: puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main
with:
flags: "--provision-service"
secrets: "inherit"
flags: --provision-service
secrets: inherit
20 changes: 9 additions & 11 deletions .github/workflows/mend.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
name: "mend"

---
name: mend
on:
pull_request:
types:
- closed
branches:
- "main"
types: [closed]
branches: [main]
schedule:
- cron: "0 0 * * *"
- cron: 0 0 * * *
workflow_dispatch:

jobs:
mend:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || (github.event.pull_request.merged == true && github.ref == 'refs/heads/main')
uses: "puppetlabs/cat-github-actions/.github/workflows/tooling_mend_ruby.yml@main"
secrets: "inherit"
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
|| (github.event.pull_request.merged == true && github.ref == 'refs/heads/main')
uses: puppetlabs/cat-github-actions/.github/workflows/tooling_mend_ruby.yml@main
secrets: inherit
with:
product_name: InsTalleR
18 changes: 8 additions & 10 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,18 @@
name: "nightly"

---
name: nightly
on:
schedule:
- cron: "0 0 * * *"
- cron: 0 0 * * *
workflow_dispatch:

jobs:
Spec:
if: ${{ github.repository_owner == 'puppetlabs' }}
uses: "puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main"
secrets: "inherit"

uses: puppetlabs/cat-github-actions/.github/workflows/module_ci.yml@main
secrets: inherit
Acceptance:
if: ${{ github.repository_owner == 'puppetlabs' }}
needs: Spec
uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main"
uses: puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main
with:
flags: "--provision-service"
secrets: "inherit"
flags: --provision-service
secrets: inherit
14 changes: 7 additions & 7 deletions .github/workflows/release-prep.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: "Release Prep"

---
name: Release Prep
on:
workflow_dispatch:
inputs:
version:
description: "Module version to be released. Must be a valid semver string. (1.2.3)"
description: Module version to be released. Must be a valid semver string.
(1.2.3)
required: true

jobs:
release_prep:
uses: "puppetlabs/cat-github-actions/.github/workflows/module_release_prep.yml@main"
uses: puppetlabs/cat-github-actions/.github/workflows/module_release_prep.yml@main
with:
version: "${{ github.event.inputs.version }}"
secrets: "inherit"
version: ${{ github.event.inputs.version }}
secrets: inherit
11 changes: 5 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
name: "Publish module"

---
name: Publish module
on:
workflow_dispatch:

jobs:
release:
uses: "puppetlabs/cat-github-actions/.github/workflows/module_release.yml@main"
secrets: "inherit"
release:
uses: puppetlabs/cat-github-actions/.github/workflows/module_release.yml@main
secrets: inherit
Loading