firespring_dev_commands 2.5.0.pre.alpha.3 → 3.0.0.pre.alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/lib/firespring_dev_commands/audit/report.rb +9 -2
  3. data/lib/firespring_dev_commands/aws/account.rb +3 -7
  4. data/lib/firespring_dev_commands/aws/login.rb +0 -20
  5. data/lib/firespring_dev_commands/bloom_growth/rock.rb +34 -0
  6. data/lib/firespring_dev_commands/bloom_growth/seat.rb +16 -0
  7. data/lib/firespring_dev_commands/bloom_growth/user.rb +43 -0
  8. data/lib/firespring_dev_commands/bloom_growth.rb +132 -0
  9. data/lib/firespring_dev_commands/common.rb +11 -22
  10. data/lib/firespring_dev_commands/coverage/base.rb +21 -0
  11. data/lib/firespring_dev_commands/coverage/cobertura.rb +86 -0
  12. data/lib/firespring_dev_commands/coverage/none.rb +25 -0
  13. data/lib/firespring_dev_commands/docker/artifact.rb +12 -0
  14. data/lib/firespring_dev_commands/docker.rb +23 -25
  15. data/lib/firespring_dev_commands/node.rb +13 -12
  16. data/lib/firespring_dev_commands/php.rb +13 -9
  17. data/lib/firespring_dev_commands/platform.rb +1 -1
  18. data/lib/firespring_dev_commands/ruby.rb +19 -7
  19. data/lib/firespring_dev_commands/target_process/query.rb +30 -4
  20. data/lib/firespring_dev_commands/target_process.rb +3 -1
  21. data/lib/firespring_dev_commands/templates/aws.rb +0 -2
  22. data/lib/firespring_dev_commands/templates/base_interface.rb +2 -2
  23. data/lib/firespring_dev_commands/templates/docker/application.rb +2 -2
  24. data/lib/firespring_dev_commands/templates/docker/node/application.rb +82 -15
  25. data/lib/firespring_dev_commands/templates/docker/php/application.rb +74 -19
  26. data/lib/firespring_dev_commands/templates/docker/ruby/application.rb +79 -12
  27. data/lib/firespring_dev_commands/version.rb +1 -1
  28. data/lib/firespring_dev_commands.rb +1 -1
  29. metadata +43 -35
@@ -1,5 +1,4 @@
1
1
  require_relative '../../base_interface'
2
- require 'securerandom'
3
2
 
4
3
  module Dev
5
4
  module Template
@@ -8,14 +7,37 @@ module Dev
8
7
  module Php
9
8
  # Class for default rake tasks associated with a php project
10
9
  class Application < Dev::Template::ApplicationInterface
11
- attr_reader :php, :siloed_tests
10
+ attr_reader :php, :start_container_dependencies_on_test, :test_isolation
12
11
 
13
- # Allow for custom container path for the application
14
- def initialize(application, container_path: nil, local_path: nil, siloed_tests: nil, exclude: [])
15
- @php = Dev::Php.new(container_path:, local_path:)
16
- # TODO: Better name
17
- # TODO: Should this apply to all or just tests?
18
- @siloed_tests = siloed_tests
12
+ # Create the templated rake tasks for the php application
13
+ #
14
+ # @param application [String] The name of the application
15
+ # @param container_path [String] The path to the application inside of the container
16
+ # @param local_path [String] The path to the application on your local system
17
+ # @param start_container_dependencies_on_test [Boolean] Whether or not to start up container dependencies when running tests
18
+ # @param test_isolation [Boolean] Whether or not to start tests in an isolated project and clean up after tests are run
19
+ # @param coverage [Dev::Coverage::Base] The coverage class which is an instance of Base to be used to evaluate coverage
20
+ # @param lint_artifacts [Dev::Docker::Artifact] An array of lint artifacts to copy back from the container
21
+ # @param test_artifacts [Dev::Docker::Artifact] An array of test artifacts to copy back from the container
22
+ # @param exclude [Array<Symbol>] An array of default template tasks to exclude
23
+ def initialize(
24
+ application,
25
+ container_path: nil,
26
+ local_path: nil,
27
+ start_container_dependencies_on_test: false,
28
+ test_isolation: false,
29
+ coverage: nil,
30
+ lint_artifacts: nil,
31
+ test_artifacts: nil,
32
+ exclude: []
33
+ )
34
+ @php = Dev::Php.new(container_path:, local_path:, coverage:)
35
+ @start_container_dependencies_on_test = start_container_dependencies_on_test
36
+ @test_isolation = test_isolation
37
+ @lint_artifacts = lint_artifacts
38
+ @test_artifacts = test_artifacts
39
+ raise 'lint artifact must be instance of Dev::Docker::Artifact' if lint_artifacts&.any? { |it| !it.is_a?(Dev::Docker::Artifact) }
40
+ raise 'test artifact must be instance of Dev::Docker::Artifact' if test_artifacts&.any? { |it| !it.is_a?(Dev::Docker::Artifact) }
19
41
 
