broadside 3.0.4 → 3.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +14 -1
- data/lib/broadside/ecs/ecs_deploy.rb +1 -1
- data/lib/broadside/target.rb +12 -0
- data/lib/broadside/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a3e0d92c4b8e8a5079c5a3008c16c2986fe00862
|
4
|
+
data.tar.gz: 70c9df295003bc04c67ac64ed9acd1809aee14cd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46d9466884ee07ffd715ff753e04aefb1361bf807dbd0d31a1f6aa7ae96d8deb1cc65066c6f1394ee1384b4fa456cf4ca8f18965564505d5f75626292f9f0507
|
7
|
+
data.tar.gz: 5414a05c469f5c7014f834406658fe3ff7a53400cf9d0b01d2b3f14af43513c732769f95adce490cf37095069cf1d9ca7adc321e329774f440435986ec42ee5a
|
data/README.md
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
A [GLI](https://github.com/davetron5000/gli) based command-line tool for deploying applications on [AWS EC2 Container Service (ECS)](https://aws.amazon.com/ecs/)
|
4
4
|
|
5
|
+
### [The wiki](https://github.com/lumoslabs/broadside/wiki) has all kinds of useful information on it so don't just rely on this README.
|
6
|
+
|
5
7
|
## Overview
|
6
8
|
Amazon ECS presents a low barrier to entry for production-level docker applications. Combined with ECS's built-in blue-green deployment, Elastic Load Balancers, Autoscale Groups, and CloudWatch, one can theoretically set up a robust cluster that can scale to serve any number of applications in a short amount of time. The ECS GUI, CLI, overall architecture are not the easiest to work with, however, so Broadside seeks to leverage the [ECS ruby API](http://docs.aws.amazon.com/sdkforruby/api/Aws/ECS.html) to dramatically simplify and improve the configuration and deployment process for developers, offering a simple command line interface and configuration format that should meet most needs.
|
7
9
|
|
@@ -102,4 +104,15 @@ For full application setup, see the [detailed instructions in the wiki](https://
|
|
102
104
|
Use the `--debug` switch to enable stacktraces and debug output.
|
103
105
|
|
104
106
|
## Contributing
|
105
|
-
Pull requests, bug reports, and feature suggestions are welcome!
|
107
|
+
Pull requests, bug reports, and feature suggestions are welcome!
|
108
|
+
|
109
|
+
Before starting on a contribution, we recommend opening an issue or replying to an existing one to give others some initial context on the work needing to be done.
|
110
|
+
|
111
|
+
**Specs must pass on pull requests for them to be considered.**
|
112
|
+
|
113
|
+
### Running Specs
|
114
|
+
Broadside has a lot of tests for most of its behaviors - just run
|
115
|
+
```
|
116
|
+
bundle exec rspec
|
117
|
+
```
|
118
|
+
in the broadside directory. Don't open pull requests without passing specs.
|
@@ -152,7 +152,7 @@ module Broadside
|
|
152
152
|
desired_count: scale,
|
153
153
|
service: family,
|
154
154
|
task_definition: task_definition_arn
|
155
|
-
}.deep_merge(@target.
|
155
|
+
}.deep_merge(@target.service_config_for_update || {}))
|
156
156
|
|
157
157
|
unless update_service_response.successful?
|
158
158
|
raise EcsError, "Failed to update service:\n#{update_service_response.pretty_inspect}"
|
data/lib/broadside/target.rb
CHANGED
@@ -44,6 +44,14 @@ module Broadside
|
|
44
44
|
record.errors.add(attr, 'is not an array of strings') unless val.is_a?(Array) && val.all? { |v| v.is_a?(String) }
|
45
45
|
end
|
46
46
|
|
47
|
+
CREATE_ONLY_SERVICE_ATTRIBUTES = %i(
|
48
|
+
client_token
|
49
|
+
load_balancers
|
50
|
+
placement_constraints
|
51
|
+
placement_strategy
|
52
|
+
role
|
53
|
+
).freeze
|
54
|
+
|
47
55
|
def initialize(name, options = {})
|
48
56
|
@name = name
|
49
57
|
|
@@ -93,5 +101,9 @@ module Broadside
|
|
93
101
|
Cluster: @cluster
|
94
102
|
}
|
95
103
|
end
|
104
|
+
|
105
|
+
def service_config_for_update
|
106
|
+
service_config.try(:except, *CREATE_ONLY_SERVICE_ATTRIBUTES)
|
107
|
+
end
|
96
108
|
end
|
97
109
|
end
|
data/lib/broadside/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: broadside
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Leung
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-03-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|