ecs_helper 0.0.18 → 0.0.22

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3a6e09d4b2a2ed874777c4f686fb7bf40507040f5c8a60be784daa676cedc60c
4
- data.tar.gz: 7c835b8c82e2afae8fb43ad4bd507103613969b6243e7de3c0d856436da78008
3
+ metadata.gz: 2aad1449589dfa716e00c39044d4d41a26be0d6259a58dd7d3afbc12aa04f080
4
+ data.tar.gz: 7adf8d5400ae6b72f1e95a6ea28eebf36680991d4159c581a4724e57e40441f2
5
5
  SHA512:
6
- metadata.gz: 8cd0385459adf1e598f2cd84afd90ea6580d2bade9f5cd5e61bb1d7b3310c7ea3b0951036208be63f12b65791f93ef5096cd672ef1528edc0a727827ab6c9d2d
7
- data.tar.gz: abc89010d228f7e7c8b7dd0b04e72f5f1a590959ff4c59ca4fc9810f8ba5274680a24464dd9b1ae90cd1469054bcad6f66f84c9d5b3d55ad1d83897b3f4a041d
6
+ metadata.gz: e05baf049896f3e556a782625a458ef2eb5b82700b3dec40de575d94b9052be752422bc26250e2025a91569c5a41e6f758f2ec33c2598d6d2642ac688606477b
7
+ data.tar.gz: 7f1af6a600d59038880b9edb87b32f670ca52721d960b634a2da49a3c825d9e80d583bec6aa8a79d49da20c351dc44cbaad0b39857ace8af7dd8f0b2fce07c18
data/.gitignore ADDED
@@ -0,0 +1,13 @@
1
+ /.bundle
2
+
3
+ /log/*
4
+ /tmp/*
5
+ !/log/.keep
6
+ !/tmp/.keep
7
+ *.gem
8
+
9
+ .aws
10
+ .env
11
+ tmp
12
+ coverage/
13
+
data/Dockerfile ADDED
@@ -0,0 +1,15 @@
1
+ FROM ruby:3.0.2-alpine3.12
2
+
3
+ RUN apk update && apk upgrade
4
+ RUN apk add bash
5
+ RUN apk add curl-dev ruby-dev build-base git curl ruby-json openssl apache2-utils sqlite-libs sqlite sqlite-dev
6
+
7
+ RUN mkdir -p /gem
8
+ WORKDIR /gem
9
+
10
+ COPY lib/ecs_helper/version.rb /gem/lib/ecs_helper/
11
+ COPY ecs_helper.gemspec /gem/
12
+ COPY Gemfile* /gem/
13
+ RUN bundle install --jobs 4
14
+
15
+ COPY . /gem
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+ gemspec
5
+
6
+ gem 'coveralls', require: false
data/Gemfile.lock ADDED
@@ -0,0 +1,124 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ ecs_helper (0.0.22)
5
+ aws-sdk-ecr (~> 1.42, >= 1.42)
6
+ aws-sdk-ecrpublic (~> 1.3, >= 1.3)
7
+ aws-sdk-ecs (~> 1.80, >= 1.80)
8
+ colorize (~> 0.8, >= 0.8)
9
+ json (~> 2.5, >= 2.5)
10
+ terrapin (~> 0.6, >= 0.6)
11
+
12
+ GEM
13
+ remote: https://rubygems.org/
14
+ specs:
15
+ addressable (2.8.0)
16
+ public_suffix (>= 2.0.2, < 5.0)
17
+ ast (2.4.2)
18
+ awesome_print (1.9.2)
19
+ aws-eventstream (1.2.0)
20
+ aws-partitions (1.496.0)
21
+ aws-sdk-core (3.121.0)
22
+ aws-eventstream (~> 1, >= 1.0.2)
23
+ aws-partitions (~> 1, >= 1.239.0)
24
+ aws-sigv4 (~> 1.1)
25
+ jmespath (~> 1.0)
26
+ aws-sdk-ecr (1.45.0)
27
+ aws-sdk-core (~> 3, >= 3.120.0)
28
+ aws-sigv4 (~> 1.1)
29
+ aws-sdk-ecrpublic (1.6.0)
30
+ aws-sdk-core (~> 3, >= 3.120.0)
31
+ aws-sigv4 (~> 1.1)
32
+ aws-sdk-ecs (1.85.0)
33
+ aws-sdk-core (~> 3, >= 3.120.0)
34
+ aws-sigv4 (~> 1.1)
35
+ aws-sigv4 (1.4.0)
36
+ aws-eventstream (~> 1, >= 1.0.2)
37
+ byebug (11.1.3)
38
+ climate_control (0.2.0)
39
+ coderay (1.1.3)
40
+ colorize (0.8.1)
41
+ coveralls (0.8.23)
42
+ json (>= 1.8, < 3)
43
+ simplecov (~> 0.16.1)
44
+ term-ansicolor (~> 1.3)
45
+ thor (>= 0.19.4, < 2.0)
46
+ tins (~> 1.6)
47
+ crack (0.4.5)
48
+ rexml
49
+ docile (1.4.0)
50
+ hashdiff (1.0.1)
51
+ jmespath (1.4.0)
52
+ json (2.5.1)
53
+ method_source (1.0.0)
54
+ minitest (5.14.4)
55
+ parallel (1.20.1)
56
+ parser (3.0.2.0)
57
+ ast (~> 2.4.1)
58
+ pry (0.13.1)
59
+ coderay (~> 1.1)
60
+ method_source (~> 1.0)
61
+ pry-byebug (3.9.0)
62
+ byebug (~> 11.0)
63
+ pry (~> 0.13.0)
64
+ pry-inline (1.0.7)
65
+ pry (> 0.10.0)
66
+ unicode (~> 0.4.4)
67
+ public_suffix (4.0.6)
68
+ rainbow (3.0.0)
69
+ rake (13.0.6)
70
+ regexp_parser (2.1.1)
71
+ rexml (3.2.5)
72
+ rubocop (1.20.0)
73
+ parallel (~> 1.10)
74
+ parser (>= 3.0.0.0)
75
+ rainbow (>= 2.2.2, < 4.0)
76
+ regexp_parser (>= 1.8, < 3.0)
77
+ rexml
78
+ rubocop-ast (>= 1.9.1, < 2.0)
79
+ ruby-progressbar (~> 1.7)
80
+ unicode-display_width (>= 1.4.0, < 3.0)
81
+ rubocop-ast (1.11.0)
82
+ parser (>= 3.0.1.1)
83
+ rubocop-minitest (0.15.0)
84
+ rubocop (>= 0.90, < 2.0)
85
+ ruby-progressbar (1.11.0)
86
+ simplecov (0.16.1)
87
+ docile (~> 1.1)
88
+ json (>= 1.8, < 3)
89
+ simplecov-html (~> 0.10.0)
90
+ simplecov-html (0.10.2)
91
+ sync (0.5.0)
92
+ term-ansicolor (1.7.1)
93
+ tins (~> 1.0)
94
+ terrapin (0.6.0)
95
+ climate_control (>= 0.0.3, < 1.0)
96
+ thor (1.1.0)
97
+ tins (1.29.1)
98
+ sync
99
+ unicode (0.4.4.4)
100
+ unicode-display_width (2.0.0)
101
+ webmock (3.14.0)
102
+ addressable (>= 2.8.0)
103
+ crack (>= 0.3.2)
104
+ hashdiff (>= 0.4.0, < 2.0.0)
105
+
106
+ PLATFORMS
107
+ x86_64-linux-musl
108
+
109
+ DEPENDENCIES
110
+ awesome_print
111
+ bundler (~> 2.2)
112
+ coveralls
113
+ ecs_helper!
114
+ minitest
115
+ pry
116
+ pry-byebug
117
+ pry-inline
118
+ rake
119
+ rubocop
120
+ rubocop-minitest
121
+ webmock
122
+
123
+ BUNDLED WITH
124
+ 2.2.22
data/Rakefile ADDED
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rake/testtask'
5
+
6
+ Rake::TestTask.new(:test) do |t|
7
+ t.libs << 'test'
8
+ t.libs << 'lib'
9
+ t.test_files = FileList['test/**/*_test.rb']
10
+ end
11
+
12
+ task default: :test
data/bin/console ADDED
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require 'bundler/setup'
5
+ require 'ecs_helper'
6
+
7
+ # You can add fixtures and/or initialization code here to make experimenting
8
+ # with your gem easier. You can also use a different console, if you like.
9
+
10
+ # (If you use this, don't forget to add pry to your Gemfile!)
11
+ require 'pry'
12
+ Pry.start
data/bin/ecs_helper CHANGED
@@ -1,6 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
4
+ require 'bundler/setup'
3
5
  require 'ecs_helper'
