smps 0.5.1 → 0.5.4
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/README.md +4 -2
- data/changelog.md +48 -0
- data/exe/smps +3 -1
- data/lib/smps/client.rb +15 -7
- data/lib/smps/version.rb +1 -1
- metadata +12 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d28b459006110169081af4ffa0bbf3602cd87ec18bec0c3090f61a83031e4118
|
4
|
+
data.tar.gz: 516d0b9783c8ea2a5c4685be3240cf0526d69e9a88b79bb8121c59786e1319d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ac4b56d53277286c7ee4e5662bbc21f58ada8330263acfa9fdd574c443b37fb6825d662e4daa6c3d3e8dfdd2e2b4757aab16a91f233cc366a07687ccd41fe16c
|
7
|
+
data.tar.gz: 679c488a2b926beea73ffb4c6e58c76eff6ca36f14b4994a879f66f66e69ceb0385fd6e221eccba7f354cf93a7a3da3068bb676108d7828dac87f507f342e661
|
data/README.md
CHANGED
@@ -22,7 +22,7 @@ And then execute:
|
|
22
22
|
|
23
23
|
### CLI
|
24
24
|
|
25
|
-
After installation, 2
|
25
|
+
After installation, 2 executable scripts will be installed: `smps` & `smps-cli`:
|
26
26
|
|
27
27
|
- smps: the simple version of this utility.
|
28
28
|
- smps-cli: The thor cli executable offers a different interface.
|
@@ -122,10 +122,12 @@ Set the parameter to this value
|
|
122
122
|
|
123
123
|
## Development
|
124
124
|
|
125
|
-
After checking out the repo, run
|
125
|
+
After checking out the repo, run `./bin/setup` to install dependencies. Then, run `bundle exec rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
126
126
|
|
127
127
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
128
128
|
|
129
|
+
To test the `smps` utility on your local machine, run `bundle exec smps --help` to see command-line options.
|
130
|
+
|
129
131
|
## Contributing
|
130
132
|
|
131
133
|
We use git flow in this project. To create your pull request, you can either use the git-flow helper or
|
data/changelog.md
CHANGED
@@ -5,66 +5,114 @@ Version format based on http://semver.org/
|
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
7
|
|
8
|
+
## [0.5.4] - 2021-09-17
|
9
|
+
|
10
|
+
### Changed
|
11
|
+
|
12
|
+
- Added automatic client side throttling to avoid Aws::SSM::Errors::ThrottlingException.
|
13
|
+
|
14
|
+
## [0.5.3] - 2020-04-01
|
15
|
+
|
16
|
+
### Changed
|
17
|
+
|
18
|
+
- Don't use .to_h as it is not available on jruby (puppetserver)
|
19
|
+
|
20
|
+
## [0.5.2] - 2020-03-11
|
21
|
+
|
22
|
+
### Changed
|
23
|
+
|
24
|
+
- Make return of parameters_by_path a hash with key : value and print it cleanly on cli
|
25
|
+
|
8
26
|
## [0.5.1] - 2019-04-29
|
27
|
+
|
9
28
|
### Changed
|
29
|
+
|
10
30
|
- Updated doc.
|
11
31
|
- Lower required Ruby version for smps gem.
|
12
32
|
|
13
33
|
## [0.5.0.pre]
|
34
|
+
|
14
35
|
### Changed
|
36
|
+
|
15
37
|
- Split in 2 separate gems: smps and smps-cli.
|
16
38
|
|
17
39
|
## [0.4.1] - 2018-09-25
|
40
|
+
|
18
41
|
### Changed
|
42
|
+
|
19
43
|
- Change dependency on thor to 0.19.* to work with available native debian packages
|
20
44
|
|
21
45
|
## [0.4.0] - 2018-09-18
|
46
|
+
|
22
47
|
### Added
|
48
|
+
|
23
49
|
- New cli executable based on thor
|
24
50
|
|
25
51
|
## [0.3.4] - 2017-12-20
|
52
|
+
|
26
53
|
### Changed
|
54
|
+
|
27
55
|
- Add http timeout to region get in helper script
|
28
56
|
|
29
57
|
## [0.3.3] - 2017-11-17
|
58
|
+
|
30
59
|
### Changed
|
60
|
+
|
31
61
|
- Add next_token handling for get_parameters_by_path
|
32
62
|
|
33
63
|
## [0.3.2] - 2017-11-16
|
64
|
+
|
34
65
|
### Changed
|
66
|
+
|
35
67
|
- Set \@decrypt param to true by default
|
36
68
|
|
37
69
|
## [0.3.1] - 2017-11-16
|
70
|
+
|
38
71
|
### Added
|
72
|
+
|
39
73
|
- Test script param for fetch by_path
|
40
74
|
|
41
75
|
## [0.3.0] - 2017-10-13
|
76
|
+
|
42
77
|
### Added
|
78
|
+
|
43
79
|
- parameters_by_path method
|
44
80
|
|
45
81
|
## [0.2.3] - 2017-10-06
|
82
|
+
|
46
83
|
### Changed
|
84
|
+
|
47
85
|
- Update gem dependency specification
|
48
86
|
|
49
87
|
## [0.2.2] - 2017-10-06
|
88
|
+
|
50
89
|
### Added
|
90
|
+
|
51
91
|
- Parameters for creating / writing SecureString
|
52
92
|
|
53
93
|
## [0.2.1] - 2017-10-05
|
94
|
+
|
54
95
|
### Changed
|
96
|
+
|
55
97
|
- Class structure improvement
|
56
98
|
- move optional requires into if block
|
57
99
|
|
58
100
|
## [0.2.0] - 2017-10-05
|
101
|
+
|
59
102
|
### Added
|
103
|
+
|
60
104
|
- smps cli query script
|
61
105
|
|
62
106
|
## [0.1.3] - 2017-10-05
|
107
|
+
|
63
108
|
### Added
|
109
|
+
|
64
110
|
- ...
|
65
111
|
|
66
112
|
### Changed
|
113
|
+
|
67
114
|
- ...
|
68
115
|
|
69
116
|
### Removed
|
117
|
+
|
70
118
|
- ...
|
data/exe/smps
CHANGED
data/lib/smps/client.rb
CHANGED
@@ -9,7 +9,7 @@ module SmPs
|
|
9
9
|
# Allows querying and writing Paramstore parameters.
|
10
10
|
class Client
|
11
11
|
def initialize(options = {})
|
12
|
-
@
|
12
|
+
@options = options
|
13
13
|
@parameters = {}
|
14
14
|
end
|
15
15
|
|
@@ -41,11 +41,19 @@ module SmPs
|
|
41
41
|
next_token = params.next_token
|
42
42
|
break if next_token.nil? || next_token.empty?
|
43
43
|
end
|
44
|
-
@parameters_by_path_list
|
44
|
+
parameters_result_hash options.fetch(:path), @parameters_by_path_list
|
45
45
|
end
|
46
46
|
|
47
47
|
protected
|
48
48
|
|
49
|
+
def parameters_result_hash(path, list)
|
50
|
+
path = "#{path}/" unless path.end_with?('/')
|
51
|
+
# .to_h is not available in jruby (the puppetserver ruby version)
|
52
|
+
# list.map { |p| [p.name.gsub(/#{Regexp.escape(path)}/, ''), p.value] }.to_h
|
53
|
+
arr = list.map { |p| [p.name.gsub(/#{Regexp.escape(path)}/, ''), p.value] }
|
54
|
+
Hash[arr]
|
55
|
+
end
|
56
|
+
|
49
57
|
# Get a parameter list by path using the next_token (if provided)
|
50
58
|
def get_parameters_by_path_with_token(options, next_token = nil)
|
51
59
|
ssm_client.get_parameters_by_path(
|
@@ -82,11 +90,11 @@ module SmPs
|
|
82
90
|
# end
|
83
91
|
|
84
92
|
def initialize_ssm_client
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
93
|
+
# see https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSM/Client.html#initialize-instance_method
|
94
|
+
all_options = @options.merge(max_attempts: 10,
|
95
|
+
retry_mode: 'adaptive')
|
96
|
+
# puts all_options
|
97
|
+
Aws::SSM::Client.new(all_options)
|
90
98
|
end
|
91
99
|
end
|
92
100
|
end
|
data/lib/smps/version.rb
CHANGED
metadata
CHANGED
@@ -1,41 +1,41 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smps
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stefan - Zipkid - Goethals
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '3.0'
|
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
26
|
version: '3.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: aws-sdk-ssm
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '1.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
40
|
version: '1.0'
|
41
41
|
description: SMPS - Systems Manager Parameter Store.
|
@@ -60,23 +60,23 @@ licenses:
|
|
60
60
|
- MIT
|
61
61
|
metadata:
|
62
62
|
allowed_push_host: https://rubygems.org
|
63
|
-
post_install_message:
|
63
|
+
post_install_message:
|
64
64
|
rdoc_options: []
|
65
65
|
require_paths:
|
66
66
|
- lib
|
67
67
|
required_ruby_version: !ruby/object:Gem::Requirement
|
68
68
|
requirements:
|
69
|
-
- - "
|
69
|
+
- - ">="
|
70
70
|
- !ruby/object:Gem::Version
|
71
|
-
version: '2.
|
71
|
+
version: '2.3'
|
72
72
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - ">="
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '0'
|
77
77
|
requirements: []
|
78
|
-
rubygems_version: 3.
|
79
|
-
signing_key:
|
78
|
+
rubygems_version: 3.1.6
|
79
|
+
signing_key:
|
80
80
|
specification_version: 4
|
81
81
|
summary: SMPS - Systems Manager Parameter Store
|
82
82
|
test_files: []
|