puppet-masterless 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 1cf2e555538a043c0de2640d77dc9ffec74b8481
4
- data.tar.gz: 3662dab3a86430351bc876b7b4fccbdfb1b8f421
2
+ SHA256:
3
+ metadata.gz: 39398dee7f56a25f35d4c3c738c79ee5ae0ccc677d784be4255bdb1bc4aa783c
4
+ data.tar.gz: 1569328b4006d0a2bf458c7fb3d70327dae3bb1c3efe6f440777ae45444f3033
5
5
  SHA512:
6
- metadata.gz: d9c1574424201ae7803c2562790ff313aeb9407fec238b885f4eb0bea64e7fa4ade5c115a3ac143ad1ece60f33cb38a3f129d8b9cc85a1e4bcce13b21f24d88b
7
- data.tar.gz: 4d94c9822cd6c47c39d1c14dca1e081b6a8128cc07421e0a5cf4c470871de147ac8cfeac424119c347f210a958d4ab653556bbede42e0e7b609a1c6f8d1899ac
6
+ metadata.gz: 702448913db08532668dde202ce225f321372852dcb6d7bd23928946ba2f182a367294dc64894317313bf5d04aaab0aff562015b44d708912c52406c31e0595d
7
+ data.tar.gz: 3b9accb018d6b468a5ae11335719c042382eb3bc9d2e56bd1c0942a965766ab02a2a0a28a7f1ad383e71024b7bb69fe54e22038f6375ee8f0f6be710743ee4c4
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  This is a small tool designed to help you use Puppet *without* using a
4
4
  Puppet Master. It packages a Puppet project as a self-contained shell
5
- script and optionally executes it on a remote machine via SSH. You can
5
+ script and optionally applies it to a remote machine via SSH. You can
6
6
  think of it like a remote version of the `puppet-apply` command[^1].
7
7
 
8
8
  [^1]: In fact, running `puppet-apply` is exactly what it does in the end.
@@ -19,18 +19,22 @@ To install from [RubyGems.org][] just run:
19
19
 
20
20
  ### From Source
21
21
 
22
- The program is a single Ruby file. To install it from source, simply put
23
- it somewhere on your PATH and make sure it's executable:
22
+ You can use [Rake][] to build and install the program as a Gem:
24
23
 
25
- install -m 755 src/puppet-masterless /usr/local/bin/puppet-masterless
24
+ rake install:local
26
25
 
27
- You can also install its man page, if desired:
26
+ Alternatively, because the program is a single Ruby file, you can simply
27
+ put it somewhere on your PATH and make sure it's executable, along with
28
+ the man page.
28
29
 
30
+ install -m 755 src/puppet-masterless /usr/local/bin/puppet-masterless
29
31
  install -m 644 man/puppet-masterless.1 /usr/local/share/man/man1/puppet-masterless.1
30
32
 
31
- Alternatively, you can use [Rake][] to build and install the program as a Gem:
33
+ You can also bundle the man page with the executable and install just
34
+ that one file:
32
35
 
33
- rake install:local
36
+ rake build:prepare
37
+ install -m 755 bin/puppet-masterless /usr/local/bin/puppet-masterless
34
38
 
35
39
  [rake]: https://ruby.github.io/rake/
36
40
 
@@ -50,7 +54,7 @@ In both situations, `<confdir>` should be the base directory of your
50
54
  Puppet project. Refer to [Puppet's documentation][confdir] for details
51
55
  about how this directory should be organised.
52
56
 
53
- [confdir]: https://puppet.com/docs/puppet/4.10/dirs_confdir.html
57
+ [confdir]: https://puppet.com/docs/puppet/5.5/dirs_confdir.html
54
58
 
55
59
  ### Options
56
60
 
@@ -117,6 +117,10 @@ module PuppetMasterless
117
117
 
118
118
  @modulepath = nil unless File.directory?(@modulepath)
119
119
  @hiera_config = nil unless File.file?(@hiera_config)
120
+
121
+ absolute_paths = [@confdir, @manifest, @modulepath, @hiera_config, *@files].grep(/^\//)
122
+
123
+ fail 'File paths must be relative: ' << absolute_paths.first if absolute_paths.any?
120
124
  end
121
125
 
122
126
  def package
@@ -410,6 +414,9 @@ end
410
414
  #1 .Sh CAVEATS
411
415
  #1 .No For this program to be useful, Puppet must be installed on the remote host.
412
416
  #1 .Pp
417
+ #1 .No All file paths must be relative to the current working directory. An error
418
+ #1 .No is signaled whenever an absolute path is specified.
419
+ #1 .Pp
413
420
  #1 .No This program is only intended to work with Puppet 4.10 and 5.5. \&It
414
421
  #1 .No may work with other versions of Puppet, or it may not.
415
422
  #1 .Pp
@@ -172,6 +172,9 @@ puppet-masterless package confdir test \\
172
172
  .Sh CAVEATS
173
173
  .No For this program to be useful, Puppet must be installed on the remote host.
174
174
  .Pp
175
+ .No All file paths must be relative to the current working directory. An error
176
+ .No is signaled whenever an absolute path is specified.
177
+ .Pp
175
178
  .No This program is only intended to work with Puppet 4.10 and 5.5. \&It
176
179
  .No may work with other versions of Puppet, or it may not.
177
180
  .Pp
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-masterless
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Hanson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-27 00:00:00.000000000 Z
12
- dependencies: []
11
+ date: 2019-10-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '12.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '12.0'
13
27
  description: Packages and applies a Puppet project to a remote host.
14
28
  email: evanh@catalyst.net.nz
15
29
  executables:
@@ -41,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
41
55
  version: '0'
42
56
  requirements: []
43
57
  rubyforge_project:
44
- rubygems_version: 2.6.12
58
+ rubygems_version: 2.7.6
45
59
  signing_key:
46
60
  specification_version: 4
47
61
  summary: Apply a local Puppet project to a remote host