ra10ke 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +25 -0
- data/CHANGELOG.md +12 -0
- data/README.md +4 -0
- data/Rakefile +10 -0
- data/lib/ra10ke.rb +45 -1
- data/lib/ra10ke/solve.rb +1 -0
- data/lib/ra10ke/version.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5ad7a9bc9ed535980433aee2a10afc3fe6b0060b9b85764fc692e1086bfabf46
|
4
|
+
data.tar.gz: b1c37034b07281ffe040748f34339acfd4cb0f82a014c4512463e077c645778b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 041f1c23f5cb71e8adbd419c9fd8a1b3662c536d5d5cbf7e2410db2c8d9f3c9e47673f257e29bb3a3ab900700f4bb219261e1d38d2b101983a828f33f1c2b5c6
|
7
|
+
data.tar.gz: 9fc86d2fe74f4c866cf1a4de68fb0dae662a952a4d9f5402ae983a966e607bad1bbec5f4943bdc5b29ba039d9bf5e9e5867711de5bc89e7c40b20c2056b018e1
|
data/.travis.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
---
|
2
|
+
dist: xenial
|
3
|
+
sudo: false
|
4
|
+
language: ruby
|
5
|
+
rvm:
|
6
|
+
- '2.3'
|
7
|
+
- '2.4'
|
8
|
+
- '2.5'
|
9
|
+
deploy:
|
10
|
+
provider: rubygems
|
11
|
+
api_key:
|
12
|
+
secure: "Vnvr7VC8HI3ccJhvDXv7cFqMtMjaOFzUKpM7tte0o2jDybt7XiOlOqGt6qrZ/dDtla7zYa1tgdNzDCbzWxYaZnRLW2v10wiwFrbDHCZTYPq82w4FtdIv04qymG5CnxsW7MyrZ/jUTzbwpEJyUTMuHE8u00aTewZ8Xdm43MuAVOerQneZQ22uzK3S0p6hW4iXkO7GnBln/BPxMaAzheB6NXpprBJEGL86Hb5M4N7qrxcv4SKepTnvap/DM3M95m9QyxJ0TJ2+CivltPclDByH/WgsFwehd6wYcS+9HBLM6Acg8vM167Dii88v8yBzYwF2lIL8I4LoVX1yaBlwey/VpnYSfkrmknDQ9jkBRYVDPp+6ur4h2atfww96TBObLW9HmbE0xLneCiXeZjuG+ty34HixJgeEFh2w9wtBvEdxjudvkx/IkUtAwyoTLdVSRsyDRI6Vh8z53G3abiLQCgSUqgQlkH6dISSxIODhxhklLlOE7MXn5p1uaotFdpa9o2OA79FEdAQNc42MCPglid/Xtp0CN0FlPyt2t9I1iwF7UpgsUIcydVwm9PaHNMQo5PgnfWyvIY/JPrlVt57bEcu8nBqWr4QTmNAuBTSeXGoGYV+gJfNscT5yw5BjVS07D85z9X3zniHUuMDH3vu1Pz4SBzz55R31qWfE0Ikcd4Jxo+A="
|
13
|
+
gem: ra10ke
|
14
|
+
on:
|
15
|
+
tags: true
|
16
|
+
repo: voxpupuli/ra10ke
|
17
|
+
rvm: '2.5'
|
18
|
+
|
19
|
+
notifications:
|
20
|
+
email: false
|
21
|
+
irc:
|
22
|
+
on_success: always
|
23
|
+
on_failure: always
|
24
|
+
channels:
|
25
|
+
- "chat.freenode.org#voxpupuli-notifications"
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
CHANGELOG
|
2
2
|
=========
|
3
3
|
|
4
|
+
0.5.0
|
5
|
+
-----
|
6
|
+
|
7
|
+
2018-12-26
|
8
|
+
|
9
|
+
Closed Pull Requests:
|
10
|
+
|
11
|
+
* [#22](https://github.com/voxpupuli/ra10ke/pull/22) Add rudimentary r10k:install task
|
12
|
+
* [#26](https://github.com/voxpupuli/ra10ke/pull/26) make use of the forge command in puppetfile
|
13
|
+
* [#29](https://github.com/voxpupuli/ra10ke/pull/29) Abort (exit 1) if Puppetfile syntax check fails
|
14
|
+
* [#30](https://github.com/voxpupuli/ra10ke/pull/30) enable travis deployment
|
15
|
+
|
4
16
|
0.4.0
|
5
17
|
-----
|
6
18
|
|
data/README.md
CHANGED
@@ -52,6 +52,10 @@ The rake task will download git modules into the modules/ directory to access th
|
|
52
52
|
It will also cache forge metadata in ̃$XDG_CACHE_DIR/ra10ke.metadata_cache in order to make subsequent
|
53
53
|
runs faster.
|
54
54
|
|
55
|
+
### r10k:install[path]
|
56
|
+
|
57
|
+
Reads the Puppetfile in the current directory and installs them under the `path` provided as an argument.
|
58
|
+
|
55
59
|
#### Limitations
|
56
60
|
|
57
61
|
* It works only with modules from the [Forge](https://forge.puppetlabs.com), and Git.
|
data/Rakefile
ADDED
data/lib/ra10ke.rb
CHANGED
@@ -17,6 +17,7 @@ module Ra10ke
|
|
17
17
|
PuppetForge.user_agent = "ra10ke/#{Ra10ke::VERSION}"
|
18
18
|
puppetfile = R10K::Puppetfile.new(Dir.pwd)
|
19
19
|
puppetfile.load!
|
20
|
+
PuppetForge.host = puppetfile.forge if puppetfile.forge =~ /^http/
|
20
21
|
|
21
22
|
# ignore file allows for "don't tell me about this"
|
22
23
|
ignore_modules = []
|
@@ -84,8 +85,51 @@ module Ra10ke
|
|
84
85
|
:moduledir => nil,
|
85
86
|
:puppetfile => nil
|
86
87
|
}, '')
|
87
|
-
|
88
|
+
|
89
|
+
unless puppetfile.call
|
90
|
+
abort("Puppetfile syntax check failed")
|
91
|
+
end
|
88
92
|
end
|
93
|
+
|
94
|
+
desc "Install modules specified in Puppetfile"
|
95
|
+
task :install, [:path] do |_, args|
|
96
|
+
require 'r10k/puppetfile'
|
97
|
+
require 'pathname'
|
98
|
+
|
99
|
+
if !args.has_key?(:path)
|
100
|
+
raise "task requires 'path' argument"
|
101
|
+
end
|
102
|
+
modpath = Pathname.new args[:path]
|
103
|
+
|
104
|
+
if !modpath.absolute?
|
105
|
+
modpath = Pathname.new(Dir.pwd) + modpath
|
106
|
+
end
|
107
|
+
|
108
|
+
puppetfile_dir = Pathname.new Dir.pwd
|
109
|
+
modules_dir = File.join(puppetfile_dir, modpath.relative_path_from(puppetfile_dir))
|
110
|
+
puppetfile = R10K::Puppetfile.new(puppetfile_dir, modules_dir)
|
111
|
+
puppetfile.load!
|
112
|
+
|
113
|
+
puts "Processing Puppetfile for fixtures"
|
114
|
+
puppetfile.modules.each do |mod|
|
115
|
+
if mod.status == :insync
|
116
|
+
puts "Skipping #{mod.name} (#{mod.version}) already in sync"
|
117
|
+
else
|
118
|
+
if mod.status == :absent
|
119
|
+
msg = "installed #{mod.name}"
|
120
|
+
else
|
121
|
+
msg = "updated #{mod.name} from #{mod.version} to"
|
122
|
+
end
|
123
|
+
mod.sync
|
124
|
+
if mod.status != :insync
|
125
|
+
puts "Failed to sync #{mod.name}".red
|
126
|
+
else
|
127
|
+
puts "Successfully #{msg} #{mod.version}".green
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
89
133
|
end
|
90
134
|
end
|
91
135
|
end
|
data/lib/ra10ke/solve.rb
CHANGED
@@ -28,6 +28,7 @@ module Ra10ke::Solve
|
|
28
28
|
PuppetForge.user_agent = "ra10ke/#{Ra10ke::VERSION}"
|
29
29
|
puppetfile = R10K::Puppetfile.new(Dir.pwd)
|
30
30
|
puppetfile.load!
|
31
|
+
PuppetForge.host = puppetfile.forge if puppetfile.forge =~ /^http/
|
31
32
|
|
32
33
|
# ignore file allows for "don't tell me about this"
|
33
34
|
ignore_modules = []
|
data/lib/ra10ke/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ra10ke
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Theo Chatzimichos
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-12-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -102,10 +102,12 @@ extensions: []
|
|
102
102
|
extra_rdoc_files: []
|
103
103
|
files:
|
104
104
|
- ".gitignore"
|
105
|
+
- ".travis.yml"
|
105
106
|
- CHANGELOG.md
|
106
107
|
- Gemfile
|
107
108
|
- LICENSE.txt
|
108
109
|
- README.md
|
110
|
+
- Rakefile
|
109
111
|
- lib/ra10ke.rb
|
110
112
|
- lib/ra10ke/solve.rb
|
111
113
|
- lib/ra10ke/version.rb
|
@@ -130,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
132
|
version: '0'
|
131
133
|
requirements: []
|
132
134
|
rubyforge_project:
|
133
|
-
rubygems_version: 2.7.
|
135
|
+
rubygems_version: 2.7.7
|
134
136
|
signing_key:
|
135
137
|
specification_version: 4
|
136
138
|
summary: Syntax check for the Puppetfile, check for outdated installed puppet modules
|