generators_rails 0.0.5 → 0.0.6

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
  SHA1:
3
- metadata.gz: 323432ef9a1bc89dd6c87452ecffeece5d233326
4
- data.tar.gz: 440cdd4ebe5524a7a173329d69f9a680dcf0c16e
3
+ metadata.gz: 4bce5f73364ba24b1b66155736aca185e1d43163
4
+ data.tar.gz: 573a30d54a8543220ac3c99f6bc606ae6be66300
5
5
  SHA512:
6
- metadata.gz: 8cc31ee8aa8d4e511bed17e182a37bcdc0577206c8dd8836ab61917d1239ad6143a312495db539e854a8256731564169235f43339d2f4a8f35241eed79e43d5f
7
- data.tar.gz: b32944c2ae3b2c324d973c7a0a2b02a83453c8314bda2b9d6b917e0948c475d7bfb9dfce34efac8528bf318e36a034b1cb1c8735b3ac2e1fa759ecf8ebaea15a
6
+ metadata.gz: 65ef6d1b5f5e923264a97f1577860e5e517230c5b87320ae832fb0e20870c449bd2b747ad1277d07e118467df274dd0d718a217144ac1f6d618df26e63c558ac
7
+ data.tar.gz: e1df0756e198ad98d27dede109a9440b5de5fb8b0f17eaf58ef3bd7bb9b00c8b669ecac79a29e0dc098ed50b6e4e9013bff52eee6e3511cffe013721c7864213
@@ -9,8 +9,8 @@ end
9
9
 
10
10
  class Hash
11
11
  def method_missing(methodname, *params)
12
- if self.class == Hash && key?(methodname.to_s)
13
- self[methodname.to_s]
12
+ if self.class == Hash
13
+ self[methodname]||self[methodname.to_s]
14
14
  else
15
15
  super
16
16
  end
@@ -20,19 +20,21 @@ end
20
20
  namespace :docker do
21
21
  config = JSON.parse(File.read('docker/dockerconfig.json'))
22
22
  TAG = ENV['TAG'] || 'latest'
23
- desc 'exec bash for service container'
23
+ debug_yml = ENV['DEBUG_YAML'] || config.debug_yml
24
+ prod_yml = ENV['PROD_YAML'] || config.prod_yml
25
+ docker_repo = ENV['DOCKER_REPO'] || config.docker_repo
24
26
  task :bash, [:service] do |_t, args|
25
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} exec #{args[:service] || config.service_name} #{config.shell_command}")
27
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} exec #{args[:service] || config.service_name} #{config.shell_command}")
26
28
  end
27
29
 
28
30
  desc 'destroy all services container'
29
31
  task :down do |_t, _args|
30
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} down")
32
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} down")
31
33
  end
32
34
 
33
35
  desc 'run test with docker'
34
36
  task test: :up do
35
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} exec #{config.service_name} #{config.test_command}")
37
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} exec #{config.service_name} #{config.test_command}")
36
38
  end
37
39
 
38
40
  desc 'run rspec with docker'
@@ -41,22 +43,22 @@ namespace :docker do
41
43
 
42
44
  desc 'start service with docker with prod env'
43
45
  task :run do
44
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.prod_yml} up -d")
46
+ exec_cmd("TAG=#{TAG} dockese -f #{prod_yml} up -d")
45
47
  end
46
48
 
47
49
  desc 'start service with docker in debug mode '
48
50
  task :up do
49
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} up -d")
51
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} up -d")
50
52
  end
51
53
 
52
54
  desc 'debug service with docker '
53
55
  task debug: :up do
54
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} exec #{config.service_name} #{config.up_command}")
56
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} exec #{config.service_name} #{config.up_command}")
55
57
  end
56
58
 
57
59
  desc 'rubocop service with docker '
58
60
  task lint: :up do
59
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} exec -T #{config.service_name} #{config.lint_command}")
61
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} exec -T #{config.service_name} #{config.lint_command}")
60
62
  end
61
63
 
62
64
  desc 'gitpull'
@@ -66,7 +68,7 @@ namespace :docker do
66
68
 
67
69
  desc 'precheck before release'
68
70
  task precommit: %i[lint test gitpull] do |_t, _args|
69
- exec_cmd("TAG=#{TAG} docker-compose -f #{config.debug_yml} down")
71
+ exec_cmd("TAG=#{TAG} docker-compose -f #{debug_yml} down")
70
72
  hammer.say 'Precommit succeed.'
71
73
  end
72
74
 
@@ -78,17 +80,17 @@ namespace :docker do
78
80
 
79
81
  desc 'release docker image '
80
82
  task :release do |_t, _args|
81
- unless `TAG=#{TAG} docker images -f reference=#{config.image_name}:#{TAG} -q`.chop.empty?
82
- remote_image = "#{config.docker_repo}/#{config.image_name}:#{TAG}"
83
- tag_cmd = "TAG=#{TAG} docker tag #{config.image_name} #{remote_image}"
83
+ if `TAG=#{TAG} docker images -f reference=#{config.image_name}:#{TAG} -q`.chop.empty?
84
+ hammer.say('There is no local image for push')
85
+ else
86
+ remote_image = "#{docker_repo}/#{config.image_name}:#{TAG}"
87
+ tag_cmd = "TAG=#{TAG} docker tag #{config.image_name}:#{TAG} #{remote_image}"
84
88
  exec_cmd(tag_cmd)
85
89
  push_cmd = "TAG=#{TAG} docker push #{remote_image}"
86
90
  exec_cmd(push_cmd)
