Emit log results when something goes wrong otherwise there's no record of what happened.
(FM-8969) Specify osx-12-x86_64 explicitly
Specify architecture for existing macOS 12 OS before adding arm64 logic.
(FM-8969) Parameterize arm64 architecture
Curl agent from `arm64` based directory when `uname -p` is arm. Since this is the first macOS 12 ARM released, we install the latest version from puppet6 nightly and skip the 6.x to 6.y test.
Merge pull request #615 from joshcooper/macos_12_arm
(FM-8969) Add support for macOS 12 ARM
Merge pull request #484 from scbjans/support_absolute_source_in_tasks
Add support for absolute_source in puppet_agent::install task
(maint) Update recently released OSes
Enable 6.x -> 6.y upgrades for osx-12-x86_64 since it's been supported for multiple 6.x releases. We can't do the same for osx-12-ARM or ubuntu-22.04-x86_64, since we don't have immediate plans to releases 6.29.0. Install 6.28.0 instead of latest/nightly for osx-12-arm and ubuntu 22.04
Install 6.x nightly on Fedora 36 and upgrade to 7.x nightly. Skip 6.x -> 6.y updates since there's only one version.
Merge pull request #619 from joshcooper/fedora36
(FM-8983) Add Fedora 36
(MODULES-11328) Removes Ubuntu 16.04
Ubuntu 16.04 hit end-of-life in April 2021. This commit removes this version of Ubuntu from the installation task and tests.
Merge pull request #620 from mhashizume/MODULES-11328/main/remove_ubu…
…ntu_1604 (MODULES-11328) Removes Ubuntu 16.04
(MODULES-11268) Remove support for Fedora 34
Fedora 34 reached end-of-life in June 2022. This commit removes Fedora 34 from puppetlabs-puppet_agent.
Merge pull request #621 from AriaXLi/modules-11268_remove_fedora_34
(MODULES-11268) Remove support for Fedora 34
(MODULES-11339) Removes Debian 9 from install task
Debian 9 ("stretch") hit the end of its LTS support in June 2022
This commit removes Debian 9 (and older) from the installation task.(maint) Standardizes Rubies in GitHub Actions
The Ruby versions used in our GitHub Actions were inconsistent. This commit sets all Ruby versions to use the short version (e.g. 2.5 instead of 2.5.9) for all Rubies to automatically match the latest release of that version.
Merge pull request #622 from mhashizume/MODULES-11339/main/deprecate_…
…debian_9 (MODULES-11339) Removes Debian 9 from install task
Merge pull request #623 from mhashizume/maint/main/ruby_25_update
(maint) Standardizes Rubies in GitHub Actions
(MODULES-11345) Update macOS GitHub Action runners
GitHub Actions' macOS 10.15 runners are going end-of-life on December 1, 2022: actions/runner-images#5583 This commit updates the macOS runners in use to macos-latest, which is currently macOS 11 Big Sur.
Merge pull request #625 from mhashizume/PA-4696/main/macos-gha
(MODULES-11345) Updates macOS GitHub Actions runners
Merge pull request #629 from mhashizume/maint/main/readme_updates
(maint) Updates stale links in README
(MODULES-11368) Update Ubuntu GitHub Action runner
GitHub is deprecating Ubuntu 18.04 runners on April 1, 2023. This commit switches all Ubuntu 18.04 runners used in GitHub Actions to Ubuntu 20.04.
Merge pull request #630 from mhashizume/MODULES-11368/main/ubuntu-gha
(MODULES-11368) Update Ubuntu GitHub Action runner
(maint) Update 6->7 to pull latest version from 7.x and not main branch
With the creation of the 7.x branch of puppet-agent we need to update the job to pull from that now.
Merge pull request #633 from cthorn42/maint/main/update_main_to_7x
(maint) Update 6->7 to pull latest version from 7.x and not main branch
(MODULES-11348) Replace lsbdistcodename with os.distro.codename
This commit replaces references to lsbdistcodename with os.distro.codename. lsbdistcodename is a legacy fact that is used to determine the package name but it requires the lsb-release package. Additionally, for Puppet 8, we are moving towards dropping legacy facts. Also, since Facter 3+ provides the structured fact, os.distro.codename, users can safely upgrade from Puppet 6/7 to 8 or from Puppet 8.x to 8.y when using os.distro.codename. Due to these reasons, os.distro.codename, will be used instead of lsbdistcodename.
Merge pull request #634 from AriaXLi/MODULES-11348/replace_lsbdistcod…
…ename (MODULES-11348) Replace lsbdistcodename with os.distro.codename
(maint) Updates actions/checkout GitHub Action
This commit also updates all instances of the actions/checkout@v2 to actions/checkout@v3 in perparation for the former's deprecation as part of the NodeJS 12 deprecation. https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/
(maint) Update static code analysis Ruby version
The static code analysis GitHub Action runs on Ruby 2.6, which went end-of-life on April 12, 2022. This commit updates the Ruby version to Ruby 2.7, which is currently supported.
Merge pull request #635 from mhashizume/maint/main/gha-housekeeping
(maint) GitHub Actions housekeeping
(MODULES-11361) Updates legacy facts
In preparation for the removal of legacy facts in Puppet 8, this commit updates all of the legacy facts in code and tests to modern, structured facts. This commit also adds the override_facts method to spec_helper_local in order to support merging in fact overrides into nested hashes of facts.
(MODULES-11361) Updates puppetlabs-apt
This commit updates puppetlabs-puppet_agent's dependency on the puppetlabs-apt module to 7.7.1, the first version to update legacy facts to structured facts.
Merge pull request #637 from mhashizume/MODULES-11361/main/legacy-facts
(MODULES-11361) Updates legacy facts
(MODULES-11361) Update PDK template
This commit runs `pdk update` using the most recent template (targeting `main`) and updates metadata.json to allow Puppet versions < 9.0.0 in preparation for the release of Puppet 8.
(MODULES-11361) Change auto release Docker image
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.
(MODULES-11361) Add Vox Beaker gem
In 0c57c36, we updated the module according to the latest PDK template, 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.
(MODULES-11361) Pin gems for auto release
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.
(maint) puppet-lint whitespace fixes
This commit fixes various whitespace error raised by puppet-lint checks.
This commit corrects a previously hardcoded OS-specific Fact in the spec helper.
(MODULES-11361) Disable and exempt style cops
This commit disables the Style/ClassAndModuleChildren cop in Rubocop along with exempting several files from Style/Documentation, as these cops do not make sense for these classes which are children of modules.
(MODULES-11394) Remove Puppet 5 to 6 upgrade test
Puppet 5 went end-of-life in January 2021: https://www.puppet.com/docs/puppet/5.5/about_agent.html And Puppet 6 went end-of-life in February 2023: https://www.puppet.com/docs/puppet/6/platform_lifecycle.html Since both of these streams are now end-of-life, this commit removes the acceptance test upgrading from Puppet 5 to Puppet 6.
Merge pull request #636 from mhashizume/MODULES-11361/main/puppet8
(MODULES-11361) Puppet 8 compatibility work
Merge pull request #638 from mhashizume/MODULES-11394/main/delete-pup…
…pet5-tests (MODULES-11394) Remove Puppet 5 to 6 upgrade test
(maint) replace legacy validate function with datatype
This replaces the validate_absolute_path() function call with a datatype from puppetlabs/stdlib. The type is available since the 4.13.1 release of stdlib (and this module already depends on 5.1 and newer). Some background: I'm currently debugging a slow pe-puppetserver metrics API. The puppet-profiler is enabled and provides metrics for all called functions. In our environment the puppet_agent module is the only one still using this legacy function. By replacing it with a datatype, it follows current best practice guides and also speeds up the API because it has to care about less metrics (in my specific case at least).
Merge pull request #628 from bastelfreak/stdlib
(maint) replace legacy validate function with datatype