4
6
 
5
7
  helper = ECSHelper.new
6
- helper.run
8
+ helper.run
@@ -0,0 +1,31 @@
1
+ version: "3.7"
2
+
3
+ services:
4
+ gem:
5
+ build: .
6
+ volumes:
7
+ - ./:/gem:cached
8
+ - ~/.ssh:/root/.ssh
9
+ - ~/.bash_history:/root/.bash_history
10
+ - ~/.pryrc:/root/.pryrc
11
+ - bundle_cache:/bundle_cache
12
+ environment:
13
+ - AWS_REGION
14
+ - AWS_DEFAULT_REGION
15
+ - AWS_ACCESS_KEY_ID
16
+ - AWS_SECRET_ACCESS_KEY
17
+ - AWS_SESSION_TOKEN
18
+ - AWS_SECURITY_TOKEN
19
+ - AWS_SESSION_EXPIRATION
20
+ - BUNDLE_PATH=/bundle_cache
21
+ - GEM_HOME=/bundle_cache
22
+ - GEM_PATH=/bundle_cache
23
+
24
+ bundle_cache:
25
+ image: busybox
26
+ volumes:
27
+ - bundle_cache:/bundle_cache
28
+
29
+ volumes:
30
+ bundle_cache:
31
+ public:
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path('lib', __dir__)
4
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
+ require 'ecs_helper/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'ecs_helper'
9
+ s.version = ECSHelper::VERSION
10
+ s.summary = 'ECSHelper'
11
+ s.description = 'A simple gem which make CI CD process easier for AWS ECS service'
12
+ s.authors = ['Artem Petrov']
13
+ s.email = 'artem.petrov@dualbootpartners.com'
14
+ s.files = Dir['lib/**/*.rb']
15
+ s.bindir = 'bin'
16
+ s.executables << 'ecs_helper'
17
+ s.homepage = 'https://github.com/artempartos/ecs_helper'
18
+ s.license = 'MIT'
19
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20
+ s.require_paths = ['lib']
21
+
22
+ s.add_development_dependency 'awesome_print'
23
+ s.add_development_dependency 'minitest'
24
+ s.add_development_dependency 'pry'
25
+ s.add_development_dependency 'pry-byebug'
26
+ s.add_development_dependency 'pry-inline'
27
+ s.add_development_dependency 'rubocop'
28
+ s.add_development_dependency 'rubocop-minitest'
29
+ s.add_development_dependency 'webmock'
30
+
31
+ s.add_development_dependency "bundler", "~> 2.2"
32
+ s.add_development_dependency "rake"
33
+
34
+ s.add_runtime_dependency 'aws-sdk-ecr', '~> 1.42', '>= 1.42'
35
+ s.add_runtime_dependency 'aws-sdk-ecrpublic', '~> 1.3', '>= 1.3'
36
+ s.add_runtime_dependency 'aws-sdk-ecs', '~> 1.80', '>= 1.80'
37
+ s.add_runtime_dependency 'colorize', '~> 0.8', '>= 0.8'
38
+ s.add_runtime_dependency 'json', '~> 2.5', '>= 2.5'
39
+ s.add_runtime_dependency 'terrapin', '~> 0.6', '>= 0.6'
40
+
41
+ end
@@ -1,16 +1,29 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'terrapin'
2
4
 
