bankai 0.3.1 → 0.4.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/.gitlab-ci.yml +11 -9
- data/.ruby-version +1 -1
- data/.travis.yml +2 -2
- data/bankai.gemspec +3 -3
- data/lib/bankai/builder.rb +2 -0
- data/lib/bankai/generators/deploy_generator.rb +10 -6
- data/lib/bankai/version.rb +5 -5
- data/templates/deploy.rb.erb +2 -2
- data/templates/gitlab-ci.yml.erb +19 -42
- data/templates/rails_helper.rb +1 -1
- data/templates/rubocop.yml.erb +10 -0
- 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: bd1b206e5efc0376acd011667d50e997ccd8ed81d18673056f95007166b198ea
|
4
|
+
data.tar.gz: c04e04dfca974e26fd015494e238910d93a03cabbd974db01479fd6c58d63b47
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d7bd93f6e4816f93fb97b3be8890b8bd9a514ba1a447d25dcf1343d9401b6a546cc41469ce3c5eeebca28d0bd9ec3b002eeee9b1e12af518fe9e08d27304ac9f
|
7
|
+
data.tar.gz: 964c0e46b4333ce589b18fac16d175da7ac7720083cdcf419461d3c956d80ca4a2dc6f2c4d94aa2eb5ecd97920759dc514a3327a50a3a12b49265bcc0611c2c0
|
data/.gitlab-ci.yml
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
image: ruby:2.6.
|
1
|
+
image: ruby:2.6.6
|
2
2
|
|
3
3
|
stages:
|
4
4
|
- lint
|
@@ -9,20 +9,24 @@ cache:
|
|
9
9
|
paths:
|
10
10
|
- vendor/ruby
|
11
11
|
|
12
|
+
.install_ruby_gems: &install_ruby_gems
|
13
|
+
- gem install bundler -v 2.1.4
|
14
|
+
- bundle install --path vendor
|
15
|
+
|
16
|
+
before_script:
|
17
|
+
- *install_ruby_gems
|
18
|
+
|
12
19
|
rubocop:
|
13
20
|
stage: lint
|
14
|
-
before_script:
|
15
|
-
- gem install rubocop -v 0.71.0
|
16
21
|
script:
|
17
|
-
- rubocop
|
22
|
+
- bundle exec rubocop
|
18
23
|
except:
|
19
24
|
- schedules
|
20
25
|
|
21
26
|
bundler-audit:
|
22
27
|
stage: lint
|
23
28
|
before_script:
|
24
|
-
-
|
25
|
-
- bundle install --path vendor
|
29
|
+
- *install_ruby_gems
|
26
30
|
- gem install bundler-audit
|
27
31
|
- bundle audit --update
|
28
32
|
script:
|
@@ -31,9 +35,6 @@ bundler-audit:
|
|
31
35
|
|
32
36
|
rspec:
|
33
37
|
stage: test
|
34
|
-
before_script:
|
35
|
-
- gem install bundler -v 1.17.3
|
36
|
-
- bundle install --path vendor
|
37
38
|
script:
|
38
39
|
- bundle exec rspec
|
39
40
|
except:
|
@@ -42,6 +43,7 @@ rspec:
|
|
42
43
|
sonarqube:
|
43
44
|
stage: analysis
|
44
45
|
image: registry.5xruby.tw/docker/sonar-scanner:4.0.0
|
46
|
+
before_script: []
|
45
47
|
script:
|
46
48
|
- sonar-scanner
|
47
49
|
-D"sonar.projectKey=5xruby-bankai"
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.6.
|
1
|
+
2.6.6
|
data/.travis.yml
CHANGED
data/bankai.gemspec
CHANGED
@@ -27,12 +27,12 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
28
28
|
spec.require_paths = ['lib']
|
29
29
|
|
30
|
-
spec.add_development_dependency 'bundler', '~> 1.
|
30
|
+
spec.add_development_dependency 'bundler', '~> 2.1.4'
|
31
31
|
spec.add_development_dependency 'bundler-audit'
|
32
32
|
spec.add_development_dependency 'overcommit'
|
33
|
-
spec.add_development_dependency 'rake', '~>
|
33
|
+
spec.add_development_dependency 'rake', '~> 12.0'
|
34
34
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
35
|
-
spec.add_development_dependency 'rubocop', '~> 0.
|
35
|
+
spec.add_development_dependency 'rubocop', '~> 0.81.0'
|
36
36
|
spec.add_development_dependency 'simplecov'
|
37
37
|
|
38
38
|
# TODO: Allow specify rails version
|
data/lib/bankai/builder.rb
CHANGED
@@ -6,6 +6,8 @@ module Bankai
|
|
6
6
|
module Generators
|
7
7
|
# :nodoc:
|
8
8
|
class DeployGenerator < Base
|
9
|
+
DEFAULT_REPO = 'git@example.com:me/my_repo.git'
|
10
|
+
|
9
11
|
def install_capistrano
|
10
12
|
Bundler.with_clean_env { run 'bundle exec cap install' }
|
11
13
|
end
|
@@ -25,8 +27,10 @@ module Bankai
|
|
25
27
|
protected
|
26
28
|
|
27
29
|
def repo_url
|
30
|
+
return DEFAULT_REPO unless Dir.exist?('.git')
|
31
|
+
|
28
32
|
res = `git remote get-url origin`
|
29
|
-
return
|
33
|
+
return DEFAULT_REPO if res.blank?
|
30
34
|
|
31
35
|
res
|
32
36
|
end
|
@@ -34,11 +38,11 @@ module Bankai
|
|
34
38
|
private
|
35
39
|
|
36
40
|
def capistrano_plugins
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
41
|
+
plugins = []
|
42
|
+
plugins << 'require "capistrano/bundler"'
|
43
|
+
plugins << 'require "capistrano/rails/assets"' unless options[:api]
|
44
|
+
plugins << 'require "capistrano/rails/migrations"'
|
45
|
+
plugins.join("\n")
|
42
46
|
end
|
43
47
|
end
|
44
48
|
end
|
data/lib/bankai/version.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Bankai
|
4
|
-
VERSION = '0.
|
5
|
-
RUBY_VERSION = '2.6.
|
6
|
-
RAILS_VERSION = '
|
7
|
-
RUBOCOP_VERSION = '0.
|
8
|
-
CAPISTRANO_VERSION = '3.
|
4
|
+
VERSION = '0.4.0'
|
5
|
+
RUBY_VERSION = '2.6.6'
|
6
|
+
RAILS_VERSION = '6.0.2'
|
7
|
+
RUBOCOP_VERSION = '0.81.0'
|
8
|
+
CAPISTRANO_VERSION = '3.13.0'
|
9
9
|
end
|
data/templates/deploy.rb.erb
CHANGED
@@ -27,8 +27,8 @@ set :deploy_to, '/src/app'
|
|
27
27
|
append :linked_files, 'config/database.yml', 'config/master.key'
|
28
28
|
|
29
29
|
# Default value for linked_dirs is []
|
30
|
-
append :linked_dirs, 'log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system',
|
31
|
-
|
30
|
+
append :linked_dirs, 'log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system',
|
31
|
+
'.bundle', 'public/uploads', 'node_modules'
|
32
32
|
|
33
33
|
# Default value for default_env is {}
|
34
34
|
set :default_env, { path: '/usr/local/ruby-<%= RUBY_VERSION %>/bin:$PATH' }
|
data/templates/gitlab-ci.yml.erb
CHANGED
@@ -1,11 +1,8 @@
|
|
1
1
|
image: ruby:<%= RUBY_VERSION %>
|
2
2
|
|
3
|
-
include:
|
4
|
-
template: Verify/Browser-Performance.gitlab-ci.yml
|
5
|
-
|
6
3
|
variables:
|
7
4
|
RAILS_ENV: test
|
8
|
-
NODE_VERSION:
|
5
|
+
NODE_VERSION: 12.13.1
|
9
6
|
<%- if pg? -%>
|
10
7
|
POSTGRES_DB: <%= app_name %>
|
11
8
|
DATABASE_URL: "postgresql://postgres:postgres@postgres:5432/$POSTGRES_DB"
|
@@ -18,36 +15,40 @@ variables:
|
|
18
15
|
DATABASE_URL: "mysql2://$MYSQL_USER:$MYSQL_PASSWORD@mysql:3306/$MYSQL_DATABASE"
|
19
16
|
<%- end -%>
|
20
17
|
|
18
|
+
.install_ruby_gems: &install_ruby_gems
|
19
|
+
- bundle install --path vendor
|
20
|
+
|
21
|
+
.install_nodejs: &install_nodejs
|
22
|
+
- curl -SLO https://nodejs.org/dist/v$NODE_VERSION/node-v${NODE_VERSION}-linux-x64.tar.xz && tar -xJf node-v${NODE_VERSION}-linux-x64.tar.xz -C /usr/local --strip-components=1;
|
23
|
+
- curl -o- -L https://yarnpkg.com/install.sh | bash
|
24
|
+
- export PATH=$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH
|
25
|
+
|
21
26
|
stages:
|
22
27
|
- lint
|
23
28
|
- test
|
24
29
|
- deploy
|
25
|
-
- measure
|
26
30
|
|
27
31
|
cache:
|
28
32
|
paths:
|
29
33
|
- vendor/ruby
|
30
34
|
- node_modules
|
31
35
|
|
36
|
+
before_script:
|
37
|
+
- export LANG=C.UTF-8
|
38
|
+
- export LC_ALL=C.UTF-8
|
39
|
+
- *install_ruby_gems
|
40
|
+
|
32
41
|
rubocop:
|
33
42
|
stage: lint
|
34
|
-
before_script:
|
35
|
-
- gem install rubocop -v <%= Bankai::RUBOCOP_VERSION %>
|
36
|
-
- gem install rubocop-performance
|
37
|
-
- gem install rubocop-rails
|
38
43
|
script:
|
39
|
-
- rubocop
|
44
|
+
- bundle exec rubocop
|
40
45
|
except:
|
41
46
|
- schedules
|
42
47
|
|
43
48
|
brakeman:
|
44
49
|
stage: lint
|
45
|
-
before_script:
|
46
|
-
- export LANG=C.UTF-8
|
47
|
-
- export LC_ALL=C.UTF-8
|
48
|
-
- gem install brakeman
|
49
50
|
script:
|
50
|
-
- brakeman
|
51
|
+
- bundle exec brakeman
|
51
52
|
except:
|
52
53
|
- schedules
|
53
54
|
|
@@ -63,14 +64,12 @@ bundler-audit:
|
|
63
64
|
rspec:
|
64
65
|
stage: test
|
65
66
|
before_script:
|
66
|
-
-
|
67
|
-
-
|
68
|
-
- export PATH=$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH
|
69
|
-
- bundle install --without development --path vendor
|
67
|
+
- *install_nodejs
|
68
|
+
- *install_ruby_gems
|
70
69
|
- yarn install
|
71
70
|
services:
|
72
71
|
<%- if pg? -%>
|
73
|
-
- postgres:
|
72
|
+
- postgres:12-alpine
|
74
73
|
<%- end -%>
|
75
74
|
<%- if mysql? -%>
|
76
75
|
- name: mysql:5.7
|
@@ -81,25 +80,3 @@ rspec:
|
|
81
80
|
- bundle exec rspec
|
82
81
|
except:
|
83
82
|
- schedules
|
84
|
-
|
85
|
-
# staging:deploy:
|
86
|
-
# stage: deploy
|
87
|
-
# before_script:
|
88
|
-
# - which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )
|
89
|
-
# - eval $(ssh-agent -s)
|
90
|
-
# - ssh-add <(echo -e "$SSH_PRIVATE_KEY")
|
91
|
-
# - bundle install --path vendor
|
92
|
-
# script:
|
93
|
-
# - bundle exec cap staging deploy
|
94
|
-
# only:
|
95
|
-
# - master
|
96
|
-
# except:
|
97
|
-
# - schedules
|
98
|
-
|
99
|
-
# NOTE: Ensure GitLab version > 12.0
|
100
|
-
# performance:
|
101
|
-
# stage: measure
|
102
|
-
# variables:
|
103
|
-
# URL: STAGING_SITE_URL
|
104
|
-
# SITESPEED_VERSION: 10.3.2-plus1
|
105
|
-
# SITESPEED_OPTIONS: '--plugins.add /lighthouse'
|
data/templates/rails_helper.rb
CHANGED
@@ -12,7 +12,7 @@ require 'shoulda/matchers'
|
|
12
12
|
require 'faker'
|
13
13
|
require 'factory_bot'
|
14
14
|
|
15
|
-
Dir[Rails.root.join('spec
|
15
|
+
Dir[Rails.root.join('spec/support/**/*.rb')].sort.each { |f| require f }
|
16
16
|
|
17
17
|
begin
|
18
18
|
ActiveRecord::Migration.maintain_test_schema!
|
data/templates/rubocop.yml.erb
CHANGED
@@ -30,6 +30,10 @@ Metrics/BlockLength:
|
|
30
30
|
Exclude:
|
31
31
|
- config/environments/*
|
32
32
|
- lib/tasks/**/*
|
33
|
+
Lint/RaiseException:
|
34
|
+
Enabled: true
|
35
|
+
Lint/StructNewOverride:
|
36
|
+
Enabled: true
|
33
37
|
Layout:
|
34
38
|
Exclude:
|
35
39
|
- config/environments/*
|
@@ -42,3 +46,9 @@ Style/BlockComments:
|
|
42
46
|
- spec/**/*
|
43
47
|
Style/Documentation:
|
44
48
|
Enabled: false
|
49
|
+
Style/HashEachMethods:
|
50
|
+
Enabled: true
|
51
|
+
Style/HashTransformKeys:
|
52
|
+
Enabled: true
|
53
|
+
Style/HashTransformValues:
|
54
|
+
Enabled: true
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bankai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 5xRuby
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-04-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 1.
|
20
|
+
version: 2.1.4
|
21
21
|
type: :development
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 1.
|
27
|
+
version: 2.1.4
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: bundler-audit
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -59,14 +59,14 @@ dependencies:
|
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
62
|
+
version: '12.0'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
69
|
+
version: '12.0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: rspec
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
@@ -87,14 +87,14 @@ dependencies:
|
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: 0.
|
90
|
+
version: 0.81.0
|
91
91
|
type: :development
|
92
92
|
prerelease: false
|
93
93
|
version_requirements: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - "~>"
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: 0.
|
97
|
+
version: 0.81.0
|
98
98
|
- !ruby/object:Gem::Dependency
|
99
99
|
name: simplecov
|
100
100
|
requirement: !ruby/object:Gem::Requirement
|
@@ -115,14 +115,14 @@ dependencies:
|
|
115
115
|
requirements:
|
116
116
|
- - ">="
|
117
117
|
- !ruby/object:Gem::Version
|
118
|
-
version:
|
118
|
+
version: 6.0.2
|
119
119
|
type: :runtime
|
120
120
|
prerelease: false
|
121
121
|
version_requirements: !ruby/object:Gem::Requirement
|
122
122
|
requirements:
|
123
123
|
- - ">="
|
124
124
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
125
|
+
version: 6.0.2
|
126
126
|
description: The tool to generate Rails template for 5xRuby
|
127
127
|
email:
|
128
128
|
- hi@5xruby.tw
|
@@ -186,14 +186,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
186
186
|
requirements:
|
187
187
|
- - ">="
|
188
188
|
- !ruby/object:Gem::Version
|
189
|
-
version: 2.6.
|
189
|
+
version: 2.6.6
|
190
190
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
192
|
- - ">="
|
193
193
|
- !ruby/object:Gem::Version
|
194
194
|
version: '0'
|
195
195
|
requirements: []
|
196
|
-
rubygems_version: 3.0.
|
196
|
+
rubygems_version: 3.0.3
|
197
197
|
signing_key:
|
198
198
|
specification_version: 4
|
199
199
|
summary: The Rails template for 5xRuby
|