20
42
  super(application, exclude:)
21
43
  end
@@ -64,11 +86,13 @@ module Dev
64
86
  end
65
87
  end
66
88
 
89
+ # rubocop:disable Metrics/MethodLength
67
90
  # Create the rake task which runs linting for the application name
68
91
  def create_lint_task!
69
92
  application = @name
70
93
  php = @php
71
94
  exclude = @exclude
95
+ lint_artifacts = @lint_artifacts
72
96
  return if exclude.include?(:lint)
73
97
 
74
98
  DEV_COMMANDS_TOP_LEVEL.instance_eval do
@@ -84,9 +108,16 @@ module Dev
84
108
  task lint: %w(init_docker up_no_deps) do
85
109
  LOG.debug("Check for php linting errors in the #{application} codebase")
86
110
 
111
+ # Run the lint command
87
112
  options = []
88
113
  options << '-T' if Dev::Common.new.running_codebuild?
89
114
  Dev::Docker::Compose.new(services: application, options:).exec(*php.lint_command)
115
+ ensure
116
+ # Copy any defined artifacts back
117
+ container = Dev::Docker::Compose.new.container_by_name(application)
118
+ lint_artifacts&.each do |artifact|
119
+ Dev::Docker.new.copy_from_container(container, artifact.container_path, artifact.local_path)
120
+ end
90
121
  end
91
122
 
92
123
  namespace :lint do
@@ -94,6 +125,7 @@ module Dev
94
125
  task fix: %w(init_docker up_no_deps) do
95
126
  LOG.debug("Check and fix all php linting errors in the #{application} codebase")
96
127
 
128
+ # Run the lint fix command
97
129
  options = []
98
130
  options << '-T' if Dev::Common.new.running_codebuild?
99
131
  Dev::Docker::Compose.new(services: application, options:).exec(*php.lint_fix_command)
@@ -103,13 +135,17 @@ module Dev
103
135
  end
104
136
  end
105
137
  end
138
+ # rubocop:enable Metrics/MethodLength
106
139
 
140
+ # rubocop:disable Metrics/MethodLength
107
141
  # Create the rake task which runs all tests for the application name
108
142
  def create_test_task!
109
143
  application = @name
110
144
  php = @php
111
- siloed_tests = @siloed_tests
112
145
  exclude = @exclude
146
+ test_isolation = @test_isolation
147
+ up_cmd = @start_container_dependencies_on_test ? :up : :up_no_deps
148
+ test_artifacts = @test_artifacts
113
149
  return if exclude.include?(:test)
114
150
 
115
151
  DEV_COMMANDS_TOP_LEVEL.instance_eval do
@@ -119,24 +155,43 @@ module Dev
119
155
  # This is just a placeholder to execute the dependencies
120
156
  end
121
157
 
158
+ task test_init_docker: %w(init_docker) do
159
+ Dev::Docker::Compose.configure do |c|
160
+ c.project_name = SecureRandom.hex if test_isolation
161
+ end
162
+ end
163
+
122
164
  namespace :php do
123
165
  desc "Run all php tests against the #{application}'s codebase" \
124
166
  "\n\t(optional) use OPTS=... to pass additional options to the command"