3
5
  class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
4
-
5
6
  def cmd_option_parser
6
- options = {}
7
+ options = { build_args: [] }
7
8
  parser = ::OptionParser.new do |opts|
8
- opts.banner = "Usage: ecs_helper build_and_push [options]"
9
- opts.on("-i VALUE", "--image VALUE", "Set image name, will be used to detect ecr repo where to push image, for example web/nginx/toolbox (required)") { |c| options[:image] = processEqual(c) }
10
- opts.on("-d VALUE", "--directory VALUE", "Set directory for dockerfile and context, default = './'") { |c| options[:directory] = processEqual(c) }
11
- opts.on("-p VALUE", "--project VALUE", "Set project name, if not specified will look at ENV['PROJECT'], will be used to detect cluster") { |p| options[:project] = processEqual(p) }
12
- opts.on("-a VALUE", "--application VALUE", "Set application name, if not specified will look at ENV['APPLICATION'], will be used to detect service and task definition") { |a| options[:application] = processEqual(a) }
13
- opts.on("-c", "--cache", "Cache image before build, default false") { options[:cache] = true }
9
+ opts.banner = 'Usage: ecs_helper build_and_push [options]'
10
+ opts.on('-i VALUE', '--image VALUE',
11
+ 'Set image name, will be used to detect ecr repo where to push image, for example web/nginx/toolbox (required)') do |c|
12
+ options[:image] = processEqual(c)
13
+ end
14
+ opts.on('-d VALUE', '--directory VALUE', "Set directory for dockerfile and context, default = './'") do |c|
15
+ options[:directory] = processEqual(c)
16
+ end
17
+ opts.on('-p VALUE', '--project VALUE',
18
+ "Set project name, if not specified will look at ENV['PROJECT'], will be used to detect cluster") do |p|
19
+ options[:project] = processEqual(p)
20
+ end
21
+ opts.on('-a VALUE', '--application VALUE',
22
+ "Set application name, if not specified will look at ENV['APPLICATION'], will be used to detect service and task definition") do |a|
23
+ options[:application] = processEqual(a)
24
+ end
25
+ opts.on('-c', '--cache', 'Cache image before build, default false') { options[:cache] = true }
26
+ opts.on('--build-arg=VALUE', 'Pass --build-arg to the build command') { |o| options[:build_args] << o }
14
27
  end
