Date   
Re: pdk 0.3.0

David Hollinger
 
Edited

Awesome! Thanks for the work!

A few notes:

On puppet 5.0.0, I'm seeing a rubocop error:
pdk (FATAL): Failed to render template '.rubocop.yml.erb'
RuntimeError: no defaults for rubocop 0.47.1 available
Was also perusing the pdk-module-template repository and noticed 2 files that seem a very work environment-specific:

appveyor.yml.erb - generates an appveyor.yml file. Not all customers use this. In fact, just at work and within VP alone we have .gitlab-ci.yml and .travis.yml. I'm sure other orgs and customers use their own choice of tooling, like Jenkinsfile with Jenkins.

.project.erb - generates a geppetto .project file. I'll be honest - I didn't think this was a maintained IDE anymore, but that notwithstanding, this again comes down to work environment. We use RubyMine here (with VSCode and NeoVIm as backup editors). This is definitely a file we wouldn't need and may not want.

Is there a purpose behind having these in the PDK template or should there be a discussion to either remove all CI and IDE config files altogether or create logic/templates for the most commonly used tools?

Re: pdk 0.3.0

David Schmitt
 



On 30 June 2017 at 03:09, Bryan Jen <bryan.jen@...> wrote:
Greetings!

Happy to announce that PDK version 0.3.0 has been published to rubygems. This release includes some polish to the CLI in addition to some new features: metadata lint, puppet syntax validation, and unit test. The follow commands are accessible:
  • pdk --version
  • pdk new module
  • pdk new class
  • pdk validate metadata
  • pdk validate puppet
  • pdk validate ruby
  • pdk test unit
See the CHANGELOG for more details.

The pdk-module-template has also been updated to support those features.

If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0B70u2swGDDInMDdPcDJsUFFhSkk (Windows MSI will arrive shortly).

After some WiX wrangling, the MSI is now also up there.
 

As always, we'd love to hear your feedback on this release and are accessible via pdk-maintainers@...

Thanks!

Bryan Jen
Senior Software Engineer

Save the date:
PuppetConf 2017, 10-12 October
San Francisco, California

Re: pdk 0.2.0

David Schmitt
 



On 30 June 2017 at 09:03, Thomas Mueller <thomas@...> wrote:

Hi David


The pdk-module-template has also been updated to support those features.


Is there a way to set a custom url globally (/etc/pupppetlabs/puppet/pdk.conf ?) and by user (~/.pdk.conf ?) for the module-template url?

There is currently no configuration at all for the PDK. Given our current (organizational) constraints our primary focus is on single module development, and Windows support, both big gaps in our current offering.

