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.
Files changed (4) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +4 -0
  3. data/lib/cce-rake-puppet.rb +57 -0
  4. 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,4 @@
1
+ # $LOAD_PATH.push("#{File.dirname(__FILE__)}/lib")
2
+ # require 'tropo-rake-chef'
3
+ require 'tropo-rake-gem'
4
+ TropoRakeGem::RakeTasks.new
@@ -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: []