15
28
  [parser, options]
16
29
  end
@@ -24,19 +37,13 @@ class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
24
37
  log("Options", options)
25
38
  log("Repository", repository)
26
39
  log("Auth Private", auth_private)
27
- log("Auth Public", auth_public)
28
40
  should_cache? && log("Pull", pull)
29
41
  log("Build", build)
30
42
  log("Push", push)
31
43
  end
32
44
 
33
- def auth_public
34
- auth_cmd = Terrapin::CommandLine.new("aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws")
35
- auth_cmd.run
36
- end
37
-
38
45
  def auth_private
39
- auth_cmd = Terrapin::CommandLine.new("aws ecr get-login --no-include-email | sh")
46
+ auth_cmd = Terrapin::CommandLine.new('aws ecr get-login --no-include-email | sh')
40
47
  auth_cmd.run
41
48
  end
42
49
 
@@ -53,10 +60,12 @@ class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
53
60
 
54
61
  def build
55
62
  build_command = ["docker build #{directory}"]
63
+ build_args = options[:build_args].map { |a| "--build-arg=#{a}" }
56
64
  cache_command = should_cache? ? ["--cache-from #{latest_tag}"] : []
57
65
  tags_command = ["--tag #{latest_tag} --tag #{version_tag}"]
58
- command = (build_command + cache_command + tags_command).join(' ')
66
+ command = (build_command + build_args + cache_command + tags_command).join(' ')
59
67
  build_cmd = Terrapin::CommandLine.new(command)
68
+
60
69
  puts "Building with two tags: #{latest_tag} & #{version_tag}"
61
70
  build_cmd.run
62
71
  end
@@ -73,7 +82,7 @@ class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
73
82
  end
74
83
 
75
84
  def directory
76
- options[:directory] || "./"
85
+ options[:directory] || './'
77
86
  end
78
87
 
79
88
  def latest_tag
@@ -84,12 +93,10 @@ class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
84
93
  "#{repository}:#{helper.version}"
85
94
  end
