chambermaid 0.3.2 → 1.0.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 +4 -4
- data/.github/workflows/commitlint.yml +16 -0
- data/.github/workflows/release.yml +50 -0
- data/CHANGELOG.md +35 -0
- data/Gemfile.lock +1 -1
- data/README.md +84 -0
- data/chambermaid.gemspec +2 -0
- data/lib/chambermaid.rb +1 -0
- data/lib/chambermaid/base.rb +35 -1
- data/lib/chambermaid/environment.rb +11 -0
- data/lib/chambermaid/namespace.rb +26 -0
- data/lib/chambermaid/parameter_store.rb +29 -1
- data/lib/chambermaid/railtie.rb +8 -0
- data/lib/chambermaid/version.rb +2 -2
- metadata +9 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 22ceec060a8f34e8d44151977ff98af6ac3602b8967aca42a333a6e57ca5b398
|
4
|
+
data.tar.gz: f190c278b648d038fdd518cf2e8801f99036e9164a627682377384a8c9107932
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1b338e0bf90f75194e420c225168fd4aa873d398155b232a29e1dfa29aba1518bd6531ede6436417d6c5abae71c5a0565157c43a6261bb232de8f25344b16bd8
|
7
|
+
data.tar.gz: d58b7402d7ab7648218205336ea5bd1df88d3fbbfeaa8680cd11f9666febf8c7a990a32eab5cfdbf6e1e1bb0bf40b39e4f42e7d4f5fc568f32aa6881f83c8e7d
|
@@ -0,0 +1,16 @@
|
|
1
|
+
name: commitlint
|
2
|
+
on:
|
3
|
+
- pull_request
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
lint:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
env:
|
9
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
10
|
+
steps:
|
11
|
+
- uses: actions/checkout@v2
|
12
|
+
with:
|
13
|
+
fetch-depth: 0
|
14
|
+
- uses: wagoid/commitlint-github-action@v1
|
15
|
+
with:
|
16
|
+
failOnWarnings: true
|
@@ -0,0 +1,50 @@
|
|
1
|
+
name: release
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
branches:
|
5
|
+
- master
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
create-release:
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
env:
|
11
|
+
GITHUB_TOKEN: ${{ secrets.GHUB_PAT }}
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v2
|
14
|
+
with:
|
15
|
+
fetch-depth: 0
|
16
|
+
- uses: ridedott/release-me-action@master
|
17
|
+
id: get-version-number
|
18
|
+
with:
|
19
|
+
dry-run: true
|
20
|
+
release-rules:
|
21
|
+
'[{ "type": "release", "scope": "major", "release": "major" }]'
|
22
|
+
- uses: actions/setup-ruby@v1
|
23
|
+
with:
|
24
|
+
ruby-version: "2.6"
|
25
|
+
- run: gem install bundler -v 2.1.2
|
26
|
+
- name: Set version.rb and Gemfile.lock
|
27
|
+
run: |
|
28
|
+
printf "module Chambermaid\n VERSION = \"$NEW_VERSION\"\nend" > lib/chambermaid/version.rb
|
29
|
+
bundle install
|
30
|
+
env:
|
31
|
+
NEW_VERSION: ${{ steps.get-version-number.outputs.version }}
|
32
|
+
- run: bundle exec rake build
|
33
|
+
- uses: ridedott/release-me-action@master
|
34
|
+
with:
|
35
|
+
commit-assets: |
|
36
|
+
./lib/chambermaid/version.rb
|
37
|
+
./Gemfile.lock
|
38
|
+
release-assets: |
|
39
|
+
./pkg/*.gem
|
40
|
+
release-rules:
|
41
|
+
'[{ "type": "release", "scope": "major", "release": "major" }]'
|
42
|
+
- name: publish to rubygems
|
43
|
+
run: |
|
44
|
+
mkdir -p ~/.gem
|
45
|
+
printf -- "---\n:rubygems_api_key: $GEM_HOST_API_KEY" > ~/.gem/credentials
|
46
|
+
chmod 0600 ~/.gem/credentials
|
47
|
+
gem push pkg/chambermaid-$NEW_VERSION.gem
|
48
|
+
env:
|
49
|
+
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
|
50
|
+
NEW_VERSION: ${{ steps.get-version-number.outputs.version }}
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
## [0.5.5](https://github.com/mileszim/chambermaid/compare/v0.5.4...v0.5.5) (2020-08-03)
|
2
|
+
|
3
|
+
### Documentation
|
4
|
+
|
5
|
+
- add links to documentation and more info for rdoc ([3f7ec6d](https://github.com/mileszim/chambermaid/commit/3f7ec6ddb07478ceefef83403c1e5b9de447509a))
|
6
|
+
|
7
|
+
## [0.5.4](https://github.com/mileszim/chambermaid/compare/v0.5.3...v0.5.4) (2020-08-03)
|
8
|
+
|
9
|
+
### Bug Fixes
|
10
|
+
|
11
|
+
- **release:** chmod 0600 ~/.gem/credentials after generating ([ed85d5b](https://github.com/mileszim/chambermaid/commit/ed85d5b1d9b76762bcc50734c806a6e1cd224ad5))
|
12
|
+
|
13
|
+
## [0.5.3](https://github.com/mileszim/chambermaid/compare/v0.5.2...v0.5.3) (2020-08-03)
|
14
|
+
|
15
|
+
### Bug Fixes
|
16
|
+
|
17
|
+
- **release:** use bash end of args with printf ([fbc0ae2](https://github.com/mileszim/chambermaid/commit/fbc0ae28961c40f984e6685e5feb33799934f510))
|
18
|
+
|
19
|
+
## [0.5.2](https://github.com/mileszim/chambermaid/compare/v0.5.1...v0.5.2) (2020-08-03)
|
20
|
+
|
21
|
+
### Bug Fixes
|
22
|
+
|
23
|
+
- **release:** set rubygem api key into ~/.gem/credentials ([7faef58](https://github.com/mileszim/chambermaid/commit/7faef587631284c3bb89c22572b8bce9c31172d0))
|
24
|
+
|
25
|
+
## [0.5.1](https://github.com/mileszim/chambermaid/compare/v0.5.0...v0.5.1) (2020-08-03)
|
26
|
+
|
27
|
+
### Bug Fixes
|
28
|
+
|
29
|
+
- **release:** publish to rubygems on successful release ([e019c7d](https://github.com/mileszim/chambermaid/commit/e019c7df3f43c251a5542374cc9c869fc4b00d92))
|
30
|
+
|
31
|
+
# [0.5.0](https://github.com/mileszim/chambermaid/compare/v0.4.1...v0.5.0) (2020-08-03)
|
32
|
+
|
33
|
+
### Features
|
34
|
+
|
35
|
+
- add commitlint and release workflow (#2) ([1159e69](https://github.com/mileszim/chambermaid/commit/1159e69e95701e4763fdbe08430d579c2a2a8440)), closes [#2](https://github.com/mileszim/chambermaid/issues/2)
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -4,6 +4,8 @@ Companion RubyGem for [chamber](https://github.com/segmentio/chamber).
|
|
4
4
|
|
5
5
|
Chambermaid injects AWS SSM params into your ENV. Plays nice with other ENV gems like dotenv.
|
6
6
|
|
7
|
+
- [RubyDocs](https://rubydoc.info/gems/chambermaid)
|
8
|
+
|
7
9
|
## Installation
|
8
10
|
|
9
11
|
Add this line to your application's Gemfile:
|
@@ -35,13 +37,21 @@ Chambermaid.add_service("my-chamber-service")
|
|
35
37
|
# config/initializers/chambermaid.rb
|
36
38
|
|
37
39
|
Chambermaid.configure do |config|
|
40
|
+
# Load all values from SSM Namespace path
|
38
41
|
config.add_namespace("/my/param/namespace")
|
42
|
+
|
43
|
+
# Load values from chamber-cli service
|
39
44
|
config.add_service("my-chamber-service")
|
40
45
|
|
41
46
|
# Set `overload: true` to choose these params over existing
|
42
47
|
# ones in ENV when they are merged together
|
43
48
|
config.add_namespace("/my/important/namespace", overload: true)
|
44
49
|
end
|
50
|
+
|
51
|
+
# If this is standalone ruby (not a Rails environment),
|
52
|
+
# call `Chambermaid.load!` after the configuration block
|
53
|
+
#
|
54
|
+
# Chambermaid.load!
|
45
55
|
```
|
46
56
|
|
47
57
|
**Reload SSM into ENV**
|
@@ -55,6 +65,80 @@ Chambermaid.restore!
|
|
55
65
|
Chambermaid.reset! # alias of .restore!
|
56
66
|
```
|
57
67
|
|
68
|
+
**Configure Logging**
|
69
|
+
```ruby
|
70
|
+
Chambermaid.configure do |config|
|
71
|
+
# ... other config ...
|
72
|
+
|
73
|
+
# Change log level
|
74
|
+
config.log_level = :debug
|
75
|
+
|
76
|
+
# Set custom logger instance
|
77
|
+
config.logger = MyCoolLogger.new
|
78
|
+
end
|
79
|
+
|
80
|
+
# Outside of config block
|
81
|
+
Chambermaid.log_level = :warn
|
82
|
+
```
|
83
|
+
|
84
|
+
_Note: Chambermaid.logger is set to Rails.logger automatically if including inside a rails app_
|
85
|
+
|
86
|
+
### AWS Authentication
|
87
|
+
|
88
|
+
Chambermaid expects your AWS credential configuration to live inside ENV on application load.
|
89
|
+
|
90
|
+
> **Note:** `AWS_DEFAULT_REGION` or `AWS_REGION` is **required**
|
91
|
+
|
92
|
+
You can use either:
|
93
|
+
* `AWS_ACCESS_KEY_ID`
|
94
|
+
* `AWS_SECRET_ACCESS_KEY`
|
95
|
+
|
96
|
+
or STS grants:
|
97
|
+
```bash
|
98
|
+
$ aws-vault exec my-user -- bundle exec rails server
|
99
|
+
```
|
100
|
+
> *See [aws-vault](https://github.com/99designs/aws-vault/blob/master/USAGE.md) docs for more info*
|
101
|
+
|
102
|
+
or a metadata endpoint grant:
|
103
|
+
* Available in attached Task or EC2 instance. *See [AWS Docs](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint.html) for more info.*
|
104
|
+
* Through aws-vault: `aws-vault exec -s my-user`
|
105
|
+
|
106
|
+
#### IAM Permissions Required
|
107
|
+
|
108
|
+
Since this is meant to work out of the box as a complement to [chamber cli](https://github.com/segmentio/chamber), it needs similar IAM permissions.
|
109
|
+
|
110
|
+
In this case, however, we can grant read-only to the namespace(s).
|
111
|
+
```json
|
112
|
+
{
|
113
|
+
"Version": "2012-10-17",
|
114
|
+
"Statement": [
|
115
|
+
{
|
116
|
+
"Sid": "",
|
117
|
+
"Effect": "Allow",
|
118
|
+
"Action": "ssm:DescribeParameters",
|
119
|
+
"Resource": "*"
|
120
|
+
},
|
121
|
+
{
|
122
|
+
"Sid": "",
|
123
|
+
"Effect": "Allow",
|
124
|
+
"Action": [
|
125
|
+
"ssm:GetParametersByPath",
|
126
|
+
"ssm:GetParameters",
|
127
|
+
"ssm:GetParameter",
|
128
|
+
"kms:Decrypt"
|
129
|
+
],
|
130
|
+
"Resource": [
|
131
|
+
"arn:aws:ssm:us-east-1:1234567890:parameter/my-chamber-service",
|
132
|
+
"arn:aws:kms:us-east-1:1234567890:key/258574a1-cfce-4530-9e3c-d4b07cd04115"
|
133
|
+
]
|
134
|
+
}
|
135
|
+
]
|
136
|
+
}
|
137
|
+
```
|
138
|
+
> **Note:** `Resource` array MUST include the full ARN of the key id used for chamber cli
|
139
|
+
> *(Default alias is `parameter_store_key`)*
|
140
|
+
|
141
|
+
|
58
142
|
## Development
|
59
143
|
|
60
144
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/chambermaid.gemspec
CHANGED
@@ -16,6 +16,8 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.metadata["homepage_uri"] = spec.homepage
|
17
17
|
spec.metadata["source_code_uri"] = "https://github.com/mileszim/chambermaid"
|
18
18
|
spec.metadata["changelog_uri"] = "https://github.com/mileszim/chambermaid/blob/master/CHANGELOG.md"
|
19
|
+
spec.metadata["documentation_uri"] = "https://rubydoc.info/gems/chambermaid"
|
20
|
+
spec.metadata["bug_tracker_uri"] = "https://github.com/mileszim/chambermaid/issues"
|
19
21
|
|
20
22
|
# Specify which files should be added to the gem when it is released.
|
21
23
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
data/lib/chambermaid.rb
CHANGED
data/lib/chambermaid/base.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require "logger"
|
2
|
+
|
1
3
|
require "chambermaid/environment"
|
2
4
|
require "chambermaid/namespace"
|
3
5
|
require "chambermaid/parameter_store"
|
@@ -13,7 +15,6 @@ module Chambermaid
|
|
13
15
|
|
14
16
|
def configure
|
15
17
|
yield self
|
16
|
-
load!
|
17
18
|
end
|
18
19
|
|
19
20
|
# @todo
|
@@ -104,6 +105,39 @@ module Chambermaid
|
|
104
105
|
add_namespace(service)
|
105
106
|
end
|
106
107
|
|
108
|
+
# !@attribute [r] logger
|
109
|
+
# @return [Logger]
|
110
|
+
def logger
|
111
|
+
@logger ||= Logger.new(STDOUT,
|
112
|
+
level: log_level,
|
113
|
+
progname: "Chambermaid"
|
114
|
+
)
|
115
|
+
end
|
116
|
+
|
117
|
+
# !@attribute [w] logger
|
118
|
+
# @return [Logger]
|
119
|
+
def logger=(val)
|
120
|
+
@logger = val
|
121
|
+
@logger.progname = "Chambermaid"
|
122
|
+
logger
|
123
|
+
end
|
124
|
+
|
125
|
+
# !@attribute [r] log_level
|
126
|
+
# @return [Symbol] (default = :info) current logger level
|
127
|
+
def log_level
|
128
|
+
return logger.level unless @logger.nil?
|
129
|
+
return @log_level unless @log_level.nil?
|
130
|
+
return :info
|
131
|
+
end
|
132
|
+
|
133
|
+
# !@attribute [w] log_level
|
134
|
+
# @return [Symbol] (default = :info) current logger level
|
135
|
+
def log_level=(val = :info)
|
136
|
+
@logger.level = val unless @logger.nil?
|
137
|
+
@log_level = val
|
138
|
+
val
|
139
|
+
end
|
140
|
+
|
107
141
|
private
|
108
142
|
|
109
143
|
def namespaces
|
@@ -1,4 +1,9 @@
|
|
1
1
|
module Chambermaid
|
2
|
+
# Environment keeps a set of params available to load into ENV. It also
|
3
|
+
# maintains a copy of ENV at the time of its initialization, in order to
|
4
|
+
# restore it.
|
5
|
+
#
|
6
|
+
# @attr_reader [Hash] params
|
2
7
|
class Environment < Hash
|
3
8
|
attr_reader :params
|
4
9
|
|
@@ -35,16 +40,22 @@ module Chambermaid
|
|
35
40
|
end
|
36
41
|
|
37
42
|
# Inject into ENV without overwriting duplicates
|
43
|
+
#
|
44
|
+
# @return [Hash]
|
38
45
|
def load!
|
39
46
|
each { |k, v| ENV[k] ||= v }
|
40
47
|
end
|
41
48
|
|
42
49
|
# Inject into ENV and overwrite duplicates
|
50
|
+
#
|
51
|
+
# @return [Hash]
|
43
52
|
def overload!
|
44
53
|
each { |k, v| ENV[k] = v }
|
45
54
|
end
|
46
55
|
|
47
56
|
# Restore to original ENV
|
57
|
+
#
|
58
|
+
# @return [ENV]
|
48
59
|
def unload!
|
49
60
|
ENV.replace(@_original_env)
|
50
61
|
end
|
@@ -1,4 +1,6 @@
|
|
1
1
|
module Chambermaid
|
2
|
+
# Namespaces each contain a ParameterStore and Environment instance,
|
3
|
+
# along with the overload flag
|
2
4
|
class Namespace
|
3
5
|
# @param [String] path
|
4
6
|
# @param [Boolean] overload
|
@@ -10,25 +12,48 @@ module Chambermaid
|
|
10
12
|
@env = Environment.new({})
|
11
13
|
end
|
12
14
|
|
15
|
+
# Create a namespace and immediately fetch and inject params to ENV
|
16
|
+
#
|
17
|
+
# @see Chambermaid::Namespace.load!
|
18
|
+
#
|
19
|
+
# @param [String] path
|
20
|
+
# @param [Boolean] overload
|
21
|
+
#
|
22
|
+
# @return [Chambermaid::Namespace]
|
13
23
|
def self.load!(path:, overload: false)
|
14
24
|
namespace = new(path: path, overload: overload)
|
15
25
|
namespace.load!
|
16
26
|
namespace
|
17
27
|
end
|
18
28
|
|
29
|
+
# Load ParameterStore and inject into ENV
|
30
|
+
#
|
31
|
+
# @see Chambermaid::ParameterStore#load!
|
32
|
+
# @see Chambermaid::Environment#load!
|
33
|
+
# @see Chambermaid::Environment#overload!
|
19
34
|
def load!
|
20
35
|
@store.load!
|
21
36
|
load_env!
|
22
37
|
end
|
23
38
|
|
39
|
+
# Unload params from ENV, reload ParameterStore, and inject into ENV
|
40
|
+
#
|
41
|
+
# @see Chambermaid::Environment#unload!
|
42
|
+
# @see Chambermaid::ParameterStore#reload!
|
43
|
+
# @see Chambermaid::Environment#load!
|
44
|
+
# @see Chambermaid::Environment#overload!
|
24
45
|
def reload!
|
25
46
|
@env.unload!
|
26
47
|
@store.reload!
|
27
48
|
load_env!
|
28
49
|
end
|
29
50
|
|
51
|
+
# Unload params from ENV
|
52
|
+
#
|
53
|
+
# @see Chambermaid::Environment#unload!
|
30
54
|
def unload!
|
31
55
|
@env.unload!
|
56
|
+
Chambermaid.logger.info("unloaded #{@env.size} params from ENV")
|
32
57
|
end
|
33
58
|
|
34
59
|
private
|
@@ -37,6 +62,7 @@ module Chambermaid
|
|
37
62
|
def load_env!
|
38
63
|
@env.replace(@store.params)
|
39
64
|
@overload ? @env.overload! : @env.load!
|
65
|
+
Chambermaid.logger.info("loaded #{@env.size} params into ENV from `#{@path}`")
|
40
66
|
end
|
41
67
|
end
|
42
68
|
end
|
@@ -1,30 +1,52 @@
|
|
1
1
|
require "aws-sdk-ssm"
|
2
2
|
|
3
3
|
module Chambermaid
|
4
|
+
# ParameterStore instances fetch all parameters under a namespace/path
|
5
|
+
# from AWS SSM
|
6
|
+
#
|
7
|
+
# @note AWS authentication requires configuration via ENV (IAM credentials/STS)
|
4
8
|
class ParameterStore
|
9
|
+
# @param [String] path
|
5
10
|
def initialize(path:)
|
6
11
|
@path = path
|
7
12
|
end
|
8
13
|
|
14
|
+
# Fetch and decrypt all parameters selected by a namespace/path string
|
15
|
+
#
|
16
|
+
# @return [Boolean]
|
9
17
|
def load!
|
10
18
|
fetch_ssm_params!
|
11
19
|
end
|
12
20
|
|
21
|
+
# Clear cached parameters and re-fetch parameters from AWS SSM
|
22
|
+
#
|
23
|
+
# @return [Boolean]
|
13
24
|
def reload!
|
14
25
|
clear_params!
|
15
26
|
fetch_ssm_params!
|
16
27
|
end
|
17
28
|
|
29
|
+
# Returns true if parameters have been fetched from AWS SSM
|
30
|
+
#
|
31
|
+
# @return [Boolean]
|
18
32
|
def loaded?
|
19
33
|
!@params_list.empty?
|
20
34
|
end
|
21
35
|
|
36
|
+
# Create a ParameterStore and fetch from AWS SSM immediately
|
37
|
+
#
|
38
|
+
# @see Chambermaid::ParameterStore#load!
|
39
|
+
#
|
40
|
+
# @return [Chambermaid::ParameterStore]
|
22
41
|
def self.load!(path:)
|
23
42
|
store = new(path: path)
|
24
43
|
store.load!
|
25
44
|
store
|
26
45
|
end
|
27
46
|
|
47
|
+
# ENV formatted Hash of parameters loaded from AWS SSM
|
48
|
+
#
|
49
|
+
# @return [Hash]
|
28
50
|
def params
|
29
51
|
@params ||= @param_list.map { |p|
|
30
52
|
[p.name.split("/").last.upcase, p.value]
|
@@ -40,14 +62,20 @@ module Chambermaid
|
|
40
62
|
end
|
41
63
|
|
42
64
|
def fetch_ssm_params!
|
65
|
+
Chambermaid.logger.debug("fetching AWS SSM parameters from `#{@path}`")
|
43
66
|
@param_list = []
|
44
67
|
response = nil
|
45
68
|
loop do
|
46
69
|
response = fetch_ssm_param_batch!(response&.next_token)
|
47
70
|
@param_list.concat(response.parameters)
|
48
71
|
|
49
|
-
|
72
|
+
if response.next_token
|
73
|
+
Chambermaid.logger.debug("response.next_token found, continuing fetch")
|
74
|
+
else
|
75
|
+
break
|
76
|
+
end
|
50
77
|
end
|
78
|
+
Chambermaid.logger.debug("fetched #{@param_list.size} parameters from `#{@path}`")
|
51
79
|
end
|
52
80
|
|
53
81
|
def fetch_ssm_param_batch!(next_token = nil)
|
data/lib/chambermaid/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Chambermaid
|
2
|
-
VERSION = "0.
|
3
|
-
end
|
2
|
+
VERSION = "1.0.0"
|
3
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chambermaid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miles Zimmerman
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-08-
|
11
|
+
date: 2020-08-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-ssm
|
@@ -59,9 +59,12 @@ executables: []
|
|
59
59
|
extensions: []
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
|
+
- ".github/workflows/commitlint.yml"
|
63
|
+
- ".github/workflows/release.yml"
|
62
64
|
- ".gitignore"
|
63
65
|
- ".rspec"
|
64
66
|
- ".travis.yml"
|
67
|
+
- CHANGELOG.md
|
65
68
|
- CODE_OF_CONDUCT.md
|
66
69
|
- Gemfile
|
67
70
|
- Gemfile.lock
|
@@ -76,6 +79,7 @@ files:
|
|
76
79
|
- lib/chambermaid/environment.rb
|
77
80
|
- lib/chambermaid/namespace.rb
|
78
81
|
- lib/chambermaid/parameter_store.rb
|
82
|
+
- lib/chambermaid/railtie.rb
|
79
83
|
- lib/chambermaid/version.rb
|
80
84
|
homepage: https://github.com/mileszim/chambermaid
|
81
85
|
licenses:
|
@@ -84,6 +88,8 @@ metadata:
|
|
84
88
|
homepage_uri: https://github.com/mileszim/chambermaid
|
85
89
|
source_code_uri: https://github.com/mileszim/chambermaid
|
86
90
|
changelog_uri: https://github.com/mileszim/chambermaid/blob/master/CHANGELOG.md
|
91
|
+
documentation_uri: https://rubydoc.info/gems/chambermaid
|
92
|
+
bug_tracker_uri: https://github.com/mileszim/chambermaid/issues
|
87
93
|
post_install_message:
|
88
94
|
rdoc_options: []
|
89
95
|
require_paths:
|
@@ -99,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
105
|
- !ruby/object:Gem::Version
|
100
106
|
version: '0'
|
101
107
|
requirements: []
|
102
|
-
rubygems_version: 3.
|
108
|
+
rubygems_version: 3.0.3
|
103
109
|
signing_key:
|
104
110
|
specification_version: 4
|
105
111
|
summary: Companion Ruby Gem for chamber cli
|