aerosol 1.5.1 → 1.8.0
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 +5 -5
- data/.travis.yml +1 -2
- data/aerosol.gemspec +6 -3
- data/lib/aerosol.rb +4 -1
- data/lib/aerosol/auto_scaling.rb +4 -2
- data/lib/aerosol/cli.rb +15 -0
- data/lib/aerosol/launch_configuration.rb +5 -3
- data/lib/aerosol/rake_task.rb +0 -2
- data/lib/aerosol/runner.rb +0 -1
- data/lib/aerosol/util.rb +3 -3
- data/lib/aerosol/version.rb +1 -1
- metadata +60 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8800e253ba3945d047a0186145a0aa58bc2d1ea2374ca6cc3e8f9e102a8ad510
|
4
|
+
data.tar.gz: 9748857dd6d759985cf7e1071364474dbb013b2eff7eae3c86616e0eebcc1879
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 143084a0ffcd6ed83e36bea8a106e88776cc146adacc7d55b3976f52fd0ce80d6e0c7543311c5d82110900ce927cca5ca29bb4a06903131497d88ae7ed02a7f6
|
7
|
+
data.tar.gz: 4ea6f13e4f3464f04ab05bd33d504f586c5206cbf13bfbdeed63411ad2a2170b812631d8185c18981a8c46dfc55d5f18d189a59826b04129aca4c14d034148a3
|
data/.travis.yml
CHANGED
data/aerosol.gemspec
CHANGED
@@ -18,14 +18,17 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.add_dependency 'activerecord', '>= 3.2.0'
|
19
19
|
gem.add_dependency 'clamp', '~> 0.6'
|
20
20
|
gem.add_dependency 'excon'
|
21
|
-
gem.add_dependency 'aws-sdk', '~>
|
22
|
-
gem.add_dependency '
|
21
|
+
gem.add_dependency 'aws-sdk-core', '~> 3'
|
22
|
+
gem.add_dependency 'aws-sdk-s3', '~> 1'
|
23
|
+
gem.add_dependency 'aws-sdk-ec2', '~> 1'
|
24
|
+
gem.add_dependency 'aws-sdk-autoscaling', '~> 1'
|
25
|
+
gem.add_dependency 'minigit', '~> 0.0.4'
|
23
26
|
gem.add_dependency 'net-ssh'
|
24
27
|
gem.add_dependency 'net-ssh-gateway'
|
25
28
|
gem.add_dependency 'dockly-util', '~> 0.1.0'
|
26
29
|
gem.add_development_dependency 'cane'
|
27
30
|
gem.add_development_dependency 'pry'
|
28
|
-
gem.add_development_dependency 'rake'
|
31
|
+
gem.add_development_dependency 'rake', '~> 10.0'
|
29
32
|
gem.add_development_dependency 'rspec', '< 3.0'
|
30
33
|
gem.add_development_dependency 'webmock'
|
31
34
|
gem.add_development_dependency 'vcr'
|
data/lib/aerosol.rb
CHANGED
data/lib/aerosol/auto_scaling.rb
CHANGED
@@ -5,7 +5,7 @@ class Aerosol::AutoScaling
|
|
5
5
|
logger_prefix '[aerosol auto_scaling]'
|
6
6
|
aws_attribute :auto_scaling_group_name, :availability_zones, :min_size, :max_size, :default_cooldown,
|
7
7
|
:desired_capacity, :health_check_grace_period, :health_check_type, :load_balancer_names,
|
8
|
-
:placement_group, :tags, :created_time, :vpc_zone_identifier
|
8
|
+
:placement_group, :tags, :created_time, :vpc_zone_identifier, :target_group_arns
|
9
9
|
aws_class_attribute :launch_configuration, Aerosol::LaunchConfiguration
|
10
10
|
primary_key :auto_scaling_group_name
|
11
11
|
|
@@ -138,6 +138,7 @@ class Aerosol::AutoScaling
|
|
138
138
|
"placement_group" => "#{placement_group}", \
|
139
139
|
"tags" => #{tags.to_s}, \
|
140
140
|
"created_time" => "#{created_time}" \
|
141
|
+
"target_group_arns" => "#{target_group_arns}" \
|
141
142
|
}}
|
142
143
|
end
|
143
144
|
|
@@ -155,7 +156,8 @@ private
|
|
155
156
|
load_balancer_names: load_balancer_names,
|
156
157
|
placement_group: placement_group,
|
157
158
|
tags: tags_to_array,
|
158
|
-
vpc_zone_identifier: vpc_zone_identifier
|
159
|
+
vpc_zone_identifier: vpc_zone_identifier,
|
160
|
+
target_group_arns: target_group_arns
|
159
161
|
}.reject { |k, v| v.nil? }
|
160
162
|
end
|
161
163
|
|
data/lib/aerosol/cli.rb
CHANGED
@@ -14,6 +14,20 @@ class Aerosol::AbstractCommand < Clamp::Command
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
+
class Aerosol::DeployCommand < Aerosol::AbstractCommand
|
18
|
+
parameter 'DEPLOY', 'the deploy to run (can also be an environment name) for', :attribute_name => :deploy_name
|
19
|
+
|
20
|
+
def execute
|
21
|
+
super
|
22
|
+
|
23
|
+
if Aerosol.deploy(deploy_name.to_sym)
|
24
|
+
Rake::Task["aerosol:#{deploy_name}:all"].invoke
|
25
|
+
elsif Aerosol.env(deploy_name.to_sym)
|
26
|
+
Rake::Task["aerosol:env:#{deploy_name}"].invoke
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
17
31
|
class Aerosol::SshCommand < Aerosol::AbstractCommand
|
18
32
|
option ['-r', '--run'], :flag, 'run first ssh command', :attribute_name => :run_first
|
19
33
|
parameter 'DEPLOY', 'the deploy to list commands for', :attribute_name => :deploy_name
|
@@ -37,5 +51,6 @@ end
|
|
37
51
|
|
38
52
|
class Aerosol::Cli < Aerosol::AbstractCommand
|
39
53
|
subcommand ['ssh', 's'], 'Print ssh commands for latest running instances', Aerosol::SshCommand
|
54
|
+
subcommand ['deploy', 'd'], 'Run a deploy', Aerosol::DeployCommand
|
40
55
|
end
|
41
56
|
|
@@ -5,7 +5,7 @@ class Aerosol::LaunchConfiguration
|
|
5
5
|
logger_prefix '[aerosol launch_configuration]'
|
6
6
|
aws_attribute :launch_configuration_name, :image_id, :instance_type, :security_groups, :user_data,
|
7
7
|
:iam_instance_profile, :kernel_id, :key_name, :spot_price, :created_time,
|
8
|
-
:associate_public_ip_address, :block_device_mappings
|
8
|
+
:associate_public_ip_address, :block_device_mappings, :ebs_optimized
|
9
9
|
dsl_attribute :meta_data
|
10
10
|
|
11
11
|
primary_key :launch_configuration_name
|
@@ -89,7 +89,8 @@ class Aerosol::LaunchConfiguration
|
|
89
89
|
"key_name" => "#{key_name}", \
|
90
90
|
"spot_price" => "#{spot_price}", \
|
91
91
|
"created_time" => "#{created_time}", \
|
92
|
-
"block_device_mappings" => #{block_device_mappings}" \
|
92
|
+
"block_device_mappings" => #{block_device_mappings}", \
|
93
|
+
"ebs_optimized" => #{ebs_optimized} \
|
93
94
|
}}
|
94
95
|
end
|
95
96
|
|
@@ -109,7 +110,8 @@ private
|
|
109
110
|
spot_price: spot_price,
|
110
111
|
user_data: corrected_user_data,
|
111
112
|
associate_public_ip_address: associate_public_ip_address,
|
112
|
-
block_device_mappings: block_device_mappings
|
113
|
+
block_device_mappings: block_device_mappings,
|
114
|
+
ebs_optimized: ebs_optimized
|
113
115
|
}.reject { |k, v| v.nil? }
|
114
116
|
end
|
115
117
|
|
data/lib/aerosol/rake_task.rb
CHANGED
data/lib/aerosol/runner.rb
CHANGED
data/lib/aerosol/util.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'minigit'
|
2
2
|
|
3
3
|
module Aerosol::Util
|
4
4
|
extend self
|
@@ -32,10 +32,10 @@ module Aerosol::Util
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def git_repo
|
35
|
-
@git_repo ||=
|
35
|
+
@git_repo ||= MiniGit.new('.')
|
36
36
|
end
|
37
37
|
|
38
38
|
def git_sha
|
39
|
-
@git_sha ||= git_repo.
|
39
|
+
@git_sha ||= git_repo.capturing.rev_parse('HEAD').chomp[0..6] rescue 'unknown'
|
40
40
|
end
|
41
41
|
end
|
data/lib/aerosol/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aerosol
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Swipely, Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -53,33 +53,75 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: aws-sdk
|
56
|
+
name: aws-sdk-core
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '3'
|
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: '
|
68
|
+
version: '3'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: aws-sdk-s3
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '1'
|
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: '
|
82
|
+
version: '1'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: aws-sdk-ec2
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '1'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '1'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: aws-sdk-autoscaling
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: minigit
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.0.4
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 0.0.4
|
83
125
|
- !ruby/object:Gem::Dependency
|
84
126
|
name: net-ssh
|
85
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -154,16 +196,16 @@ dependencies:
|
|
154
196
|
name: rake
|
155
197
|
requirement: !ruby/object:Gem::Requirement
|
156
198
|
requirements:
|
157
|
-
- - "
|
199
|
+
- - "~>"
|
158
200
|
- !ruby/object:Gem::Version
|
159
|
-
version: '0'
|
201
|
+
version: '10.0'
|
160
202
|
type: :development
|
161
203
|
prerelease: false
|
162
204
|
version_requirements: !ruby/object:Gem::Requirement
|
163
205
|
requirements:
|
164
|
-
- - "
|
206
|
+
- - "~>"
|
165
207
|
- !ruby/object:Gem::Version
|
166
|
-
version: '0'
|
208
|
+
version: '10.0'
|
167
209
|
- !ruby/object:Gem::Dependency
|
168
210
|
name: rspec
|
169
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -259,7 +301,7 @@ homepage: https://github.com/swipely/aerosol
|
|
259
301
|
licenses:
|
260
302
|
- MIT
|
261
303
|
metadata: {}
|
262
|
-
post_install_message:
|
304
|
+
post_install_message:
|
263
305
|
rdoc_options: []
|
264
306
|
require_paths:
|
265
307
|
- lib
|
@@ -274,9 +316,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
274
316
|
- !ruby/object:Gem::Version
|
275
317
|
version: '0'
|
276
318
|
requirements: []
|
277
|
-
|
278
|
-
|
279
|
-
signing_key:
|
319
|
+
rubygems_version: 3.0.3
|
320
|
+
signing_key:
|
280
321
|
specification_version: 4
|
281
322
|
summary: Instance-based deploys made easy
|
282
323
|
test_files:
|