86
95
 
87
-
88
96
  def repository
89
97
  @repository ||= begin
90
- private_repos = client.private_repositories
91
- public_repos = client.public_repositories
92
- all = private_repos + public_repos
98
+ all = client.private_repositories
99
+
93
100
  with_name = all.select { |r| r.repository_arn.include?(image_name) }
94
101
  return with_name[0].repository_uri if with_name.length === 1
95
102
 
@@ -99,4 +106,4 @@ class ECSHelper::Command::BuildAndPush < ECSHelper::Command::Base
99
106
  raise "Can't detect ECR repository"
100
107
  end
101
108
  end
102
- end
109
+ end
@@ -17,12 +17,6 @@ class ECSHelper::Command::ECRLogin < ECSHelper::Command::Base
17
17
  def run
18
18
  log("Command", type)
19
19
  log("Auth Private", auth_private)
20
- log("Auth Public", auth_public)
21
- end
22
-
23
- def auth_public
24
- auth_cmd = Terrapin::CommandLine.new("aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws")
25
- auth_cmd.run
26
20
  end
27
21
 
28
22
  def auth_private
@@ -31,6 +31,7 @@ class ECSHelper::Command::ExportImages < ECSHelper::Command::Base
31
31
  def export_images
32
32
  variables = (['export'] + client.private_repositories.map do |repo|
33
33
  container_name = repo.repository_name.scan(/#{project}-#{application}-(.*)/).flatten.first
34
+ next if conainer_name.nil?
34
35
  key = container_name.upcase.gsub("-", "_") + "_IMAGE"
35
36
  value = "#{repo.repository_uri}:#{helper.version}"
36
37
  "#{key}=#{value}"
@@ -48,25 +48,3 @@ def global_option_parser
48
48
  opts.banner = "Usage: ecs_helper command [options]"
49
49
  end
50
50
  end
51
-
52
-
53
- def self.parse
54
- options = {}
55
- command = ARGV.shift
56
-
57
- unless command && Command::AVAILABLE_COMMANDS.include?(command)
58
- puts "Command not found".light_white
59
- puts "Available commands are #{Command::AVAILABLE_COMMANDS}".light_white
60
- puts global
61
- exit
62
- end
63
-
64
- subcommands_parser, required = subcommands(command, options)
65
- subcommands_parser.permute!(into: options)
66
-
67
- validate(command, options, required, subcommands_parser)
68
-
69
- [command, options]
70
- end
71
-
72
-
@@ -1,6 +1,7 @@
1
1
  BRANCH_TO_ENV_MAPPING = {
2
2
  master: 'production',
3
3
  qa: 'qa',
4
+ uat: 'uat',
4
5
  staging: 'staging',
5
6
  demo: 'demo',
6
7
  }
@@ -41,7 +41,7 @@ class ECSHelper::TaskDefinitionHelper
41
41
  end
42
42
 
43
43
  def container_definition_to_ecr(cd)
44
- repo = repo_for(cd.name)
44
+ repo = repo_for(cd)
45
45
  is_ecr = cd.image.include?(ecr_base)
46
46
  image = repo && version_image(repo)
47
47
  should_update = is_ecr && repo && image
@@ -58,18 +58,9 @@ class ECSHelper::TaskDefinitionHelper
58
58
 
59
59
  private
60
60
 
61
- def container_definition_to_ecr(cd)
62
- repo = repo_for(cd.name)
63
- is_ecr = cd.image.include?(ecr_base)
64
- image = repo && version_image(repo)
65
- should_update = is_ecr && repo && image
66
- [repo, is_ecr, image, should_update]
67
- end
68
-
69
- def repo_for(name)
61
+ def repo_for(cd)
70
62
  repositories.find do |r|
71
- uri = r.repository_uri
72
- uri.include?(helper.application) && uri.include?(helper.project) && uri.include?(name)
63
+ cd.image.include?(r.repository_uri)
73
64
  end
74
65
  end
75
66
 
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ class ECSHelper
4
+ VERSION = '0.0.22'
5
+ end
metadata CHANGED
@@ -1,35 +1,155 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ecs_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.18
4
+ version: 0.0.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artem Petrov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-27 00:00:00.000000000 Z
11
+ date: 2021-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: aws-sdk-ecs
14
+ name: awesome_print
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.80'
20
- - - "~>"
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
21
25
  - !ruby/object:Gem::Version
22
- version: '1.80'
23
- type: :runtime
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
24
35
  prerelease: false
25
36
  version_requirements: !ruby/object:Gem::Requirement
26
37
  requirements:
27
38
  - - ">="
28
39
  - !ruby/object:Gem::Version
29
- version: '1.80'
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: pry
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: pry-byebug
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry-inline
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubocop-minitest
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: webmock
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: bundler
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
30
129
  - - "~>"
31
130
  - !ruby/object:Gem::Version
32
- version: '1.80'
131
+ version: '2.2'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '2.2'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rake
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
33
153
  - !ruby/object:Gem::Dependency
34
154
  name: aws-sdk-ecr
35
155
  requirement: !ruby/object:Gem::Requirement
@@ -71,25 +191,25 @@ dependencies:
71
191
  - !ruby/object:Gem::Version
72
192
  version: '1.3'
73
193
  - !ruby/object:Gem::Dependency
74
- name: json
194
+ name: aws-sdk-ecs
75
195
  requirement: !ruby/object:Gem::Requirement
76
196
  requirements:
77
197
  - - ">="
78
198
  - !ruby/object:Gem::Version
79
- version: '2.5'
199
+ version: '1.80'
80
200
  - - "~>"
81
201
  - !ruby/object:Gem::Version
82
- version: '2.5'
202
+ version: '1.80'
83
203
  type: :runtime
84
204
  prerelease: false
85
205
  version_requirements: !ruby/object:Gem::Requirement
86
206
  requirements:
87
207
  - - ">="
88
208
  - !ruby/object:Gem::Version
89
- version: '2.5'
209
+ version: '1.80'
90
210
  - - "~>"
91
211
  - !ruby/object:Gem::Version
92
- version: '2.5'
212
+ version: '1.80'
93
213
  - !ruby/object:Gem::Dependency
94
214
  name: colorize
95
215
  requirement: !ruby/object:Gem::Requirement
@@ -110,6 +230,26 @@ dependencies:
110
230
  - - "~>"
111
231
  - !ruby/object:Gem::Version
112
232
  version: '0.8'
233
+ - !ruby/object:Gem::Dependency
234
+ name: json
235
+ requirement: !ruby/object:Gem::Requirement
236
+ requirements:
237
+ - - ">="
238
+ - !ruby/object:Gem::Version
239
+ version: '2.5'
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '2.5'
243
+ type: :runtime
244
+ prerelease: false
245
+ version_requirements: !ruby/object:Gem::Requirement
246
+ requirements:
247
+ - - ">="
248
+ - !ruby/object:Gem::Version
249
+ version: '2.5'
250
+ - - "~>"
251
+ - !ruby/object:Gem::Version
252
+ version: '2.5'
113
253
  - !ruby/object:Gem::Dependency
114
254
  name: terrapin
115
255
  requirement: !ruby/object:Gem::Requirement
@@ -137,7 +277,15 @@ executables:
137
277
  extensions: []
138
278
  extra_rdoc_files: []
139
279
  files:
280
+ - ".gitignore"
281
+ - Dockerfile
282
+ - Gemfile
283
+ - Gemfile.lock
284
+ - Rakefile
285
+ - bin/console
140
286
  - bin/ecs_helper
287
+ - docker-compose.yml
288
+ - ecs_helper.gemspec
141
289
  - lib/ecs_helper.rb
142
290
  - lib/ecs_helper/client.rb
143
291
  - lib/ecs_helper/cluster_helper.rb
@@ -152,6 +300,7 @@ files:
152
300
  - lib/ecs_helper/logging.rb
153
301
  - lib/ecs_helper/service_helper.rb
154
302
  - lib/ecs_helper/task_definition_helper.rb
303
+ - lib/ecs_helper/version.rb
155
304
  homepage: https://github.com/artempartos/ecs_helper
156
305
  licenses:
157
306
  - MIT