125
- task test: %w(init_docker up) do
126
- LOG.debug("Running all php tests in the #{application} codebase")
127
-
128
- project_name = nil
129
- project_name = SecureRandom.hex if siloed_tests
167
+ task test: %W(test_init_docker #{up_cmd}) do
168
+ begin
169
+ LOG.debug("Running all php tests in the #{application} codebase")
130
170
 
131
- options = []
132
- options << '-T' if Dev::Common.new.running_codebuild?
133
- Dev::Docker::Compose.new(project_name:, services: application, options:).exec(*php.test_command)
134
- # TODO: Add clean if we are siloed
171
+ # Run the test command
172
+ options = []
173
+ options << '-T' if Dev::Common.new.running_codebuild?
174
+ Dev::Docker::Compose.new(services: application, options:).exec(*php.test_command)
175
+ php.check_test_coverage(application:)
176
+ ensure
177
+ # Copy any defined artifacts back
178
+ container = Dev::Docker::Compose.new.container_by_name(application)
179
+ test_artifacts&.each do |artifact|
180
+ Dev::Docker.new.copy_from_container(container, artifact.container_path, artifact.local_path)
181
+ end
182
+ end
183
+ ensure
184
+ # Clean up resources if we are on an isolated project name
185
+ if test_isolation
186
+ Dev::Docker::Compose.new.down
187
+ Dev::Docker.new.prune_project_volumes(project_name: Dev::Docker::Compose.config.project_name)
188
+ end
135
189
  end
136
190
  end
137
191
  end
138
192
  end
139
193
  end
194
+ # rubocop:enable Metrics/MethodLength
140
195
 
141
196
  # Create the rake tasks which runs the install command for the application packages
142
197
  def create_install_task!
@@ -182,7 +237,7 @@ module Dev
182
237
  opts = []
183
238
  opts << '-T' if Dev::Common.new.running_codebuild?
184
239
 
185
- # Retrieve results of the scan.
240
+ # Run the audit command and retrieve the results
186
241
  data = Dev::Docker::Compose.new(services: application, options: opts, capture: true).exec(*php.audit_command)
187
242
  Dev::Php::Audit.new(data).to_report.check
188
243
  end
@@ -7,19 +7,48 @@ module Dev
7
7
  module Ruby
8
8
  # Class for default rake tasks associated with a ruby project
9
9
  class Application < Dev::Template::ApplicationInterface
10
- attr_reader :ruby
10
+ attr_reader :ruby, :start_container_dependencies_on_test, :test_isolation
11
+
12
+ # Create the templated rake tasks for the ruby application
13
+ #
14
+ # @param application [String] The name of the application
15
+ # @param container_path [String] The path to the application inside of the container
16
+ # @param local_path [String] The path to the application on your local system
17
+ # @param start_container_dependencies_on_test [Boolean] Whether or not to start up container dependencies when running tests
18
+ # @param test_isolation [Boolean] Whether or not to start tests in an isolated project and clean up after tests are run
19
+ # @param coverage [Dev::Coverage::Base] The coverage class which is an instance of Base to be used to evaluate coverage
20
+ # @param lint_artifacts [Dev::Docker::Artifact] An array of lint artifacts to copy back from the container
21
+ # @param test_artifacts [Dev::Docker::Artifact] An array of test artifacts to copy back from the container
22
+ # @param exclude [Array<Symbol>] An array of default template tasks to exclude
23
+ def initialize(
24
+ application,
25
+ container_path: nil,
26
+ local_path: nil,
27
+ start_container_dependencies_on_test: false,
28
+ test_isolation: false,
29
+ coverage: nil,
30
+ lint_artifacts: nil,
31
+ test_artifacts: nil,
32
+ exclude: []
33
+ )
34
+ @ruby = Dev::Ruby.new(container_path:, local_path:, coverage:)
35
+ @start_container_dependencies_on_test = start_container_dependencies_on_test
36
+ @test_isolation = test_isolation
37
+ @lint_artifacts = lint_artifacts
38
+ @test_artifacts = test_artifacts
39
+ raise 'lint artifact must be instance of Dev::Docker::Artifact' if lint_artifacts&.any? { |it| !it.is_a?(Dev::Docker::Artifact) }
40
+ raise 'test artifact must be instance of Dev::Docker::Artifact' if test_artifacts&.any? { |it| !it.is_a?(Dev::Docker::Artifact) }
11
41
 
12
- # Allow for custom container path for the application
13
- def initialize(application, container_path: nil, local_path: nil, exclude: [])
14
- @ruby = Dev::Ruby.new(container_path:, local_path:)
15
42
  super(application, exclude:)
16
43
  end
17
44
 
45
+ # rubocop:disable Metrics/MethodLength
18
46
  # Create the rake task which runs linting for the application name
19
47
  def create_lint_task!
20
48
  application = @name
21
49
  ruby = @ruby
22
50
  exclude = @exclude
51
+ lint_artifacts = @lint_artifacts
23
52
  return if exclude.include?(:lint)
24
53
 
25
54
  DEV_COMMANDS_TOP_LEVEL.instance_eval do
@@ -30,13 +59,21 @@ module Dev
30
59
  end
31
60
 
32
61
  namespace :ruby do
33
- desc "Run the ruby linting software against the #{application}'s codebase"
62
+ desc "Run the ruby linting software against the #{application}'s codebase" \
63
+ "\n\t(optional) use OPTS=... to pass additional options to the command"
34
64
  task lint: %w(init_docker up_no_deps) do
35
65
  LOG.debug("Check for ruby linting errors in the #{application} codebase")
36
66
 
67
+ # Run the lint command
37
68
  options = []
38
69
  options << '-T' if Dev::Common.new.running_codebuild?
39
70
  Dev::Docker::Compose.new(services: application, options:).exec(*ruby.lint_command)
71
+ ensure
72
+ # Copy any defined artifacts back
73
+ container = Dev::Docker::Compose.new.container_by_name(application)
74
+ lint_artifacts&.each do |artifact|
75
+ Dev::Docker.new.copy_from_container(container, artifact.container_path, artifact.local_path)
76
+ end
40
77
  end
41
78
 
42
79
  namespace :lint do
@@ -44,6 +81,7 @@ module Dev
44
81
  task fix: %w(init_docker up_no_deps) do
45
82
  LOG.debug("Check and fix all ruby linting errors in the #{application} codebase")
46
83
 
84
+ # Run the lint fix command
47
85
  options = []
48
86
  options << '-T' if Dev::Common.new.running_codebuild?
49
87
  Dev::Docker::Compose.new(services: application, options:).exec(*ruby.lint_fix_command)
@@ -53,12 +91,17 @@ module Dev
53
91
  end
54
92
  end
55
93
  end
94
+ # rubocop:enable Metrics/MethodLength
56
95
 
96
+ # rubocop:disable Metrics/MethodLength
57
97
  # Create the rake task which runs all tests for the application name
58
98
  def create_test_task!
59
99
  application = @name
60
100
  ruby = @ruby
61
101
  exclude = @exclude
102
+ test_isolation = @test_isolation
103
+ up_cmd = @start_container_dependencies_on_test ? :up : :up_no_deps
104
+ test_artifacts = @test_artifacts
62
105
  return if exclude.include?(:test)
63
106
 
64
107
  DEV_COMMANDS_TOP_LEVEL.instance_eval do
@@ -68,19 +111,42 @@ module Dev
68
111
  # This is just a placeholder to execute the dependencies
69
112
  end
70
113
 
114
+ task test_init_docker: %w(init_docker) do
115
+ Dev::Docker::Compose.configure do |c|
116
+ c.project_name = SecureRandom.hex if test_isolation
117
+ end
118
+ end
119
+
71
120
  namespace :ruby do
72
- desc "Run all ruby tests against the #{application}'s codebase"
73
- task test: %w(init_docker up_no_deps) do
74
- LOG.debug("Running all ruby tests in the #{application} codebase")
121
+ desc "Run all ruby tests against the #{application}'s codebase" \
122
+ "\n\t(optional) use OPTS=... to pass additional options to the command"
123
+ task test: %W(test_init_docker #{up_cmd}) do
124
+ begin
125
+ LOG.debug("Running all ruby tests in the #{application} codebase")
75
126
 
76
- options = []
77
- options << '-T' if Dev::Common.new.running_codebuild?
78
- Dev::Docker::Compose.new(services: application, options:).exec(*ruby.test_command)
127
+ options = []
128
+ options << '-T' if Dev::Common.new.running_codebuild?
129
+ Dev::Docker::Compose.new(services: application, options:).exec(*ruby.test_command)
130
+ ruby.check_test_coverage(application:)
131
+ ensure
132
+ # Copy any defined artifacts back
133
+ container = Dev::Docker::Compose.new.container_by_name(application)
134
+ test_artifacts&.each do |artifact|
135
+ Dev::Docker.new.copy_from_container(container, artifact.container_path, artifact.local_path)
136
+ end
137
+ end
138
+ ensure
139
+ # Clean up resources if we are on an isolated project name
140
+ if test_isolation
141
+ Dev::Docker::Compose.new.down
142
+ Dev::Docker.new.prune_project_volumes(project_name: Dev::Docker::Compose.config.project_name)
143
+ end
79
144
  end
80
145
  end
81
146
  end
82
147
  end
83
148
  end
149
+ # rubocop:enable Metrics/MethodLength
84
150
 
85
151
  # Create the rake task which runs the install command for the application packages
86
152
  def create_install_task!
@@ -120,7 +186,8 @@ module Dev
120
186
  namespace :ruby do
121
187
  desc 'Run Bundle Audit on the target application' \
122
188
  "\n\tuse MIN_SEVERITY=(info low moderate high critical) to fetch only severity type selected and above (default=high)." \
123
- "\n\tuse IGNORELIST=(comma delimited list of ids) removes the entry from the list."
189
+ "\n\tuse IGNORELIST=(comma delimited list of ids) removes the entry from the list." \
190
+ "\n\t(optional) use OPTS=... to pass additional options to the command"
124
191
  task audit: %w(init_docker up_no_deps) do
125
192
  opts = []
126
193
  opts << '-T' if Dev::Common.new.running_codebuild?
@@ -6,6 +6,6 @@ module Dev
6
6
  # Use 'v.v.v.pre.alpha.v' for pre-release vesions
7
7
  # Use 'v.v.v.beta.v for beta versions
8
8
  # Use semantic versioning for any releases (https://semver.org/)
9
- VERSION = '2.5.0.pre.alpha.3'.freeze
9
+ VERSION = '3.0.0.pre.alpha.2'.freeze
10
10
  end
11
11
  end
@@ -11,7 +11,7 @@ DEV_COMMANDS_TOP_LEVEL = self
11
11
 
12
12
  # Load all gems referenced in the Gemfile
13
13
  require 'bundler'
14
- Bundler.require
14
+ Bundler.require(:default)
15
15
 
16
16
  # Add libdir to the default ruby path
17
17
  libdir = File.realpath(File.dirname(__FILE__))
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: firespring_dev_commands
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0.pre.alpha.3
4
+ version: 3.0.0.pre.alpha.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Firespring
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-22 00:00:00.000000000 Z
11
+ date: 2024-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,154 +16,154 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 7.1.1
19
+ version: 7.1.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 7.1.1
26
+ version: 7.1.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: aws-sdk-cloudformation
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.83.0
33
+ version: 1.97.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.83.0
40
+ version: 1.97.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: aws-sdk-codepipeline
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.59.0
47
+ version: 1.67.0
48
48
  type: :runtime
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.59.0
54
+ version: 1.67.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: aws-sdk-ecr
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.61.0
61
+ version: 1.68.0
62
62
  type: :runtime
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: 1.61.0
68
+ version: 1.68.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: aws-sdk-elasticache
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.88.0
75
+ version: 1.95.0
76
76
  type: :runtime
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: 1.88.0
82
+ version: 1.95.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: aws-sdk-lambda
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 1.101.0
89
+ version: 1.113.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 1.101.0
96
+ version: 1.113.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: aws-sdk-opensearchservice
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 1.24.0
103
+ version: 1.33.0
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 1.24.0
110
+ version: 1.33.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: aws-sdk-rds
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 1.183.0
117
+ version: 1.208.0
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 1.183.0
124
+ version: 1.208.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: aws-sdk-s3
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 1.127.0
131
+ version: 1.141.0
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 1.127.0
138
+ version: 1.141.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: aws-sdk-ssm
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 1.154.0
145
+ version: 1.162.0
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 1.154.0
152
+ version: 1.162.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: aws-sdk-sts
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 1.10.0
159
+ version: 1.11.0
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 1.10.0
166
+ version: 1.11.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: colorize
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -249,61 +249,61 @@ dependencies:
249
249
  - !ruby/object:Gem::Version
250
250
  version: 2.3.0
251
251
  - !ruby/object:Gem::Dependency
252
- name: libxml-ruby
252
+ name: ox
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
- - - '='
255
+ - - "~>"
256
256
  - !ruby/object:Gem::Version
257
- version: 4.1.1
257
+ version: 2.14.17
258
258
  type: :runtime
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - '='
262
+ - - "~>"
263
263
  - !ruby/object:Gem::Version
264
- version: 4.1.1
264
+ version: 2.14.17
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: public_suffix
267
267
  requirement: !ruby/object:Gem::Requirement
268
268
  requirements:
269
269
  - - '='
270
270
  - !ruby/object:Gem::Version
271
- version: 5.0.1
271
+ version: 5.0.4
272
272
  type: :runtime
273
273
  prerelease: false
274
274
  version_requirements: !ruby/object:Gem::Requirement
275
275
  requirements:
276
276
  - - '='
277
277
  - !ruby/object:Gem::Version
278
- version: 5.0.1
278
+ version: 5.0.4
279
279
  - !ruby/object:Gem::Dependency
280
280
  name: rake
281
281
  requirement: !ruby/object:Gem::Requirement
282
282
  requirements:
283
283
  - - "~>"
284
284
  - !ruby/object:Gem::Version
285
- version: 13.0.6
285
+ version: 13.1.0
286
286
  type: :runtime
287
287
  prerelease: false
288
288
  version_requirements: !ruby/object:Gem::Requirement
289
289
  requirements:
290
290
  - - "~>"
291
291
  - !ruby/object:Gem::Version
292
- version: 13.0.6
292
+ version: 13.1.0
293
293
  - !ruby/object:Gem::Dependency
294
294
  name: slack-ruby-client
295
295
  requirement: !ruby/object:Gem::Requirement
296
296
  requirements:
297
297
  - - "~>"
298
298
  - !ruby/object:Gem::Version
299
- version: 2.1.0
299
+ version: 2.2.0
300
300
  type: :runtime
301
301
  prerelease: false
302
302
  version_requirements: !ruby/object:Gem::Requirement
303
303
  requirements:
304
304
  - - "~>"
305
305
  - !ruby/object:Gem::Version
306
- version: 2.1.0
306
+ version: 2.2.0
307
307
  description: Ruby library for creating/maintaining your development environment
308
308
  email: opensource@firespring.com
309
309
  executables: []
@@ -327,10 +327,18 @@ files:
327
327
  - lib/firespring_dev_commands/aws/parameter.rb
328
328
  - lib/firespring_dev_commands/aws/profile.rb
329
329
  - lib/firespring_dev_commands/aws/s3.rb
330
+ - lib/firespring_dev_commands/bloom_growth.rb
331
+ - lib/firespring_dev_commands/bloom_growth/rock.rb
332
+ - lib/firespring_dev_commands/bloom_growth/seat.rb
333
+ - lib/firespring_dev_commands/bloom_growth/user.rb
330
334
  - lib/firespring_dev_commands/boolean.rb
331
335
  - lib/firespring_dev_commands/common.rb
336
+ - lib/firespring_dev_commands/coverage/base.rb
337
+ - lib/firespring_dev_commands/coverage/cobertura.rb
338
+ - lib/firespring_dev_commands/coverage/none.rb
332
339
  - lib/firespring_dev_commands/daterange.rb
333
340
  - lib/firespring_dev_commands/docker.rb
341
+ - lib/firespring_dev_commands/docker/artifact.rb
334
342
  - lib/firespring_dev_commands/docker/compose.rb
335
343
  - lib/firespring_dev_commands/docker/status.rb
336
344
  - lib/firespring_dev_commands/dotenv.rb