IAC & DevX Team Updates; Bolt 3.x support, new Resource API capabilities, more
Now in technicolor
Puppet Camp “Become a better developer” took place last week, and in case you missed it you canwatch all the talks on YouTube; IAC Team membersDavid Schmitt andJames Pogran providing 2 of the 6 talks. Learn about“Operational Verification” from David or ramp up your skills usingPuppet VS Code from James
Community Day Triage Stats
A few members of the team were unwell this week but the rest managed to process a total of 32 issues and PRs across our modules and tools repos.
Community Contributions
We’d like to thank the following people in the Puppet Community for their contributions over this past week:
puppetlabs-apache#2138
: “Fix HEADER* and README* wildcards in IndexIgnore”, thanks toketopuppetlabs-apt#985
: “apt::mark: fix docs”, thanks tokenyonpuppetlabs-firewall#986
: “Update README.md”, thanks toarjenzpuppetlabs-haproxy#477
: “Fix ‘option’ entry name in option_order hash”, thanks toantaflospuppetlabs-java#476
: “allow v5.x of puppet/archive”, thanks tobastelfreakpuppetlabs-mysql#1378
: “Fix: Puppet Unknown variable: ‘mysql::params::exec_path’”, thanks toJvGinkelpuppetlabs-ntp#615
: “Allow setting user and group permissions of the NTP logfile”, thanks toKristijanpuppetlabs-stdlib#1176
: “Fix typo in validate_ipv6_address function”, thanks tonbarrientospuppetlabs-stdlib#1173
: “pw_hash: add support for bcrypt variants”, thanks tokjetilhocommunity_management#68
: “Added back the ability to manage labels on multiple repos”, thanks toyachubdependency_checker#25
: “Report status with exit-code”, thanks tosmortexlitmusimage#30
: “Add BASE_IMAGE_TAG=${TAG} instruction”, thanks togavindidrichsenpdk#1028
: “(maint) Mark stale issues”, thanks tojpogranpdk-docker#24
: “Restrict image to non-root user”, thanks tocdenneen and the following people who helped get it over the line (nkanderson)pdk-templates#429
: “Misc cleanup”, thanks tojeffbyrnespdk-templates#423
: “(maint) Update Gitpod to Puppet VSCode Extension to 1.2.0”, thanks tojpogranpdk-vanagon#283
: “(VANAGON-85) Move platform definitions into core vanagon. Inherit def…”, thanks tojackie-kinslerpuppet-strings#272
: “Update CODEOWNERS”, thanks tobinford2kpuppet_litmus#407
: “(maint) Update bolt requirement to include 3.x”, thanks tobeechtomruby-pwsh#122
: “feat: adding in paths for PowerShell 7 install”, thanks ton3snahruby-pwsh#118
: “(Maint) Ensure canonicalize correctly compares sorted hashes”, thanks toHvidrspec-puppet#823
: “Added support for regexp arguments to Sensitive”, thanks totiandreyrspec-puppet#819
: “Handle all auto*, not just autorequire”, thanks toekohl
Checkall the ways to reach us if you want to directly contact us about anything module related.
New Module / Gem Releases
The following modules were released this week:
puppetlabs-stdlib
(7.0.1
)puppetlabs-concat
(7.0.1
)puppetlabs-ntp
(9.0.1
)puppetlabs-apt
(8.0.2
)puppetlabs-java
(7.0.1
)puppetlabs-inifile
(5.0.1
)puppetlabs-postgresql
(7.1.0
)puppetlabs-haproxy
(6.0.0
)puppetlabs-mysql
(11.0.1
)puppetlabs-reboot
(4.0.2
)puppetlabs-chocolatey
(6.0.1
)puppetlabs-accounts
(7.0.2
)puppetlabs-ibm_installation_manager
(3.0.1
)
puppet_litmus is now compatible with Bolt 3.x
A massive shout out toTom Beech and the Bolt team for working on testing puppet_litmus for Bolt 3.x support. It has now been released and is compatible with Bolt 3.x
Facter 4.1.1 Release from Nights Watch team
A big thank you to the Nights Watch team, specifically,Gheorghe Popescu andGabriel Nagy for the quick turn around on the fix and release offacter 4.1.1
which fixes the failures inpuppetlabs-haproxy andpuppetlabs-docker modules. Additional details are available in the following ticketsIAC-1582 andFACT-3024
Cloud CI Update
We have portedpuppetlabs-dsc_lite module successfully to run on cloud CI. Porting thepuppetlabs-dsc_lite module to cloud CI will allow us to continue the support and maintenance for it by running the tests at PR level and nightly level until the new improved DSC modules is available. We have also started the investigation for the porting ofpuppetlabs-sqlserver module. We have updated all our multi node modules to use the new default litmus inventory file location, wrt the latest changes in the litmusGH-380. From this week we started to work on preparing training and educational materials for cloud CI.
Resource API: Custom Insync
We’ve been doing some work over the last couple of weeks to make it possible toadd custom insync handling to Resource API resources. In short, this is to help with cases where the default property comparison logic in Puppet doesn’t work for a use case - when you want to compare case insensitive strings or only ensure thatsome members of a group exist (without having to specifyall members of that group) for example. We’re nearing completion of that work, which you can see in thisdraft PR. If this is something you think you might find useful or have some feedback on (either the implementation or the problem we’re seeking to solve),comment on the issue or drop us a line in the#puppet-dev
channel in the community slack!
DSC: Validation Mode Incoming
Related to the work we’re doing toenable support for custom insync in the Resource API, we plan toadd a new parameter to the Puppetized DSC modules (all the modules in thedsc-*
namespace on the forge). This new parameter,validation_mode
, will default toproperty
- the existing behavior you’re familiar with that relies on Puppet for property-by-property state validation and gives you coherent and useful change reporting. It willalso have a new mode,resource
, which can be used to fall back to the DSC Resource’s built-in state comparison, using theTest
method for that Resource. This should resolve numerous problems where DSC Resources don’t work as expected because of a mismatch in the Resource’s API spec and what is actually returned or where Puppet can’t actually do a meaningful state comparison (as in the case of subset group membership). This new functionality is blocked on the implementation of custom insync in the Resource API and its subsequent release with upcoming versions of Puppet, but we’re confident that this will provide a much-improved user experience for folks leveraging DSC Resources which are not currently as functional as we’d like. Speaking of DSC, we’re up to71
PowerShell modules with DSC Resources which have been puppetized andpublished to the forge!
Developer Experience
The team has reviewed the existing PDK validate tickets and identified which ones to address first.Ciaran wrote an excellent document on how PDK validate works as a result of his investigations.David is continuing his work into improving the PDK packaging process and release workflow, and has some promising results.James has closed the PDK survey and is collating the data for use in planning the next major version of the PDK.
Community memberGlenn Sarti contibuted PRhttps://github.com/puppetlabs/puppet-editor-services/pull/301 and is working on PRhttps://github.com/puppetlabs/puppet-editor-services/pull/302, which will be released in the next Puppet Extension release.
In case you missed it, last month we started publishing the Puppet Extension to the OpenVSX marketplace, which means you can get official releases inside VSCodium or with Gitpod.
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse