[ANN] Puppet Development Kit (pdk) 1.0

104 views
Skip to first unread message

Lindsey Smith

unread,
Aug 15, 2017, 4:51:52 PM8/15/17
to puppet...@googlegroups.com

After a few preview releases, we're happy to announce the availability of the Puppet Development Kit v1.0! The open-source PDK facilitates an easy, unified development workflow for Puppet modules, and should appeal both to newcomers and experienced developers.


Get the package for your platforms at the PDK download page, check out the docs and the code lives at puppetlabs/pdk


The Puppet Development Kit makes it easier than ever to develop and test Puppet modules by providing a simple, unified interface to a set of helpful tools for anyone who writes or consumes Puppet code. Leveraging the Puppet Development Kit, it’s now possible to:

  • Quickly get started developing modules using best practices and new tools that enable you to create, test and publish high-quality Puppet modules with confidence

  • Shift quality to the left by catching issues earlier and faster before Puppet code is applied to live infrastructure

  • Unit test modules from your Windows or Linux workstation to ensure that Puppet code is creating and managing configuration resources as intended

  • Develop and share even more high-quality content for managing Windows environments

Join us for a webinar on Tuesday 22 Aug 2017 to see how you can leverage the new Puppet Development Kit to save time and take advantage of the more than 5,000 modules of pre-written configuration code for managing an entire infrastructure - everything from NTP and DNS to Apache, IIS, WebSphere, Microsoft Azure, Splunk and Docker already available on the Puppet Forge.


Lindsey Smith
Puppet

Peter Faller

unread,
Aug 16, 2017, 8:06:23 AM8/16/17
to Puppet Users
Seems to be a hitch with the Windows install on Windows 8.1: I installed pdk-1.0.0.1-x64.msi; opened a new powershell window, and found that while pdk works, the PATH is wrong:


modules> $env:path
C:\Program Files\Puppet Labs\DevelopmentKit\\bin;%PATH%

Any tips on how to correct this?

On Tuesday, 15 August 2017 22:51:52 UTC+2, Lindsey Smith wrote:

<snip>

Peter Faller

unread,
Aug 16, 2017, 8:16:35 AM8/16/17
to Puppet Users
BTW: changing line 3 in C:\Program Files\WindowsPowerShell\Modules\PuppetDevelopmentKit\PuppetDevelopmentKit.psm1 to:

$env:PATH           = "$($env:DEVKIT_BASEDIR)\bin;"+$env:PATH

... fixes it.

On Wednesday, 16 August 2017 14:06:23 UTC+2, Peter Faller wrote:
...

David Schmitt

unread,
Aug 16, 2017, 8:41:57 AM8/16/17
to Puppet Users
On 16 August 2017 at 13:06, Peter Faller <pgfa...@gmail.com> wrote:
Seems to be a hitch with the Windows install on Windows 8.1: I installed pdk-1.0.0.1-x64.msi; opened a new powershell window, and found that while pdk works, the PATH is wrong:


modules> $env:path
C:\Program Files\Puppet Labs\DevelopmentKit\\bin;%PATH%

Any tips on how to correct this?

Thank you for reporting this. I'm tracking it now at https://tickets.puppetlabs.com/browse/PDK-425

As a short-term workaround, you can remove the $env:PATH assignment in C:\Program Files\WindowsPowerShell\Modules\PuppetDevelopmentKit\PuppetDevelopmentKit.psm1 , and re-open the PowerShell Windows.



Cheers, David

On Tuesday, 15 August 2017 22:51:52 UTC+2, Lindsey Smith wrote:

<snip>

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/0aeb7ba1-48c7-4668-b5d9-d861d9d33fb2%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

David Schmitt

unread,
Aug 18, 2017, 5:28:38 AM8/18/17
to Puppet Users
A hot fix for this has been released at https://pm.puppetlabs.com/cgi-bin/pdk_download.cgi?dist=win&arch=x64&ver=1.0.1.0 ; and will be available on the download page Really Soon Now.

On Wednesday, August 16, 2017 at 1:41:57 PM UTC+1, David Schmitt wrote:

Charlie Derwent

unread,
Aug 21, 2017, 9:22:54 AM8/21/17
to Puppet Users
Can I use the PDK to validate my Roles and Profiles? Keep getting complaints that I'm not in a valid module (missng metadata.json) 

David Schmitt

unread,
Aug 21, 2017, 9:57:20 AM8/21/17
to puppet...@googlegroups.com
Hi Charlie,

thanks for trying out the PDK!

On Mon, Aug 21, 2017 at 2:22 PM Charlie Derwent <shelltoe...@gmail.com> wrote:
Can I use the PDK to validate my Roles and Profiles?

The short answer is: Yes, you can.
 
Keep getting complaints that I'm not in a valid module (missng metadata.json) 

Personally, I'd recommend putting all puppet code deployed to your puppet installation into modules. This makes the code more mobile, and allows your roles and profiles to integrate fully into your code workflows, without any special casing.

With the PDK, you can start with `pdk new module` to create the necessary base structures, and then copy over your manifests to try it out.
 
I'd love to hear how it worked out for you!


Cheers, David

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/e974ef70-7572-45ed-9bc6-0bb01bc5e302%40googlegroups.com.

Pete Brown

unread,
Aug 25, 2017, 6:40:57 AM8/25/17
to puppet...@googlegroups.com
Does it have support for puppet 5 and can you use it to test code against multiple versions of puppet?
Could it also be used in the manner to test code under a CI/CD setup like Jenkins or Travis?

David Schmitt

unread,
Aug 25, 2017, 7:14:23 AM8/25/17
to puppet...@googlegroups.com
On Fri, Aug 25, 2017 at 11:40 AM Pete Brown <rendh...@gmail.com> wrote:
Does it have support for puppet 5 and can you use it to test code against multiple versions of puppet?

This kinda works with v1, using the old pattern of setting environment variables (see this snippet for details). Obviously this is not a nice workflow, so we're investigating the best way to expose these settings on the CLI. Follow along in PDK-414 if you're interested.
 
Could it also be used in the manner to test code under a CI/CD setup like Jenkins or Travis?

Travis is already pre-configured in the pdk-module-template (a copy of it is shipped with the PDK packages, and used by default), but see PDK-447 and PDK-448 for some caveats.

 Cheers, David

Reply all
Reply to author
Forward
0 new messages