87
91
  rmi_cmd = "TAG=#{TAG} docker rmi #{remote_image}"
88
92
  exec_cmd(rmi_cmd)
89
93
  hammer.say('pls commit code and push it manually!!')
90
- else
91
- hammer.say('There is no local image for push')
92
94
  end
93
95
  end
94
96
  desc 'show docker config'
@@ -101,7 +103,7 @@ namespace :docker do
101
103
  desc 'parse dockerfile and docker-compose'
102
104
  task :parse do
103
105
  match = ->(rexp) { File.open(config.docker_file).grep(rexp).first.match(rexp)[1] }
104
- service_config = YAML.load_file(config.prod_yml)
106
+ service_config = YAML.load_file(prod_yml)
105
107
  image = service_config['services'][config.service_name]['image'].match(/((.*)\/)?(.*)/)
106
108
  image_name = image[3].gsub('${TAG}', ENV['TAG'] || 'latest')
107
109
  last_build_time = `docker inspect -f '{{ .Created }}' #{image_name}`.chop
@@ -131,9 +133,11 @@ namespace :docker do
131
133
 
132
134
  private
133
135
 
134
- def exec_cmd(cmdstr)
135
- hammer.say cmdstr
136
- hammer.run(cmdstr)
136
+ def exec_cmd(*cmdstr, **opt)
137
+ hammer.say cmdstr.join(' ')
138
+ ret = hammer.run(cmdstr.join(' '), opt)
139
+ exit -1 unless ret
140
+ ret
137
141
  end
138
142
 
139
143
  def hammer
@@ -47,7 +47,7 @@ module Rancher
47
47
 
48
48
  def ignore(filename, content)
49
49
  if file? filename
50
- append_to_file filename, content
50
+ append_to_file filename, content+"\n"
51
51
  else
52
52
  create_file filename, content
53
53
  end
@@ -8,8 +8,8 @@ end
8
8
 
9
9
  class Hash
10
10
  def method_missing(methodname, *params)
11
- if self.class == Hash && key?(methodname.to_s)
12
- self[methodname.to_s]
11
+ if self.class == Hash
12
+ self[methodname]||self[methodname.to_s]
13
13
  else
14
14
  super
15
15
  end
@@ -17,14 +17,14 @@ class Hash
17
17
  end
18
18
 
19
19
  namespace :rancher do
20
- rancherconfig = 'rancher/rancherconfig.json'
20
+ rancherconfig = ENV['RANCHER_CONFIG'] || 'rancher/rancherconfig.json'
21
21
  dockerconfig = 'docker/dockerconfig.json'
22
22
  config = File.exist?(rancherconfig) ? JSON.parse(File.read(rancherconfig)) : {}
23
23
  docker_config = JSON.parse(File.read(dockerconfig))
24
- docker_file = 'docker/docker-compose.yml'
24
+ docker_file = ENV['RANCHER_DOCKER_FILE'] || docker_config.rancher_yml || docker_config.prod_yml
25
25
  rancher_file = 'rancher/rancher-compose.yml'
26
26
  tag = ENV['TAG'] || 'latest'
27
- RANCHER = "rancher -c #{rancherconfig}"
27
+ RANCHER = "rancher -c #{rancherconfig}".freeze
28
28
  File.write('rancher/.env.tmp', "TAG=#{tag}")
29
29
  RANCHER_UP = [
30
30
  RANCHER,
@@ -87,6 +87,7 @@ namespace :rancher do
87
87
  exec_cmd(RANCHER_UP,
88
88
  '--force-upgrade',
89
89
  '--pull',
90
+ '-d',
90
91
  _args[:service] || docker_config.service_name)
91
92
  end
92
93
 
@@ -188,7 +189,9 @@ namespace :rancher do
188
189
 
189
190
  def exec_cmd(*cmdstr, **opt)
190
191
  hammer.say cmdstr.join(' ')
191
- hammer.run(cmdstr.join(' '), opt)
192
+ ret = hammer.run(cmdstr.join(' '), opt)
193
+ exit -1 unless ret
194
+ ret
192
195
  end
193
196
 
194
197
  def hammer
@@ -7,6 +7,7 @@ module Rspec
7
7
  gem 'spring-commands-rspec'
8
8
  gem_group :test, :development do
9
9
  gem 'rspec-rails'
10
+ gem 'factory_girl'
10
11
  gem 'factory_girl_rails'
11
12
  gem 'database_cleaner'
12
13
  gem 'faker'
@@ -54,15 +55,15 @@ module Rspec
54
55
  RSpec.configure do |config|
55
56
  config.use_transactional_fixtures = false
56
57
  config.include FactoryGirl::Syntax::Methods
58
+ config.fail_fast = true
57
59
  config.before(:suite) do
58
60
  DatabaseCleaner.strategy = :#{strategy}
59
- DatabaseCleaner.clean_with(:truncation)
60
61
  end
61
-
62
- config.around(:each) do |example|
63
- DatabaseCleaner.cleaning do
64
- example.run
65
- end
62
+ config.before(:each) do
63
+ DatabaseCleaner.start
64
+ end
65
+ config.after(:each) do
66
+ DatabaseCleaner.clean_with(:truncation, except: %w[])
66
67
  end
67
68
  end
68
69
  CODE
@@ -1,3 +1,3 @@
1
1
  module GeneratorsRails
2
- VERSION = '0.0.5'.freeze
2
+ VERSION = '0.0.6'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: generators_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - shaoyang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-15 00:00:00.000000000 Z
11
+ date: 2017-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails