Skip to content

Commit

Permalink
Merge b0b1a21 into 1180e8f
Browse files Browse the repository at this point in the history
  • Loading branch information
sonodar committed Dec 2, 2020
2 parents 1180e8f + b0b1a21 commit 0a8e2ec
Show file tree
Hide file tree
Showing 21 changed files with 41 additions and 43 deletions.
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
language: ruby
sudo: false
cache: bundler
env:
global:
- AWS_REGION="ap-northeast-1"
- secure: "pdtydri6wzvAidSbT0VzAsQmzkm97I6WGMtO+eAL1Sxg5WYQ3qTiq/yNSzZNZiSz/fxOurCjbtbGulzS/ycal11XAEFq+A5S5d5anfi9YTMx+e4xQI39kMoiHvwGrMzU2EndKW3TX7NQ3/IZ/wkuLgImM2I2C2N1EPFxvcPbGPPF9sb9EM6dY5aEWhtkF5Y1I0/eC/WOtIpG5pc/JBYbb9D9YLlF0CeYVPKxrLdNI9RdsR4ihpD5PwGWHEOZkswkTYtp/xyAIhOMBJNlcDYFll0v0DzgnGiU7XXSMGb9XS6NlHTRQURjVIiyzxyFAcAYIeItTUOPhoPsTuD+mxOVCny6bv/4UlO9fTNTpPWLd6dpD/vrLkAz2fR73ImRms3LSwIoFbQzRsAtFEwipxPEJRLQODFoBmJgg2bkNBRGkXmgP9Ys0bVdIQhdqzJOtKdktVUxCfhV0x58hWM9oCbw/wYit3bapP8QmPxVyulkK+RWVSj9CIFyfL333uau0DGMofGxU7OBgwEhw5a87VDyg5s7I2KbeXLJ4LWXrYzTwz9tgvAo+90aOgyMYokSEIxMZ2lxob2qHrIz/xqPEUONssmLOXehwt43durBn/9sX6Dis2QfpeMcHkA+QnUSuBwqNgkobizR/8uzDhG61kBFIKriv3KBqSckaX+T7YGtlK8="
- secure: "FgxC/oxddf72rc/pf7EzA8UpT6iqYWQUetRvyQPL1eey4XjP0N4bP535IqTUnYpLed2RZmtbSzcm5mjry6Ba/VGliaIA9S/EQKHQHmBKUGhNkqGzhqjHrnwUvXncmbr6N8bqinaq/2WSYZ/XMVBn8m+lESF3pgEiximaieZnO1HYD7RgZJclPET5qqG4jHqpVBCLa67Gz4MdAWRLci8rksTazXOnxA4y/xPZKcIHfaW//IC+dUXWK5egCERAplkh+aJhK0w3vUCv9XAuvzKFeKVljaVuGnZmLuezMwJYqpIJhP4TiAQIb9JR7JZZ1LTH6Iuk8VJsOmyrFG4jMbXkfwWKQ/e1zRoKuNvmjG/V1YU56NONMSqIiAYesv3yrnJDgfPeaye3fUgAaLSRNhGR+4dSPuEsCcfbOHU0s4AArp4Q2hlnvJ0VdnaAZJXj8lfQhLRXOh8wQbjoFLwuwptxfb5k5WBtf6jsfmax4P4v0JIkzVopNkfSwgHJFYx35i44fmtRoZEsdxPMdURpE4GJELTlTViuDkbJYpkbSUYEomQbvCSb7pb1UFsKTz5tpbStt1Qmm4eUwXDnhD9dWnBZgHnFShdj1c9527OE5tOl7yIIueUxQ+xqN5wFF2MaOr9sm2/DMXwkBApGIF9y+u/J7zS8GsX7kpK5hkyU8eE/9dA="
rvm:
- 2.4
- 2.5
- 2.6
- 2.7
Expand Down
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@

- Add ruby 2.7 to Travis CI test matrix #7
- Fix for early abort when next_token is not null #8
- drop ruby 2.4 support, and fix warnings #11

## 0.1.1 (2018-01-16)

- Translate README.
- Added ruby 2.5 tests.

2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
source 'https://rubygems.org'
gemspec
gem 'coveralls', require: false
gem 'coveralls', '~> 0.8.23', require: false
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The naming of environment variables is optional and can be customized.

## Installation

This gem has been tested with ruby version 2.4 to 2.7.
This gem has been tested with ruby version 2.5 to 2.7.

```
gem install aws-ssm-env
Expand Down
2 changes: 1 addition & 1 deletion README_ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ AWS EC2 Parameter Storeから取得したパラメータを環境変数として

## Installation

このgemはRuby2.4から2.7まででテストされています。
このgemはRuby2.5から2.7まででテストされています。

```
gem install aws-ssm-env
Expand Down
4 changes: 2 additions & 2 deletions aws-ssm-env.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Gem::Specification.new do |spec|
spec.test_files = `git ls-files spec`.split($OUTPUT_RECORD_SEPARATOR)
spec.require_paths = ['lib']

spec.required_ruby_version = '>= 2.4'
spec.required_ruby_version = '>= 2.5'
spec.metadata = {
'source_code_uri' => 'https://github.com/sonodar/aws-ssm-env-ruby',
'changelog_uri' => 'https://github.com/sonodar/aws-ssm-env-ruby/tree/master/CHANGELOG.md'
Expand All @@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
spec.add_development_dependency 'rspec'
spec.add_development_dependency 'rubocop', '~>0.48.1'
spec.add_development_dependency 'rubocop-rspec'
spec.add_development_dependency 'simplecov'
spec.add_development_dependency 'simplecov', '~> 0.16.1'
spec.add_development_dependency 'simplecov-console'

end
4 changes: 2 additions & 2 deletions lib/aws-ssm-env.rb
Original file line number Diff line number Diff line change
Expand Up @@ -149,12 +149,12 @@ module AwsSsmEnv
#
# @see AwsSsmEnv::Loader#load
def load(**args)
AwsSsmEnv::Loader.load(args)
AwsSsmEnv::Loader.load(**args)
end

# `overwrite`オプションを付与した AwsSsmEnv::Loader#load の委譲メソッド。
# @see AwsSsmEnv::Loader#load
def load!(**args)
AwsSsmEnv::Loader.load(args.merge(overwrite: true))
AwsSsmEnv::Loader.load(**args.merge(overwrite: true))
end
end
4 changes: 2 additions & 2 deletions lib/aws-ssm-env/fetcher.rb
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ class Fetcher
#
# @see http://docs.aws.amazon.com/sdk-for-ruby/v3/api/index.html
def initialize(**args)
@client = create_ssm_client(args)
@with_decryption = with_decryption?(args)
@client = create_ssm_client(**args)
@with_decryption = with_decryption?(**args)
end

# Iteratorパターンを実装したメソッド。AwsSsmEnv#load から呼び出される。
Expand Down
2 changes: 1 addition & 1 deletion lib/aws-ssm-env/fetchers/begins_with.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class BeginsWithFetcher < Fetcher
# @option args [Integet] :fetch_size <optional> 一度のAPI実行で取得するパラメータ数。最大50。デフォルトは50。
def initialize(**args)
super
@base_params = base_params(args)
@base_params = base_params(**args)
end

protected
Expand Down
14 changes: 7 additions & 7 deletions lib/aws-ssm-env/fetchers/factory.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ def create_fetcher(**args)
fetch_type = args[:fetch]
case fetch_type
when nil
default_fetcher(args)
default_fetcher(**args)
when PATH_FETCHER
create_path_fetcher(args)
create_path_fetcher(**args)
when BEGINS_WITH_FETCHER
create_begins_with_fetcher(args)
create_begins_with_fetcher(**args)
else
unless fetcher_instance?(fetch_type)
raise ArgumentError, 'Possible values for :fetch are either :path, :begins_with, ' \
Expand All @@ -37,20 +37,20 @@ def create_fetcher(**args)

def default_fetcher(**args)
if args.key?(:begins_with)
create_begins_with_fetcher(args)
create_begins_with_fetcher(**args)
else
create_path_fetcher(args)
create_path_fetcher(**args)
end
end

def create_path_fetcher(**args)
require 'aws-ssm-env/fetchers/path'
AwsSsmEnv::PathFetcher.new(args)
AwsSsmEnv::PathFetcher.new(**args)
end

def create_begins_with_fetcher(**args)
require 'aws-ssm-env/fetchers/begins_with'
AwsSsmEnv::BeginsWithFetcher.new(args)
AwsSsmEnv::BeginsWithFetcher.new(**args)
end

def fetcher_instance?(object)
Expand Down
2 changes: 1 addition & 1 deletion lib/aws-ssm-env/fetchers/path.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ class PathFetcher < Fetcher
# @option args [Integer] :fetch_size <optional> 一度のAPI実行で取得するパラメータ数。最大10。デフォルトは10。
def initialize(**args)
super
@base_params = base_params(args)
@base_params = base_params(**args)
end

protected
Expand Down
10 changes: 5 additions & 5 deletions lib/aws-ssm-env/loader.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ module AwsSsmEnv
class Loader
# メイン処理。引数の詳細は AwsSsmEnv#load を参照。
def self.load(**args)
new(args).load
new(**args).load
end

def initialize(**args)
parse_options(args)
parse_options(**args)
if @logger
@logger.debug("#{self.class.name} overwrite: #{@overwrite}")
@logger.debug("#{self.class.name} fetcher: #{@fetcher}")
Expand All @@ -34,9 +34,9 @@ def load

def parse_options(**options)
@logger = options[:logger]
@fetcher = AwsSsmEnv::FetcherFactory.create_fetcher(options)
@naming_strategy = AwsSsmEnv::NamingStrategyFactory.create_naming_strategy(options)
@overwrite = overwrite?(options)
@fetcher = AwsSsmEnv::FetcherFactory.create_fetcher(**options)
@naming_strategy = AwsSsmEnv::NamingStrategyFactory.create_naming_strategy(**options)
@overwrite = overwrite?(**options)
if @overwrite
@applier = :apply!
else
Expand Down
12 changes: 6 additions & 6 deletions lib/aws-ssm-env/naming_strategies/factory.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ class << self
def create_naming_strategy(**args)
naming_strategy = args[:naming]
if naming_strategy.nil?
return default_strategy(args)
return default_strategy(**args)
end
case naming_strategy
when BASENAME_STRATEGY
create_basename_strategy(args)
create_basename_strategy(**args)
when SNAKE_CASE_STRATEGY
create_snakecase_strategy(args)
create_snakecase_strategy(**args)
else
unknown_naming_strategy(naming_strategy)
end
Expand All @@ -33,17 +33,17 @@ def create_naming_strategy(**args)
private

def default_strategy(**args)
create_basename_strategy(args)
create_basename_strategy(**args)
end

def create_basename_strategy(**args)
require 'aws-ssm-env/naming_strategies/basename'
AwsSsmEnv::BasenameNamingStrategy.new(args)
AwsSsmEnv::BasenameNamingStrategy.new(**args)
end

def create_snakecase_strategy(**args)
require 'aws-ssm-env/naming_strategies/snakecase'
AwsSsmEnv::SnakeCaseNamingStrategy.new(args)
AwsSsmEnv::SnakeCaseNamingStrategy.new(**args)
end

def unknown_naming_strategy(naming_strategy)
Expand Down
4 changes: 2 additions & 2 deletions lib/aws-ssm-env/naming_strategies/snakecase.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ class SnakeCaseNamingStrategy < NamingStrategy
# アンダースコアに変換する区切り文字。デフォルトはスラッシュ('/')。 TODO: AwsSsmEnv#loadとREADMEに反映
def initialize(**args)
@logger = args[:logger]
@delimiter = detect_delimiter(args)
removed_prefix = detect_prefix(args).sub(%r{/\z}, '')
@delimiter = detect_delimiter(**args)
removed_prefix = detect_prefix(**args).sub(%r{/\z}, '')
@removed_prefix = /\A#{Regexp.escape(removed_prefix)}/
@logger.debug("#{self.class.name} removed_prefix is #{@removed_prefix}") if @logger
end
Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/fetcher_spec.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
require 'spec_helper'

describe AwsSsmEnv::Fetcher do
let(:fetcher) { described_class.new(args) }
let(:fetcher) { described_class.new(**args) }
let(:args) { {} }
let(:client) { fetcher.send(:client) }
let(:ssm_client_args) {
Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/fetchers/begins_with_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
require 'aws-ssm-env/fetchers/begins_with'

describe AwsSsmEnv::BeginsWithFetcher do
let(:fetcher) { described_class.new(args) }
let(:fetcher) { described_class.new(**args) }
let(:args) { { begins_with: [ '/foo', '/bar' ] } }
let(:base_params) { fetcher.instance_variable_get(:'@base_params') }
let(:parameter_filter) { base_params[:parameter_filters][0] }
Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/fetchers/factory_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

describe AwsSsmEnv::FetcherFactory do
describe '#create_fetcher' do
let(:fetcher) { described_class.create_fetcher(args) }
let(:fetcher) { described_class.create_fetcher(**args) }

context 'when fetch was not set' do
context 'when begins_with was not set' do
Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/fetchers/path_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
require 'aws-ssm-env/fetchers/path'

describe AwsSsmEnv::PathFetcher do
let(:fetcher) { described_class.new(args) }
let(:fetcher) { described_class.new(**args) }
let(:args) { { path: '/path' } }
let(:base_params) { fetcher.instance_variable_get(:'@base_params') }

Expand Down
6 changes: 3 additions & 3 deletions spec/aws-ssm-env/loader_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
let(:args) { { path: '/foo' } }

describe '#initialize' do
let(:loader) { described_class.new(args) }
let(:loader) { described_class.new(**args) }

it 'has fetcher and naming_strategy' do
expect(loader.instance_variable_get(:@fetcher)).to be_a(AwsSsmEnv::PathFetcher)
Expand Down Expand Up @@ -52,7 +52,7 @@
ENV['foo'] = nil
ENV['fizz'] = 'fizz'

loader = described_class.new(args)
loader = described_class.new(**args)
loader.instance_variable_set(:@fetcher,
[ Parameter.new('foo', 'bar'), Parameter.new('fizz', 'buzz') ])

Expand All @@ -70,7 +70,7 @@
ENV['foo'] = nil
ENV['fizz'] = 'fizz'

loader = described_class.new(args)
loader = described_class.new(**args)
loader.instance_variable_set(:@fetcher,
[ Parameter.new('foo', 'bar'), Parameter.new('fizz', 'buzz') ])

Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/naming_strategies/factory_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

describe AwsSsmEnv::NamingStrategyFactory do
describe '#create_naming_strategy' do
let(:naming_strategy) { described_class.create_naming_strategy(args) }
let(:naming_strategy) { described_class.create_naming_strategy(**args) }

context 'when naming was not set' do
let(:args) { { naming: nil } }
Expand Down
2 changes: 1 addition & 1 deletion spec/aws-ssm-env/naming_strategies/snakecase_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
require 'aws-ssm-env/naming_strategies/snakecase'

describe AwsSsmEnv::SnakeCaseNamingStrategy do
let(:strategy) { described_class.new(args) }
let(:strategy) { described_class.new(**args) }
let(:name) { 'path.to.db/password' }
let(:env_name) { strategy.parse_name(Parameter.new(name)) }

Expand Down

0 comments on commit 0a8e2ec

Please sign in to comment.