Aria Li [Wed, 20 Mar 2024 18:45:29 +0000 (11:45 -0700)]
(PA-6178) Configure host type as AIO
Previously, when running with beaker 5 and latest beaker-puppet, tests failed
with:
cannot add defaults of type pe for host redhat7-64-1 (add_pe_defaults_on not present)
The error came from beaker-puppet when it tried to configure the host as a PE
agent[1].
The root cause is beaker defaults its options to `pe`[2]. When `beaker-puppet`
calls the `configure_type_defaults_on` method, it calls the appropriate
`add_<type>_defaults_on` method. This works when using beaker 4 as `beaker-pe`
is pulled in as a dependency and its `add_pe_defaults_on` method[3] is included
into the tests.
However, when running with beaker5, beaker-pe is not loaded, so the method is
undefined. It appears beaker-puppet_install_helper is responsible for the
whether beaker-pe is loaded or not, but only when using
beaker-puppet_install_helper 0.9.4.
Since these tests don't actually depend on PE, drop beaker-pe, require
'beaker-puppet' directly (so the install_from_build_data_url method exists) and
configure the host type directly.
Aria Li [Wed, 20 Mar 2024 18:08:08 +0000 (11:08 -0700)]
(PA-6178) Update to Beaker 5 / beaker-puppet 3
This commit updates .sync.yml and Gemfile to use Beaker 5.x, beaker-abs 1.x,
beaker-puppet 3.x and drops beaker-pe. Also, this commit adds a condition for
beaker-puppet to ensure beaker-puppet is only listed in the Gemfile if Ruby is
< 3.1.0. This is because beaker-puppet cannot run on Ruby > 3.1 or else Bundler
errors will occur.
Aria Li [Wed, 20 Mar 2024 17:19:00 +0000 (10:19 -0700)]
(PA-6178) Update to PDK template 3.0.1 and use updated module release worfklow
This commit updates this module from PDK template 2.7.1 to 3.0.1 and updates
the module release workflows to use the newer release_prep instead of
auto_release GitHub Action wofklow. This commit also:
- Removes the github_changelog_generator and concurrent-ruby gems because they
are no longer needed for the new module release process in PDK template
- Updates the Rakefile to use Vox Rake tasks only if the vospupuli-acceptance
gem is installed
This commit updates the static code analysis GitHub Actions workflow
from using a copy in this repository to a resuable copy in the Phoenix
team centralized GitHub Actions repository.
In addition, this removes the commits Rake task as it is no longer used
in the reusable version of this workflow.
Modeling after the learnings of the support team in commit
puppetlabs/puppetlabs-puppet_metrics_collector@78dd858
This commit pins the github_changelog_generator gem to its latest
version to make it work, and the concurrent-ruby to an older version
to compensate for the version of PDK shipped in the dev-tools
container image.
In e4337c0, we updated the module according to PDK template 2.7.4,
which updated puppetlabs_spec_helper. The updated version of
puppetlabs_spec_helper removed the Beaker rake task, which we use
for acceptance testing.
This commit adds the voxpupuli-acceptance gem, which re-adds the
Beaker rake task.
The PDK Docker image does not contain any build tools, which causes
the installation of gems that use native extensions to fail.
This commit changes the Docker image used in the Auto Release
GitHub Action from the PDK image to the Puppet dev-tools image,
which contains packages like `make` necessary for building native
extensions.
This commit runs `pdk update` using the most recent template at the
time (2.7.4) and updates metadata.json to allow Puppet versions
< 9.0.0 in preparation for the release of Puppet 8.
Gabriel Nagy [Thu, 11 Mar 2021 16:17:55 +0000 (18:17 +0200)]
(MODULES-10953) Update metadata.json and pdk version
To avoid having to update this everytime we release a new agent
platform, it should be enough to specify the supported OS, without
specific versions. It is assumed that for each OS in metadata.json, the
versions supported are the same as what the agent itself supports.
Gabriel Nagy [Thu, 18 Feb 2021 13:55:43 +0000 (15:55 +0200)]
(maint) Pin puppet-module-gems
Pin puppet-module-posix-system and puppet-module-win-system to an older
version since the newer ones do not bundle some gems that we use in
acceptance (i.e. beaker-module_install_helper), causing tests to fail.
Gabriel Nagy [Thu, 18 Feb 2021 13:53:50 +0000 (15:53 +0200)]
(MODULES-10945) Do not install PDK when running PR tests
Create a separate group in the Gemfile for pdk and puppet-blacksmith
which are only used for releasing. In the workflow, avoid installing the
release group.
Luchian Nemes [Mon, 5 Oct 2020 14:56:57 +0000 (17:56 +0300)]
(maint) Add pdk and blacksmith back in Gemfile
During the removal of `puppet-module-dev`, the pdk and puppet-blacksmith
gems were also removed by mistake. This commit makes us able to release
again.
Luchian Nemes [Thu, 24 Sep 2020 07:12:11 +0000 (10:12 +0300)]
(MODULES-10815) Add Slack notification for daily test run
Starting with this commit, the daily `Unit Tests with nightly Puppet
gem` run will now send the job result via a Slack notification. The
Slack channel can be changed through the `SLACK_CHANNEL` from the GitHub
Secrets of the repository.
Luchian Nemes [Tue, 8 Sep 2020 14:28:21 +0000 (17:28 +0300)]
(MODULES-10800) Add GitHub Actions workflows
Added GitHub Actions workflows for `Static Code Analysis` and `Unit
Tests` that run each time there is a new `pull request` or `git push`.
`Unit tests` are also set to run every workday at `05:00:00 UTC`.
The `.yaml` config files of `Travis` and `AppVeyor` have been removed.
Luchian Nemes [Tue, 8 Sep 2020 14:27:44 +0000 (17:27 +0300)]
(maint) Remove 'puppet-module-dev' gem dependency
In preparation for the Puppet 7 release, the
`puppet-module-posix-dev-r2.7` and `puppet-module-posix-dev-r2.7` gems
had to be removed from `Gemfile` due to the following dependency error:
`puppet-module-posix-dev-r2.7` depends on
`puppet_litmus` which depends on
`bolt` which depends on
`puppet` which is locked to a version below 7
Also added the needed gems that were lost in the above removal process.
Ben Ford [Tue, 20 Nov 2018 00:05:30 +0000 (16:05 -0800)]
Drop version requirement down a few notches
Since this type is not bundled with puppet-agent we should loosen the version requirements. People will be adding it to their module's dependencies, and will expect this module to claim support for the Puppet version they're using.
This module appears to [already be tested on Puppet 4.10](https://github.com/puppetlabs/puppetlabs-mailalias_core/blob/master/.travis.yml#L28).