Use PDK to build puppet module

The puppet module command is deprecated and
is replaced by using the PDK [1] [2].

The difference between the two commands is only
the output in the pkg directory.

The old puppet module command will create a folder and a tarball with the module.

$ls pkg/
openstack-openstacklib-14.1.0/
openstack-openstacklib-14.1.0.tar.gz

While the PDK will only create the tarball in the
pkg folder. This should be no problem since I can't
find anywhere were we are using the generated folder
in the pkg folder.

This is part 2 in the series, it makes the actual change.

Depends-On: https://review.opendev.org/667589
Depends-On: https://review.opendev.org/667595
Needed-By: https://review.opendev.org/627554
Needed-By: https://review.opendev.org/627566
Change-Id: Id40ff665e92606455ef6b544f11394db2201c8b9
This commit is contained in:
Tobias Urdin 2019-06-26 14:01:24 +02:00 committed by Andreas Jaeger
parent 0efea94054
commit ea3f5be9c2
2 changed files with 19 additions and 3 deletions

View File

@ -1,5 +1,11 @@
An ansible role to build a Puppet module. This role assumes that Puppet is
already installed on the target system (either manually or using bindep).
An Ansible role to build a Puppet module using the Puppet
Development Kit (PDK).
.. note::
This role requires installed Ruby, Ruby development and build tools
(gcc/g++ and make) packages, they can be installed using the
:zuul:role:`install-pdk-dependencies` role.
**Role Variables**

View File

@ -1,4 +1,14 @@
- name: Find out ruby gem user directory
command: ruby -e 'puts Gem.user_dir'
register: gem_user_dir
- name: Install pdk gem
gem:
name: pdk
- name: Build puppet module
command: puppet module build .
command: pdk build --force
args:
chdir: "{{ puppet_module_chdir }}"
environment:
PATH: "{{ gem_user_dir.stdout }}/bin:{{ ansible_env.PATH }}"