Once we get this set of features wrapped up, having a place to store per-user config (e.g. also for personalized defaults in the `new module` interview`) is high on my priority list.

And additionally maybe in the puppet modules metadata.json ? So it would use this if sometime i'd like to "rebase"/update from the module-template? 

Great minds think a like :-D  We already store the template-url and SHA of where the template was created from in the metadata.json. In the future this might also be useful to determine feature usage throughout the forge modules, and support upgrading from one template version to the next. With the experience from modulesync, I expect the latter to be easy - at least for the base template.




If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0Bz0tCHSb1u41alR4MmZfRHBTV1k Please note that you need to upgrade the pdk gem in those packages!


As always, I'd love to hear your feedback on this, either here, or in private.


i've got a few questions about the pdk package:

* It includes its own ruby. Will it possibly include multiple ruby versions to test against?

With the Puppet 5 release, which includes a new ruby version, this is high on our list. For now the focus is still on getting the workflow and tooling just right. After that, more rubies, and a top-level selector to choose a (set of) puppet version to validate.

It is our intention to support testing against/working with at least all supported puppet versions from a single PDK install.
 
* for the ease of use with systems in air-gapped situations it might be cool to have further gems included (rubocop, rspec-puppet, puppet-lint, ...)

We haven't yet finalized the selection of bits we want to ship at GA. Given our collective experience of pain around the ruby ecosystem changing beneath our feet, we're planning to have a completely locked base-set of gems built into the PDK installers, and tight pins through the puppet-module-gems. We still need to try that out for size, before we can commit to that, including some tooling around making those pins (and intentional updates) maintainable.


Cheers, David


pdk 0.3.0

Bryan Jen <bryan.jen@...>
 

Greetings!

Happy to announce that PDK version 0.3.0 has been published to rubygems. This release includes some polish to the CLI in addition to some new features: metadata lint, puppet syntax validation, and unit test. The follow commands are accessible:
  • pdk --version
  • pdk new module
  • pdk new class
  • pdk validate metadata
  • pdk validate puppet
  • pdk validate ruby
  • pdk test unit
See the CHANGELOG for more details.

The pdk-module-template has also been updated to support those features.

If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0B70u2swGDDInMDdPcDJsUFFhSkk (Windows MSI will arrive shortly).

As always, we'd love to hear your feedback on this release and are accessible via pdk-maintainers@...

Thanks!

Bryan Jen
Senior Software Engineer

Save the date:
PuppetConf 2017, 10-12 October
San Francisco, California

Re: pdk 0.2.0

Thomas Mueller <thomas@...>
 



Am 30.06.2017 um 10:03 schrieb Thomas Mueller:

Hi David


The pdk-module-template has also been updated to support those features.


Is there a way to set a custom url globally (/etc/pupppetlabs/puppet/pdk.conf ?) and by user (~/.pdk.conf ?) for the module-template url?
And additionally maybe in the puppet modules metadata.json ? So it would use this if sometime i'd like to "rebase"/update from the module-template?

- Thomas

Re: pdk 0.2.0

Thomas Mueller <thomas@...>
 

Hi David


The pdk-module-template has also been updated to support those features.


Is there a way to set a custom url globally (/etc/pupppetlabs/puppet/pdk.conf ?) and by user (~/.pdk.conf ?) for the module-template url?



If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0Bz0tCHSb1u41alR4MmZfRHBTV1k Please note that you need to upgrade the pdk gem in those packages!


As always, I'd love to hear your feedback on this, either here, or in private.


i've got a few questions about the pdk package:

* It includes its own ruby. Will it possibly include multiple ruby versions to test against?
* for the ease of use with systems in air-gapped situations it might be cool to have further gems included (rubocop, rspec-puppet, puppet-lint, ...)

- Thomas

Re: Prometheus module

David Hollinger
 

Davide,

The https://github.com/voxpupuli/puppet-prometheus is the parent. Bastelfreak is working with Github to get the Fork relationship switched so that voxpupuli/puppet-prometheus is the parent.

Prometheus module

Davide Ferrari
 

Hello, can anyone shed some light on which is the main module for Prometheus? it seems that it should be https://github.com/voxpupuli/puppet-prometheus, but the parent https://github.com/bastelfreak/puppet-prometheus2 has more recent commits
I have a change for which I'd like to open a PR but I don't know where. My change is based on voxpupuli HEAD, if I have to open it against bastelfreak/puppet-prometheus2 I should rebase it a lot before.

Is anyone actively maintaining this module BTW?

Re: pdk 0.2.0

David Schmitt
 

The packages on Google Drive have been updated to the latest builds, that have the 0.2.0 pdk gem built in.

On 21 June 2017 at 16:02, David Schmitt <david.schmitt@...> wrote:
Hi folks,

We fixed the system binary fallback, and added a few more commands, so we wanted to refresh what's available on rubygems. This is still a development snapshot with a couple of rough edges, but these commands do work:

  • pdk new module
  • pdk new class
  • pdk validate puppet
  • pdk validate ruby

See the CHANGELOG for details.

The pdk-module-template has also been updated to support those features.

If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0Bz0tCHSb1u41alR4MmZfRHBTV1k Please note that you need to upgrade the pdk gem in those packages!


As always, I'd love to hear your feedback on this, either here, or in private.

Cheers, David


pdk 0.2.0

David Schmitt
 

Hi folks,

We fixed the system binary fallback, and added a few more commands, so we wanted to refresh what's available on rubygems. This is still a development snapshot with a couple of rough edges, but these commands do work:

  • pdk new module
  • pdk new class
  • pdk validate puppet
  • pdk validate ruby

See the CHANGELOG for details.

The pdk-module-template has also been updated to support those features.

If you need a ruby for your platform to run this, we also have a preview of the native packages we will be providing: https://drive.google.com/open?id=0Bz0tCHSb1u41alR4MmZfRHBTV1k Please note that you need to upgrade the pdk gem in those packages!


As always, I'd love to hear your feedback on this, either here, or in private.

Cheers, David

Re: Puppet SDK (pre-)announcement

David Schmitt
 

And I finally uploaded the current master to rubygems. Initially I expected folks around here to just run it from a clone, obviously I've been wrong.

Next step: automate the rubygems upload :-D

Cheers, David

On 1 June 2017 at 23:59, Bryan Jen <bryan.jen@...> wrote:
Hi folks,

One missing step from David's original email. If you are running pdk via the cloned git repo, you also will need to set an additional environment variable: PDK_USE_SYSTEM_BINARIES=true and ensure you have the appropriate binaries, like git, installed and in your path.

Thanks,
Bryan

On Thu, Jun 1, 2017 at 10:34 AM, David Schmitt <david.schmitt@...> wrote:
Hi folks,

in the spirit of release early, release often, we've just opened up the repositories for the pdk to the public: https://github.com/puppetlabs/pdk

The README there details some of what is planned for the next weeks, the implementation currently only has the "new module" command implemented. "new class" is currently in progress. The other commands will follow as the project progresses.

The second part of this are the templates at https://github.com/puppetlabs/pdk-module-template. Again, they are in a very early stage of development, but the long-term goal is to act as a one-stop-shop for all module related templating needs. Specifically, as a first step, replace our own modulesync_configs, and - if at all possible - the voxpupuli's one too. The format of the templates is intentionally based on modulesync, and should be bi-directionally usable for the time being.


Since we're just ramping up all the infrastructure around this project, the only sensible way to run the pdk currently is through bundler with a reference to the cloned Gemfile:

BUNDLE_GEMFILE=~/git/pdk/Gemfile bundle exec pdk help





I'd love to hear all your feedback, either here, or in private!


Cheers, David






--
Bryan Jen
Senior Software Engineer

Save the date:
PuppetConf 2017, 10-12 October
San Francisco, California

Re: Puppet SDK (pre-)announcement

David Schmitt
 



On 2 Jun 2017 22:45, "Rob Nelson" <rnelson0@...> wrote:
David,

Thanks for the preview! I've only had time to review it on the surface, but one question about rubocop. I know the SDK will be opinionated, but do you envision the ability to use the SDK without rubocop? While VP uses it heavily, I don't use it in my modules and we don't use it at work because the pre-1.0.0 nature of it leads to a lot of breakage at the absolute worst times. VP *does* pin it to reduce those impacts, at least, whereas the SDK right now is not pinned or bound at all.

The goal is to provide a coherent, tested set of tools, based on top of the templates. That of course includes a matching rubocop config and version. There are also provisions to run tools one-by-one. 

Please don't call it opinionated. With Bryan Jen, James Stocks, Jean Bond, Jesse Scott, Tim Sharpe, and myself, we've got a bunch of people working on improving the story across the board. For the pdk the goal is to capture the essence of module development workflow to provide the best experience possible, both to newcomers and experts.

Cheers, David 


Rob Nelson
rnelson0@...


Re: Group register: Vox Pupuli

 

Hi everybody,

Vox Pupuli is now a registered freenode group. This means that we can
handle out cloaks to everybody who wants one. The current group contacts
are our PMC members:

Hunner
dhoppe
nibalizer
fraq
bastelfreak

If anybody of you is interested in getting a cloak, just get in touch
with us. We can forward your request to the freenode staff people.

Cheers, Tim


-------- Forwarded Message --------
Subject: Re: Group register: Vox Pupuli
Date: Sat, 03 Jun 2017 18:23:53 +0200
From: fuchs@... <fuchs@...>
Reply-To: fuchs@...
Organization: freenode
To: Tim <@bastelfreak>
CC: projects@...

Hi Tim,
thanks for your interest in registering as a project on freenode and the
verification we did on IRC / GitHub.
You are now registered as a freenode group, voxpupuli. This means:
1) The group contacts can now, on IRC, request cloaks from any member of
staff (check /stats p or in #freenode for active staffers). Recipients
need a valid nickserv account
Cloaks have the format voxpupuli/optional/mandatory while most
projects do role/name, e.g. voxpupuli/pmc/bastelfreak (name does
not have to match your freenode name) Cloaks have a lenght limit
(unlikely to be hit) and only valid DNS characters are allowed, e.g. no
underscores. Users usually can only have one cloak at a time, so any
existing cloak would be overwritten (we ask for confirmation on these,
except when the current one is unaffiliated)

2) the group contacts can now, on IRC, request channels in the
#voxpupuli-* namespace if needed (apparently you already have all you
need, that would just be if e.g. someone unrelated grabs
#voxpupuli-puppies and you'd like to reclaim that)
Changes to GCs need to be done via e-mail, to groups@... (by an
existing GC)
If you have any remaining questions, feel free to poke any member of staff.
Kind regards,
Christian (Fuchs on freenode)

Re: Puppet SDK (pre-)announcement

Rob Nelson
 

David,

Thanks for the preview! I've only had time to review it on the surface, but one question about rubocop. I know the SDK will be opinionated, but do you envision the ability to use the SDK without rubocop? While VP uses it heavily, I don't use it in my modules and we don't use it at work because the pre-1.0.0 nature of it leads to a lot of breakage at the absolute worst times. VP *does* pin it to reduce those impacts, at least, whereas the SDK right now is not pinned or bound at all.

Rob Nelson
rnelson0@...

Re: Puppet SDK (pre-)announcement

David Schmitt
 



On 2 June 2017 at 16:22, David Hollinger <david.hollinger@...> wrote:
Awesome! This looks incredibly useful.

Thank you!
 

Couple questions:
  • Will this replace using 'puppet module generate' to create a new module?
I would wish so, see https://tickets.puppetlabs.com/browse/PUP-7398 ; I can't tell if and when that'll happen. Not before a release and soak time on the SDK side, for sure.
 
  • Will this use the Puppet Module Skeleton that 'puppet module generate' uses today or is it designed specifically to be used only with modulesync?
By default, the SDK's templates will reside in https://github.com/puppetlabs/pdk-module-template. This is overridable on a case-by-case basis, allowing you to provide your own templates. If you have PMG templates at the moment, you'll need to translate them, but I expect that to be relatively easy, as both use ERB. Should a significant number of folks pipe up with PMG compatible custom templates, we could consider implementing additional render support for those too.

More generally, if you have custom templates, we are also very interested in what you need there, so we can improve the SDK's templates so that this need goes away.


Cheers, David

Re: Puppet SDK (pre-)announcement

David Hollinger
 

Awesome! This looks incredibly useful.

Couple questions:
  • Will this replace using 'puppet module generate' to create a new module?
  • Will this use the Puppet Module Skeleton that 'puppet module generate' uses today or is it designed specifically to be used only with modulesync?

Re: Puppet SDK (pre-)announcement

Thomas Mueller <thomas@...>
 

Am 01.06.2017 um 19:34 schrieb David Schmitt:
Hi folks,

in the spirit of release early, release often, we've just opened up
the repositories for the pdk to the public:
https://github.com/puppetlabs/pdk
Nice! This is something I think could work out to be very useful.

- Thomas

Re: Puppet SDK (pre-)announcement

Bryan Jen <bryan.jen@...>
 

Hi folks,

One missing step from David's original email. If you are running pdk via the cloned git repo, you also will need to set an additional environment variable: PDK_USE_SYSTEM_BINARIES=true and ensure you have the appropriate binaries, like git, installed and in your path.

Thanks,
Bryan

On Thu, Jun 1, 2017 at 10:34 AM, David Schmitt <david.schmitt@...> wrote:
Hi folks,

in the spirit of release early, release often, we've just opened up the repositories for the pdk to the public: https://github.com/puppetlabs/pdk

The README there details some of what is planned for the next weeks, the implementation currently only has the "new module" command implemented. "new class" is currently in progress. The other commands will follow as the project progresses.

The second part of this are the templates at https://github.com/puppetlabs/pdk-module-template. Again, they are in a very early stage of development, but the long-term goal is to act as a one-stop-shop for all module related templating needs. Specifically, as a first step, replace our own modulesync_configs, and - if at all possible - the voxpupuli's one too. The format of the templates is intentionally based on modulesync, and should be bi-directionally usable for the time being.


Since we're just ramping up all the infrastructure around this project, the only sensible way to run the pdk currently is through bundler with a reference to the cloned Gemfile:

BUNDLE_GEMFILE=~/git/pdk/Gemfile bundle exec pdk help





I'd love to hear all your feedback, either here, or in private!


Cheers, David






--
Bryan Jen
Senior Software Engineer

Save the date:
PuppetConf 2017, 10-12 October
San Francisco, California

Puppet SDK (pre-)announcement

David Schmitt
 

Hi folks,

in the spirit of release early, release often, we've just opened up the repositories for the pdk to the public: https://github.com/puppetlabs/pdk

The README there details some of what is planned for the next weeks, the implementation currently only has the "new module" command implemented. "new class" is currently in progress. The other commands will follow as the project progresses.

The second part of this are the templates at https://github.com/puppetlabs/pdk-module-template. Again, they are in a very early stage of development, but the long-term goal is to act as a one-stop-shop for all module related templating needs. Specifically, as a first step, replace our own modulesync_configs, and - if at all possible - the voxpupuli's one too. The format of the templates is intentionally based on modulesync, and should be bi-directionally usable for the time being.


Since we're just ramping up all the infrastructure around this project, the only sensible way to run the pdk currently is through bundler with a reference to the cloned Gemfile:

BUNDLE_GEMFILE=~/git/pdk/Gemfile bundle exec pdk help





I'd love to hear all your feedback, either here, or in private!


Cheers, David



Re: Changes to the Vox Pupuli Github Org Management

Julien Pivotto
 

On 26 May 14:21, Igor Galić wrote:
i noticed today that terraform also supports mailgun:
https://www.terraform.io/docs/providers/mailgun/index.html
unfortunately, their provider only supports managing the domain itself,
and we would also need to manage the coc@ & security@ list.

judging from
https://github.com/hashicorp/terraform/blob/master/builtin/providers/mailgun/resource_mailgun_domain.go
it doesn't look too hard to implement tho… so we could probably
contribute that.

​​​​​​--
Igor Galić
Yes Terraform is evolving into an API calling tool :)

--
(o- Julien Pivotto
//\ Open-Source Consultant
V_/_ Inuits - https://www.inuits.eu