cce-rake-puppet 0.0.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 +7 -0
- data/Rakefile +4 -0
- data/lib/cce-rake-puppet.rb +57 -0
- metadata +44 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 803f566d03a019743c671ef7b81620a74c0ca530
|
4
|
+
data.tar.gz: 35a7d73d720291c73c913fafeeb69be687ffa691
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 11a3aad0382861ab5a86b81856ff514b07055d72bf1566629a58796165ff1954fe1db3c370a30ed24a3ca4505737f4146022f597b40e4d0f7b2ce6475438bdcf
|
7
|
+
data.tar.gz: 45790e7c139d0dbff360ecd10524f88777d1f7ab08ec65ea0378b31e625ced58d0d4e3252338ad3beffaa25bfc3e9f0bad578051ca7a261aae7fd9a3d12640d5
|
data/Rakefile
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'rake/tasklib'
|
2
|
+
|
3
|
+
module CceRakePuppet
|
4
|
+
class RakeTasks < ::Rake::TaskLib
|
5
|
+
|
6
|
+
def initialize(_cfg = {})
|
7
|
+
task 'ci_build' do
|
8
|
+
Rake::Task['rubocop'].invoke
|
9
|
+
Rake::Task['chef:foodcritic'].invoke
|
10
|
+
Rake::Task['checkversion'].invoke
|
11
|
+
Rake::Task['kitchen:all'].invoke
|
12
|
+
end
|
13
|
+
task 'validate' do
|
14
|
+
res = `pdk validate`
|
15
|
+
abort "#{res}" unless $?.exitstatus === 0
|
16
|
+
end
|
17
|
+
|
18
|
+
task 'unit' do
|
19
|
+
res = 'pdk test unit'
|
20
|
+
abort "#{res}" unless $?.exitstatus === 0
|
21
|
+
end
|
22
|
+
task 'ci_publish' do
|
23
|
+
Rake::Task['chefserver'].invoke
|
24
|
+
end
|
25
|
+
task 'checkversion' do
|
26
|
+
puts 'Running checkversion...'
|
27
|
+
|
28
|
+
# Get the remote versions
|
29
|
+
|
30
|
+
remote = `"#{knife}" cookbook show #{metadata.name} 2>&1`
|
31
|
+
raise "Failed getting remote versions: #{remote}" \
|
32
|
+
if remote.include? 'ERROR: '
|
33
|
+
if remote.include? metadata.version.to_s
|
34
|
+
raise "Version #{metadata.version} already exists in #{remote}"
|
35
|
+
end
|
36
|
+
end
|
37
|
+
task 'chefserver' do
|
38
|
+
puts 'Running chefserver...'
|
39
|
+
|
40
|
+
raise 'chefserver task only runs on drone server' unless ENV['CI_SYSTEM'] == 'drone'
|
41
|
+
# check the version one last time
|
42
|
+
Rake::Task['checkversion'].invoke
|
43
|
+
|
44
|
+
# Get the branch for this commiot
|
45
|
+
branch = `git log -n 1 --pretty=%d HEAD`
|
46
|
+
# if branch.include? 'HEAD, origin/master'
|
47
|
+
if branch.include? 'origin/master'
|
48
|
+
# Upload it if it was master
|
49
|
+
upload = `"#{knife}" cookbook upload #{metadata.name} --freeze 2>&1`
|
50
|
+
raise "Failed uploading cookbook: #{upload}" if upload.include? 'ERROR: '
|
51
|
+
else
|
52
|
+
puts "chefserver only uploads master but the branch is:#{branch}"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
metadata
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: cce-rake-puppet
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Robert Labrie
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2017-10-25 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: CCE puppet raketasks gemified
|
14
|
+
email: rolabrie@cisco.com
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- Rakefile
|
20
|
+
- lib/cce-rake-puppet.rb
|
21
|
+
homepage:
|
22
|
+
licenses: []
|
23
|
+
metadata: {}
|
24
|
+
post_install_message:
|
25
|
+
rdoc_options: []
|
26
|
+
require_paths:
|
27
|
+
- lib
|
28
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
34
|
+
requirements:
|
35
|
+
- - ">="
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
requirements: []
|
39
|
+
rubyforge_project:
|
40
|
+
rubygems_version: 2.5.1
|
41
|
+
signing_key:
|
42
|
+
specification_version: 3
|
43
|
+
summary: Rake the lawn!
|
44
|
+
test_files: []
|