groundskeeper-bitcore 0.3.4 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +5 -0
- data/config/git_config.rb +2 -0
- data/config/predeploy.rb +23 -10
- data/groundskeeper.gemspec +4 -5
- data/lib/groundskeeper/commands.rb +5 -0
- data/lib/groundskeeper/git.rb +4 -2
- data/lib/groundskeeper/jira.rb +3 -2
- data/lib/groundskeeper/rails_version.rb +2 -2
- data/lib/groundskeeper/repository.rb +1 -1
- data/lib/groundskeeper/version.rb +1 -1
- metadata +28 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 00e0b4315f9ae98ccb690863405a89c7e7635270eb8b6a649a0a5af5dcdde8da
|
4
|
+
data.tar.gz: 7bfda8e17853c7ab6c07277126321505d08f7730d94c15d531a934d6efdaaddf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6242b40a508edc424b897adab0a59368f97085aeb44154805e2fdca64af4b5e3aa923e6a3a99640c90d2b2f68a0d6bda5eca8c34ce31e34330fa1631d1fa58ed
|
7
|
+
data.tar.gz: 7866a3d902dc07495868a718cc32215876423862df2da04472e08b3b60f90c10146744f478306dd91ce552564cb8b6df2522b1e2ad4f0e5059e530ffde72895f
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.3.5 - 2019-02-20
|
4
|
+
|
5
|
+
* GROUN-25 update RuboCop and fix warnings (#92)
|
6
|
+
* GROUN-10 avoid overwriting files on predeploy unless specified with force_overwrite=true (#90)
|
7
|
+
|
3
8
|
## 0.3.4 - 2019-01-04
|
4
9
|
|
5
10
|
* GROUN-21 format virtual host and Rails config files nicely (#88)
|
data/config/git_config.rb
CHANGED
@@ -32,10 +32,12 @@ task :before_run do
|
|
32
32
|
puts "Looking up tags for project #{application}... (#{project.repo_url})"
|
33
33
|
tags = project.tags
|
34
34
|
raise "There must be a tagged release prior to deploying." if tags.count.zero?
|
35
|
+
|
35
36
|
tag = ENV["tag"]
|
36
37
|
unless tags.include? tag
|
37
38
|
raise "Tag \"#{tag}\" not found. Available tags:\n #{tags.join("\n")}"
|
38
39
|
end
|
40
|
+
|
39
41
|
set :branch, "master"
|
40
42
|
set :tag, "tags/#{tag}"
|
41
43
|
end
|
data/config/predeploy.rb
CHANGED
@@ -36,6 +36,8 @@ def active_storage_dir
|
|
36
36
|
"#{fetch :deploy_to}/shared/storage"
|
37
37
|
end
|
38
38
|
|
39
|
+
FORCE_OVERWRITE = ENV["force_overwrite"]
|
40
|
+
|
39
41
|
# rubocop:disable Metrics/BlockLength
|
40
42
|
namespace :deploy_configure do
|
41
43
|
desc "Create database and secrets"
|
@@ -48,7 +50,7 @@ namespace :deploy_configure do
|
|
48
50
|
rails_config = load_template("rails_config.rb.erb")
|
49
51
|
|
50
52
|
run :remote do
|
51
|
-
command "mkdir -p #{environments_dir}"
|
53
|
+
command "mkdir -p #{environments_dir}" unless File.exist? environments_dir
|
52
54
|
end
|
53
55
|
|
54
56
|
if File.exist? "./config/secrets.yml"
|
@@ -58,22 +60,30 @@ namespace :deploy_configure do
|
|
58
60
|
comment "Writing staging secrets to #{secrets_config_file}"
|
59
61
|
comment "touch #{secrets_config_file}"
|
60
62
|
run :remote do
|
61
|
-
|
63
|
+
if !(File.exist? secrets_config_file) || FORCE_OVERWRITE
|
64
|
+
command "echo \"#{secrets_config}\" >> #{secrets_config_file}"
|
65
|
+
end
|
62
66
|
end
|
63
67
|
|
64
68
|
comment "Writing database config to #{database_config_file}"
|
65
69
|
run :remote do
|
66
|
-
|
70
|
+
if !(File.exist? database_config_file) || FORCE_OVERWRITE
|
71
|
+
command "echo \"#{db_config}\" > #{database_config_file}"
|
72
|
+
end
|
67
73
|
end
|
68
74
|
|
69
75
|
comment "Writing Rails config to #{rails_config_file}"
|
70
76
|
run :remote do
|
71
|
-
|
77
|
+
if !(File.exist? rails_config_file) || FORCE_OVERWRITE
|
78
|
+
command "echo \"#{rails_config}\" > #{rails_config_file}"
|
79
|
+
end
|
72
80
|
end
|
73
81
|
|
74
82
|
comment "Creating storage directory #{active_storage_dir}"
|
75
83
|
run :remote do
|
76
|
-
|
84
|
+
if !(File.exist? active_storage_dir) || FORCE_OVERWRITE
|
85
|
+
command "mkdir -p #{active_storage_dir}"
|
86
|
+
end
|
77
87
|
end
|
78
88
|
end
|
79
89
|
|
@@ -82,8 +92,10 @@ namespace :deploy_configure do
|
|
82
92
|
path = remote_shared_path("config/secrets.yml")
|
83
93
|
comment "Copying secrets.yml to #{path}."
|
84
94
|
run :local do
|
85
|
-
|
86
|
-
|
95
|
+
if !(File.exist? path) || FORCE_OVERWRITE
|
96
|
+
command = "scp ./config/secrets.yml #{path}"
|
97
|
+
puts `#{command}`
|
98
|
+
end
|
87
99
|
end
|
88
100
|
end
|
89
101
|
end
|
@@ -94,9 +106,10 @@ namespace :deploy_prepare do
|
|
94
106
|
task :create_vhost do
|
95
107
|
load_project
|
96
108
|
vhost_config = load_template("vhost_config.conf.erb")
|
97
|
-
|
98
|
-
|
99
|
-
|
109
|
+
if !(File.exist? vhost_config_file) || FORCE_OVERWRITE
|
110
|
+
comment "Writing virtual host config to #{vhost_config_file}"
|
111
|
+
command "echo \"#{vhost_config}\" > #{vhost_config_file}"
|
112
|
+
end
|
100
113
|
end
|
101
114
|
|
102
115
|
desc "Configure Postgres."
|
data/groundskeeper.gemspec
CHANGED
@@ -1,7 +1,6 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
|
-
lib = File.expand_path("
|
3
|
+
lib = File.expand_path("lib", __dir__)
|
5
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
6
5
|
require "groundskeeper/version"
|
7
6
|
|
@@ -33,13 +32,13 @@ Gem::Specification.new do |spec|
|
|
33
32
|
spec.require_paths = %w[lib config]
|
34
33
|
|
35
34
|
spec.add_dependency "jira-ruby", "~> 1.3"
|
36
|
-
spec.add_dependency "thor", "~> 0.19"
|
37
35
|
spec.add_dependency "mina", "~> 1.2"
|
38
36
|
spec.add_dependency "mina-whenever", "~> 1.0.1"
|
37
|
+
spec.add_dependency "thor", "~> 0.19"
|
39
38
|
|
40
39
|
spec.add_development_dependency "bundler", "~> 1.15"
|
40
|
+
spec.add_development_dependency "byebug"
|
41
41
|
spec.add_development_dependency "minitest", "~> 5.0"
|
42
|
-
spec.add_development_dependency "rubocop", "~> 0.
|
42
|
+
spec.add_development_dependency "rubocop", "~> 0.63"
|
43
43
|
spec.add_development_dependency "simplecov", "~> 0.14"
|
44
|
-
spec.add_development_dependency "byebug"
|
45
44
|
end
|
@@ -89,6 +89,7 @@ module Groundskeeper
|
|
89
89
|
def info(options = {})
|
90
90
|
return unrecognized_version unless version_file.exists?
|
91
91
|
return unless check_groundskeeper_version
|
92
|
+
|
92
93
|
Executable.verbose = options[:verbose]
|
93
94
|
pull_project_details
|
94
95
|
|
@@ -137,6 +138,7 @@ module Groundskeeper
|
|
137
138
|
def predeploy(options = {})
|
138
139
|
return unrecognized_version unless version_file.exists?
|
139
140
|
return unless check_groundskeeper_version
|
141
|
+
|
140
142
|
Executable.verbose = options[:verbose]
|
141
143
|
pull_project_details
|
142
144
|
|
@@ -152,6 +154,7 @@ module Groundskeeper
|
|
152
154
|
return missing_jira_credentials unless jira.credentials?
|
153
155
|
return missing_sentry_credentials unless sentry.credentials?
|
154
156
|
return unless check_groundskeeper_version
|
157
|
+
|
155
158
|
Executable.verbose = options[:verbose]
|
156
159
|
pull_project_details
|
157
160
|
ENV["whenever"] = "1" if project.uses_whenever?
|
@@ -387,10 +390,12 @@ module Groundskeeper
|
|
387
390
|
end
|
388
391
|
end
|
389
392
|
|
393
|
+
# :nocov:
|
390
394
|
def release_version
|
391
395
|
jira.release_version(project, website.version)
|
392
396
|
console.say("#{project.repo_name} #{website.version} released", :green)
|
393
397
|
end
|
398
|
+
# :nocov:
|
394
399
|
|
395
400
|
def transition_remote_issues(version)
|
396
401
|
version_name = "#{repository.name} #{version}"
|
data/lib/groundskeeper/git.rb
CHANGED
@@ -10,8 +10,10 @@ module Groundskeeper
|
|
10
10
|
VERSION = "--version"
|
11
11
|
TAGS_ASC = "tag -l --sort=v:refname"
|
12
12
|
LATEST_TAG_COMMIT = "#{COMMAND} rev-list --tags --max-count=1"
|
13
|
-
LATEST_TAG_NAME =
|
14
|
-
|
13
|
+
LATEST_TAG_NAME =
|
14
|
+
format("describe --tags $(%<commit>s)", commit: LATEST_TAG_COMMIT)
|
15
|
+
LATEST_TAG_BRANCHES =
|
16
|
+
format("branch --contains $(%<commit>s)", commit: LATEST_TAG_COMMIT)
|
15
17
|
LATEST_CHANGES = "log %s..HEAD --oneline"
|
16
18
|
CREATE_AND_CHECKOUT_BRANCH = "checkout -b %s"
|
17
19
|
ADD_UPDATE = "add -u"
|
data/lib/groundskeeper/jira.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "cgi"
|
3
4
|
require "date"
|
4
5
|
require "jira-ruby"
|
5
6
|
|
@@ -64,9 +65,9 @@ module Groundskeeper
|
|
64
65
|
# :nocov:
|
65
66
|
def fetch_issues_by_fix_version(version:)
|
66
67
|
search_path = "/rest/api/2/search"
|
67
|
-
query = "fixVersion
|
68
|
+
query = "fixVersion=#{version}"
|
68
69
|
response =
|
69
|
-
client.get("#{search_path}?fields=key&jql=#{
|
70
|
+
client.get("#{search_path}?fields=key&jql=#{CGI.escape(query)}").body
|
70
71
|
|
71
72
|
JSON.parse(response)["issues"].map { |issue| issue["key"] }
|
72
73
|
end
|
@@ -5,11 +5,11 @@ module Groundskeeper
|
|
5
5
|
class RailsVersion
|
6
6
|
APPLICATION_CONFIG_FILE = "%sconfig/application.rb"
|
7
7
|
INITIAL_VERSION = "0.0.0"
|
8
|
-
MODULE_NAME_EXPRESSION = /module (\w+)
|
8
|
+
MODULE_NAME_EXPRESSION = /module (\w+)/.freeze
|
9
9
|
NAMESPACE_FILE = "%slib/%s.rb"
|
10
10
|
MODULE_DIRECTORY = "%slib/%s"
|
11
11
|
VERSION_FILE = "#{MODULE_DIRECTORY}/version.rb"
|
12
|
-
VERSION_EXPRESSION = /(?<=VERSION = ")([^"]+)(?=")
|
12
|
+
VERSION_EXPRESSION = /(?<=VERSION = ")([^"]+)(?=")/.freeze
|
13
13
|
|
14
14
|
attr_reader :config_file, :namespace_file, :project_name, :relative_path,
|
15
15
|
:version_file
|
@@ -8,7 +8,7 @@ module Groundskeeper
|
|
8
8
|
UP_TO_DATE = "Your branch is up-to-date with 'origin/master'"
|
9
9
|
UNSTAGED_CHANGES = "Changes not staged for commit"
|
10
10
|
# git comment matching
|
11
|
-
COMMIT_HASH = /^[^ ]+
|
11
|
+
COMMIT_HASH = /^[^ ]+ /.freeze
|
12
12
|
RELEASE_MESSAGE = "release version %s"
|
13
13
|
|
14
14
|
attr_reader :git
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: groundskeeper-bitcore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- BIT Core
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain:
|
11
11
|
- certs/ericcf.pem
|
12
|
-
date: 2019-
|
12
|
+
date: 2019-02-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: jira-ruby
|
@@ -26,47 +26,47 @@ dependencies:
|
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '1.3'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
29
|
+
name: mina
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
34
|
+
version: '1.2'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
41
|
+
version: '1.2'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
|
-
name: mina
|
43
|
+
name: mina-whenever
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version:
|
48
|
+
version: 1.0.1
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version:
|
55
|
+
version: 1.0.1
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
57
|
+
name: thor
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
62
|
+
version: '0.19'
|
63
63
|
type: :runtime
|
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: '0.19'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: bundler
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
@@ -82,61 +82,61 @@ dependencies:
|
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: '1.15'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
|
-
name:
|
85
|
+
name: byebug
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
|
-
- - "
|
88
|
+
- - ">="
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '
|
90
|
+
version: '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: '
|
97
|
+
version: '0'
|
98
98
|
- !ruby/object:Gem::Dependency
|
99
|
-
name:
|
99
|
+
name: minitest
|
100
100
|
requirement: !ruby/object:Gem::Requirement
|
101
101
|
requirements:
|
102
102
|
- - "~>"
|
103
103
|
- !ruby/object:Gem::Version
|
104
|
-
version: 0
|
104
|
+
version: '5.0'
|
105
105
|
type: :development
|
106
106
|
prerelease: false
|
107
107
|
version_requirements: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
109
|
- - "~>"
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version: 0
|
111
|
+
version: '5.0'
|
112
112
|
- !ruby/object:Gem::Dependency
|
113
|
-
name:
|
113
|
+
name: rubocop
|
114
114
|
requirement: !ruby/object:Gem::Requirement
|
115
115
|
requirements:
|
116
116
|
- - "~>"
|
117
117
|
- !ruby/object:Gem::Version
|
118
|
-
version: '0.
|
118
|
+
version: '0.63'
|
119
119
|
type: :development
|
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: '0.
|
125
|
+
version: '0.63'
|
126
126
|
- !ruby/object:Gem::Dependency
|
127
|
-
name:
|
127
|
+
name: simplecov
|
128
128
|
requirement: !ruby/object:Gem::Requirement
|
129
129
|
requirements:
|
130
|
-
- - "
|
130
|
+
- - "~>"
|
131
131
|
- !ruby/object:Gem::Version
|
132
|
-
version: '0'
|
132
|
+
version: '0.14'
|
133
133
|
type: :development
|
134
134
|
prerelease: false
|
135
135
|
version_requirements: !ruby/object:Gem::Requirement
|
136
136
|
requirements:
|
137
|
-
- - "
|
137
|
+
- - "~>"
|
138
138
|
- !ruby/object:Gem::Version
|
139
|
-
version: '0'
|
139
|
+
version: '0.14'
|
140
140
|
description:
|
141
141
|
email:
|
142
142
|
- ericcf@northwestern.edu
|
@@ -207,8 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
207
|
- !ruby/object:Gem::Version
|
208
208
|
version: '0'
|
209
209
|
requirements: []
|
210
|
-
|
211
|
-
rubygems_version: 2.6.14
|
210
|
+
rubygems_version: 3.0.2
|
212
211
|
signing_key:
|
213
212
|
specification_version: 4
|
214
213
|
summary: A gem for managing releases and deployments.
|