cloudspin-stack-artefact 0.1.2 → 0.1.3

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
- SHA256:
3
- metadata.gz: 41d00f91b5c0d23dd7a947b9c7985a4b78ab105338e10d4a07bb26f358518bcc
4
- data.tar.gz: ddfb0ec1e0760fc5c4fd2349f09d6b5e249252d323dff79038fa6cefc854e7b6
2
+ SHA1:
3
+ metadata.gz: 0c4f9e942673f52f01c89912bd3486816f5d9715
4
+ data.tar.gz: be8029274463f48b7094ea1d418c5d5d5595029f
5
5
  SHA512:
6
- metadata.gz: a9dcfe3d98d039d33fbc2977db4801d3c8736cd1cf1bdc71d9cfbc4c43ea4e1bf796ca854d2b4ed08f26017530d2977c3209653fdc8064754dd0bd7544a1921b
7
- data.tar.gz: b58165951fd182789c5e2c312f7dc65cee87b223518ced92ded129bbe9105814e75809fabf923b88288f792abc6daa04a3beee57846060a8ceb9b24a9ec2f336
6
+ metadata.gz: b90c97a527bb8374018167388e298502a113bbee411adaf31fde3409a090f308ed5687983b28db5552f577ac67ae14688e8fa23a769968d7d4b5734ca86115fd
7
+ data.tar.gz: 14f9e715e25e80272576bdf65c234985581297ae8aa2d65ea2ab27e7bc9991244461862a14b84bf3ae560ac8bc2114dc78bbe6d8600b8371ae85c2e303a54c3c
@@ -25,8 +25,8 @@ Gem::Specification.new do |spec|
25
25
 
26
26
  spec.add_dependency 'cloudspin-stack'
27
27
  spec.add_dependency 'thor'
28
+ spec.add_development_dependency 'rake'
28
29
 
29
- spec.add_development_dependency 'bundler', '~> 1.16'
30
- spec.add_development_dependency 'rake', '~> 10.0'
31
- spec.add_development_dependency 'rspec', '~> 3.0'
30
+ spec.add_development_dependency 'bundler'
31
+ spec.add_development_dependency 'rspec'
32
32
  end
@@ -17,6 +17,7 @@ module Cloudspin
17
17
  attr_reader :stack_definition_version
18
18
  attr_reader :dist_folder
19
19
  attr_reader :folders_to_package
20
+ attr_reader :files_to_package
20
21
 
21
22
  def initialize(stack_definition:,
22
23
  dist_folder:)
@@ -27,6 +28,7 @@ module Cloudspin
27
28
  @folders_to_package = {
28
29
  stack_definition.terraform_source_path => 'src'
29
30
  }
31
+ @files_to_package = []
30
32
  end
31
33
 
32
34
  def build
@@ -37,12 +39,21 @@ module Cloudspin
37
39
  mkpath File.dirname(artefact_contents_folder + '/' + destination)
38
40
  cp_r(source, artefact_contents_folder + '/' + destination)
39
41
  }
42
+ files_to_package.each { |file|
43
+ puts "Copying #{file} to #{artefact_contents_folder + '/' + file}"
44
+ cp(file, artefact_contents_folder + '/' + file)
45
+ }
40
46
  end
41
47
 
42
- def add_folder_to_package(source_folder, artefact_subfolder:)
48
+ def add_folder_to_package(source_folder, artefact_subfolder: nil)
49
+ artefact_subfolder ||= File.basename(source_folder)
43
50
  @folders_to_package[source_folder] = artefact_subfolder
44
51
  end
45
52
 
53
+ def add_file_to_package(source_file)
54
+ @files_to_package << source_file
55
+ end
56
+
46
57
  def package
47
58
  puts "Create #{artefact_path} from #{artefact_contents_folder}"
48
59
  rm_f(artefact_path)
@@ -19,7 +19,12 @@ module Cloudspin
19
19
  :desc => 'The artefact will be created in this folder'
20
20
 
21
21
  desc 'build', 'Assemble the files to be packaged'
22
+ option :inspec_folder,
23
+ :aliases => '-i',
24
+ :banner => 'PATH',
25
+ :default => './inspec'
22
26
  def build
27
+ add_folder(options[:inspec_folder])
23
28
  builder.build
24
29
  end
25
30
 
@@ -41,12 +46,18 @@ module Cloudspin
41
46
 
42
47
  no_commands do
43
48
  def builder
44
- Cloudspin::Stack::Artefact::Builder.new(stack_definition: stack_definition,
45
- dist_folder: options[:dist_folder])
49
+ @builder ||= Cloudspin::Stack::Artefact::Builder.new(
50
+ stack_definition: stack_definition,
51
+ dist_folder: options[:dist_folder]
52
+ )
53
+ end
54
+
55
+ def add_folder(folder = nil)
56
+ builder.add_folder_to_package(folder) if Dir.exists?(folder)
46
57
  end
47
58
 
48
59
  def stack_definition
49
- Cloudspin::Stack::Definition.from_file(options[:terraform_source] + '/stack.yaml')
60
+ @definition ||= Cloudspin::Stack::Definition.from_file(options[:terraform_source] + '/stack.yaml')
50
61
  end
51
62
  end
52
63
 
@@ -1,7 +1,7 @@
1
1
  module Cloudspin
2
2
  module Stack
3
3
  module Artefact
4
- VERSION = '0.1.2'
4
+ VERSION = '0.1.3'
5
5
  end
6
6
  end
7
7
  end
@@ -12,7 +12,9 @@ module Cloudspin
12
12
 
13
13
  def define
14
14
  desc 'Assemble files to be packaged'
15
- task :build do |t, args|
15
+ task :build, [:inspec_folder, :config_file] do |t, args|
16
+ add_folder(args[:inspec_folder] || './inspec')
17
+ add_file(args[:config_file] || './spin-default.yaml')
16
18
  builder.build
17
19
  end
18
20
 
@@ -22,13 +24,23 @@ module Cloudspin
22
24
  end
23
25
  end
24
26
 
27
+ def add_folder(folder)
28
+ builder.add_folder_to_package(folder) if Dir.exists?(folder)
29
+ end
30
+
31
+ def add_file(filename)
32
+ builder.add_file_to_package(filename) if File.exists?(filename)
33
+ end
34
+
25
35
  def builder
26
- Cloudspin::Stack::Artefact::Builder.new(stack_definition: stack_definition,
27
- dist_folder: @dist_folder)
36
+ @builder ||= Cloudspin::Stack::Artefact::Builder.new(
37
+ stack_definition: stack_definition,
38
+ dist_folder: @dist_folder
39
+ )
28
40
  end
29
41
 
30
42
  def stack_definition
31
- Cloudspin::Stack::Definition.from_file(@definition_folder + '/stack.yaml')
43
+ @definition ||= Cloudspin::Stack::Definition.from_file(@definition_folder + '/stack.yaml')
32
44
  end
33
45
 
34
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudspin-stack-artefact
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - 'kief '
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-08-24 00:00:00.000000000 Z
11
+ date: 2018-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cloudspin-stack
@@ -39,47 +39,47 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: bundler
42
+ name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.16'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '1.16'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '10.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '3.0'
75
+ version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '3.0'
82
+ version: '0'
83
83
  description:
84
84
  email:
85
85
  - cloudspin@kief.com
@@ -126,7 +126,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
126
  version: '0'
127
127
  requirements: []
128
128
  rubyforge_project:
129
- rubygems_version: 2.7.6
129
+ rubygems_version: 2.6.14
130
130
  signing_key:
131
131
  specification_version: 4
132
132
  summary: Classes to manage cloudspin stack artefacts