hoe-manns 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.index +6 -6
- data/Gemfile +6 -5
- data/Gemfile.lock +89 -10
- data/History.rdoc +11 -1
- data/MAINTENANCE.md +11 -0
- data/Manifest.txt +4 -2
- data/README.rdoc +21 -14
- data/Rakefile +9 -12
- data/VERSION +1 -1
- data/docs/behind-the-scene.md +214 -0
- data/docs/index.md +24 -0
- data/lib/hoe/manns.rb +85 -48
- data/recipes/recipe.rb +6 -0
- data/test/manns_spec.rb +5 -5
- data.tar.gz.sig +0 -0
- metadata +62 -41
- metadata.gz.sig +0 -0
- data/data/hoe-manns/rubygems.png +0 -0
- data/etc/hoe-manns.cfg +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db526c0c9c415538397246a8172e1b41a95ff2fa
|
4
|
+
data.tar.gz: b8735b48e62282f6148b394c030720c0977b2adf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c6f724c517d5f3fbf732b9ef4179d2571aa03836204afb92cbd8c4e30db6c79266240055b28ea1d32a50797b24d864051fa0a1d3d0f31d0d5e76dfdc948b10c5
|
7
|
+
data.tar.gz: 596821c4daa8bcfd36ede04eaf6b2c25437af34ede9a4a8c04ff544e99dcdb27d1a399cba82d2df9d670675eeef5de59a6501d58502ea6eab23447ea6cca3126
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/.index
CHANGED
@@ -9,9 +9,9 @@ authors:
|
|
9
9
|
email: samannsml@directbox.com
|
10
10
|
organizations: []
|
11
11
|
requirements:
|
12
|
-
- name: setup
|
13
|
-
- name: parseconfig
|
14
12
|
- name: bundler-audit
|
13
|
+
- name: rainbow
|
14
|
+
- name: indexer
|
15
15
|
- groups:
|
16
16
|
- build
|
17
17
|
development: true
|
@@ -151,11 +151,11 @@ customs: []
|
|
151
151
|
paths:
|
152
152
|
lib:
|
153
153
|
- lib
|
154
|
-
version: 1.
|
154
|
+
version: 1.2.0
|
155
155
|
name: hoe-manns
|
156
156
|
title: hoe-manns
|
157
157
|
summary: hoe-manns is a small collection of my personal used rake tasks for using
|
158
|
-
with hoe.
|
158
|
+
with hoe.
|
159
159
|
description: hoe-manns is a small collection of my personal used rake tasks for using
|
160
|
-
with hoe.
|
161
|
-
date: '2015-10-
|
160
|
+
with hoe.
|
161
|
+
date: '2015-10-13'
|
data/Gemfile
CHANGED
@@ -4,10 +4,10 @@
|
|
4
4
|
|
5
5
|
source "https://rubygems.org/"
|
6
6
|
|
7
|
-
gem "setup", "~>5.2"
|
8
7
|
gem "parseconfig", "~>1.0"
|
8
|
+
gem "rainbow", "~>2.0"
|
9
|
+
gem "indexer", "~>0.3"
|
9
10
|
gem "bundler-audit", "~>0.4.0"
|
10
|
-
gem "fpm", "~>1.4.0"
|
11
11
|
|
12
12
|
gem "hoe-highline", "~>0.2", :group => [:development, :test]
|
13
13
|
gem "hoe-yard", ">=0.1.2", :group => [:development, :test]
|
@@ -15,19 +15,20 @@ gem "coveralls", "~>0.8.3", :group => [:development, :test]
|
|
15
15
|
gem "digest", "~>0.0.1", :group => [:development, :test]
|
16
16
|
gem "gem-release", "~>0.7", :group => [:development, :test]
|
17
17
|
gem "hoe-bundler", "~>1.2", :group => [:development, :test]
|
18
|
+
gem "hoe-bundler_audit", "~>1.0", :group => [:development, :test]
|
18
19
|
gem "hoe-deveiate", "~>0.7", :group => [:development, :test]
|
19
20
|
gem "hoe-doofus", "~>1.0", :group => [:development, :test]
|
20
21
|
gem "hoe-gemspec", "~>1.0", :group => [:development, :test]
|
21
22
|
gem "hoe-git", "~>1.6", :group => [:development, :test]
|
22
|
-
gem "hoe-manns", "~>1.
|
23
|
+
gem "hoe-manns", "~>1.2", :group => [:development, :test]
|
24
|
+
gem "hoe-packaging", "~>1.1", :group => [:development, :test]
|
23
25
|
gem "hoe-reek", "~>1.0", :group => [:development, :test]
|
24
26
|
gem "hoe-rubocop", "~>0.1", :group => [:development, :test]
|
25
27
|
gem "hoe-rubygems", "~>1.0", :group => [:development, :test]
|
26
28
|
gem "hoe-seattlerb", "~>1.3", :group => [:development, :test]
|
27
29
|
gem "hoe-travis", "~>1.2", :group => [:development, :test]
|
28
30
|
gem "hoe-version", "~>1.2", :group => [:development, :test]
|
29
|
-
gem "
|
30
|
-
gem "minitest", "~>5.8.1", :group => [:development, :test]
|
31
|
+
gem "minitest", "~>5.8", :group => [:development, :test]
|
31
32
|
gem "rake", "~>10.0", :group => [:development, :test]
|
32
33
|
gem "reek", "~>3.3", :group => [:development, :test]
|
33
34
|
gem "rspec", "~>3.3", :group => [:development, :test]
|
data/Gemfile.lock
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
GEM
|
2
2
|
remote: https://rubygems.org/
|
3
3
|
specs:
|
4
|
+
CFPropertyList (2.2.8)
|
4
5
|
RubyInline (3.12.4)
|
5
6
|
ZenTest (~> 4.3)
|
6
7
|
ZenTest (4.11.0)
|
@@ -8,19 +9,31 @@ GEM
|
|
8
9
|
adamantium (0.2.0)
|
9
10
|
ice_nine (~> 0.11.0)
|
10
11
|
memoizable (~> 0.4.0)
|
12
|
+
addressable (2.3.8)
|
11
13
|
arr-pm (0.0.10)
|
12
14
|
cabin (> 0)
|
13
15
|
ast (2.1.0)
|
14
16
|
astrolabe (1.3.1)
|
15
17
|
parser (~> 2.2)
|
18
|
+
aws-sdk (2.1.29)
|
19
|
+
aws-sdk-resources (= 2.1.29)
|
20
|
+
aws-sdk-core (2.1.29)
|
21
|
+
jmespath (~> 1.0)
|
22
|
+
aws-sdk-resources (2.1.29)
|
23
|
+
aws-sdk-core (= 2.1.29)
|
16
24
|
backports (3.6.6)
|
17
25
|
bundler-audit (0.4.0)
|
18
26
|
bundler (~> 1.2)
|
19
27
|
thor (~> 0.18)
|
20
28
|
cabin (0.7.1)
|
29
|
+
chef-config (12.5.1)
|
30
|
+
mixlib-config (~> 2.0)
|
31
|
+
mixlib-shellout (~> 2.0)
|
32
|
+
chef-sugar (3.1.1)
|
21
33
|
childprocess (0.5.6)
|
22
34
|
ffi (~> 1.0, >= 1.0.11)
|
23
35
|
clamp (0.6.5)
|
36
|
+
cleanroom (1.0.0)
|
24
37
|
concord (0.1.5)
|
25
38
|
adamantium (~> 0.2.0)
|
26
39
|
equalizer (~> 0.0.9)
|
@@ -33,10 +46,14 @@ GEM
|
|
33
46
|
diff-lcs (1.2.5)
|
34
47
|
digest (0.0.1)
|
35
48
|
docile (1.1.5)
|
36
|
-
domain_name (0.5.
|
49
|
+
domain_name (0.5.25)
|
37
50
|
unf (>= 0.0.5, < 1.0.0)
|
38
51
|
equalizer (0.0.11)
|
52
|
+
facter (2.4.4)
|
53
|
+
CFPropertyList (~> 2.2.6)
|
39
54
|
ffi (1.9.10)
|
55
|
+
ffi-yajl (2.2.2)
|
56
|
+
libyajl2 (~> 1.2)
|
40
57
|
fpm (1.4.0)
|
41
58
|
arr-pm (~> 0.0.10)
|
42
59
|
backports (>= 2.6.2)
|
@@ -45,13 +62,24 @@ GEM
|
|
45
62
|
clamp (~> 0.6)
|
46
63
|
ffi
|
47
64
|
json (>= 1.7.7)
|
65
|
+
fpm-cookery (0.30.1)
|
66
|
+
addressable
|
67
|
+
facter
|
68
|
+
fpm (~> 1.1)
|
69
|
+
puppet (~> 3.4)
|
70
|
+
systemu
|
48
71
|
gem-release (0.7.4)
|
49
72
|
hashr (0.0.22)
|
50
|
-
|
73
|
+
hiera (1.3.4)
|
74
|
+
json_pure
|
75
|
+
highline (1.7.8)
|
51
76
|
hoe (3.14.2)
|
52
77
|
rake (>= 0.8, < 11.0)
|
53
78
|
hoe-bundler (1.2.0)
|
54
79
|
hoe (>= 2.2.0)
|
80
|
+
hoe-bundler_audit (1.0.0)
|
81
|
+
bundler (~> 1.10)
|
82
|
+
bundler-audit (~> 0.4.0)
|
55
83
|
hoe-deveiate (0.7.0)
|
56
84
|
hoe (~> 3.13)
|
57
85
|
hoe-highline (~> 0.2)
|
@@ -66,15 +94,22 @@ GEM
|
|
66
94
|
hoe-highline (0.2.1)
|
67
95
|
highline (~> 1.6)
|
68
96
|
hoe (~> 3.11)
|
69
|
-
hoe-manns (1.0
|
97
|
+
hoe-manns (1.2.0)
|
70
98
|
bundler-audit (~> 0.4.0)
|
99
|
+
indexer (~> 0.3)
|
100
|
+
omnibus (~> 4.1)
|
71
101
|
parseconfig (~> 1.0)
|
102
|
+
rainbow (~> 2.0)
|
72
103
|
setup (~> 5.2)
|
73
104
|
hoe-mercurial (1.4.1)
|
74
105
|
hoe (~> 3.9)
|
75
|
-
hoe-
|
76
|
-
|
77
|
-
|
106
|
+
hoe-packaging (1.1.0)
|
107
|
+
fpm (~> 1.4)
|
108
|
+
fpm-cookery (~> 0.30.1)
|
109
|
+
manns_shared (~> 1.1.0)
|
110
|
+
hoe-reek (1.1.1)
|
111
|
+
bundler (~> 1.10)
|
112
|
+
setup (~> 5.2)
|
78
113
|
hoe-rubocop (0.1.1)
|
79
114
|
RubyInline (~> 3.9)
|
80
115
|
setup (~> 5.2)
|
@@ -90,20 +125,61 @@ GEM
|
|
90
125
|
domain_name (~> 0.5)
|
91
126
|
ice_nine (0.11.1)
|
92
127
|
indexer (0.3.1)
|
128
|
+
ipaddress (0.8.0)
|
129
|
+
jmespath (1.1.3)
|
93
130
|
json (1.8.3)
|
131
|
+
json_pure (1.8.2)
|
132
|
+
libyajl2 (1.2.0)
|
94
133
|
mail (2.6.3)
|
95
134
|
mime-types (>= 1.16, < 3)
|
135
|
+
manns_shared (1.1.0)
|
136
|
+
nokogiri (~> 1.6.6.2)
|
137
|
+
setup (~> 5.2)
|
96
138
|
memoizable (0.4.2)
|
97
139
|
thread_safe (~> 0.3, >= 0.3.1)
|
98
140
|
mime-types (2.6.2)
|
141
|
+
mini_portile (0.6.2)
|
99
142
|
minitest (5.8.1)
|
143
|
+
mixlib-cli (1.5.0)
|
144
|
+
mixlib-config (2.2.1)
|
145
|
+
mixlib-log (1.6.0)
|
146
|
+
mixlib-shellout (2.2.1)
|
147
|
+
mixlib-versioning (1.1.0)
|
100
148
|
netrc (0.10.3)
|
149
|
+
nokogiri (1.6.6.2)
|
150
|
+
mini_portile (~> 0.6.0)
|
151
|
+
ohai (8.7.0)
|
152
|
+
chef-config (>= 12.5.0.alpha.1, < 13)
|
153
|
+
ffi (~> 1.9)
|
154
|
+
ffi-yajl (~> 2.2)
|
155
|
+
ipaddress
|
156
|
+
mime-types (~> 2.0)
|
157
|
+
mixlib-cli
|
158
|
+
mixlib-config (~> 2.0)
|
159
|
+
mixlib-log
|
160
|
+
mixlib-shellout (~> 2.0)
|
161
|
+
rake (~> 10.1)
|
162
|
+
systemu (~> 2.6.4)
|
163
|
+
wmi-lite (~> 1.0)
|
164
|
+
omnibus (4.1.0)
|
165
|
+
aws-sdk (~> 2)
|
166
|
+
chef-sugar (~> 3.0)
|
167
|
+
cleanroom (~> 1.0)
|
168
|
+
mixlib-shellout (~> 2.0)
|
169
|
+
mixlib-versioning
|
170
|
+
ohai (~> 8.0)
|
171
|
+
ruby-progressbar (~> 1.7)
|
172
|
+
thor (~> 0.18)
|
101
173
|
parseconfig (1.0.6)
|
102
174
|
parser (2.2.2.6)
|
103
175
|
ast (>= 1.1, < 3.0)
|
104
176
|
powerpack (0.1.1)
|
105
177
|
private_attr (1.1.0)
|
106
178
|
procto (0.0.2)
|
179
|
+
puppet (3.8.3)
|
180
|
+
facter (> 1.6, < 3)
|
181
|
+
hiera (~> 1.0)
|
182
|
+
json_pure
|
107
183
|
rainbow (2.0.0)
|
108
184
|
rake (10.4.2)
|
109
185
|
rdoc (4.2.0)
|
@@ -143,6 +219,7 @@ GEM
|
|
143
219
|
json (~> 1.8)
|
144
220
|
simplecov-html (~> 0.10.0)
|
145
221
|
simplecov-html (0.10.0)
|
222
|
+
systemu (2.6.5)
|
146
223
|
term-ansicolor (1.3.2)
|
147
224
|
tins (~> 1.0)
|
148
225
|
thor (0.19.1)
|
@@ -162,6 +239,7 @@ GEM
|
|
162
239
|
equalizer (~> 0.0.9)
|
163
240
|
parser (~> 2.2.2)
|
164
241
|
procto (~> 0.0.2)
|
242
|
+
wmi-lite (1.0.0)
|
165
243
|
yard (0.8.7.6)
|
166
244
|
|
167
245
|
PLATFORMS
|
@@ -172,16 +250,17 @@ DEPENDENCIES
|
|
172
250
|
bundler-audit (~> 0.4.0)
|
173
251
|
coveralls (~> 0.8.3)
|
174
252
|
digest (~> 0.0.1)
|
175
|
-
fpm (~> 1.4.0)
|
176
253
|
gem-release (~> 0.7)
|
177
254
|
hoe (~> 3.14)
|
178
255
|
hoe-bundler (~> 1.2)
|
256
|
+
hoe-bundler_audit (~> 1.0)
|
179
257
|
hoe-deveiate (~> 0.7)
|
180
258
|
hoe-doofus (~> 1.0)
|
181
259
|
hoe-gemspec (~> 1.0)
|
182
260
|
hoe-git (~> 1.6)
|
183
261
|
hoe-highline (~> 0.2)
|
184
|
-
hoe-manns (~> 1.
|
262
|
+
hoe-manns (~> 1.2)
|
263
|
+
hoe-packaging (~> 1.1)
|
185
264
|
hoe-reek (~> 1.0)
|
186
265
|
hoe-rubocop (~> 0.1)
|
187
266
|
hoe-rubygems (~> 1.0)
|
@@ -190,13 +269,13 @@ DEPENDENCIES
|
|
190
269
|
hoe-version (~> 1.2)
|
191
270
|
hoe-yard (>= 0.1.2)
|
192
271
|
indexer (~> 0.3)
|
193
|
-
minitest (~> 5.8
|
272
|
+
minitest (~> 5.8)
|
194
273
|
parseconfig (~> 1.0)
|
274
|
+
rainbow (~> 2.0)
|
195
275
|
rake (~> 10.0)
|
196
276
|
reek (~> 3.3)
|
197
277
|
rspec (~> 3.3)
|
198
278
|
rubocop (~> 0.34)
|
199
|
-
setup (~> 5.2)
|
200
279
|
simplecov (~> 0.10)
|
201
280
|
|
202
281
|
BUNDLED WITH
|
data/History.rdoc
CHANGED
@@ -1,8 +1,18 @@
|
|
1
|
+
=== 1.2.0 / 2015-10-13
|
2
|
+
|
3
|
+
* 5 major enhancements
|
4
|
+
|
5
|
+
* HM-6 Copy wiki method implemented
|
6
|
+
* use of .hoerc instead of own config
|
7
|
+
* reworked update_workspace_method
|
8
|
+
* reworked copy_mirror_method
|
9
|
+
* excluded create_packages & deploy_packages methods to hoe-packaging
|
10
|
+
|
1
11
|
=== 1.1.0 / 2015-10-05
|
2
12
|
|
3
13
|
* 2 major enhancements
|
4
14
|
|
5
|
-
* HM-4 Add function to copy the content
|
15
|
+
* HM-4 Add function to copy the content to a mirror directory
|
6
16
|
* HM-5 Integration of bundle audit
|
7
17
|
|
8
18
|
* 1 minor enhancements
|
data/MAINTENANCE.md
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
# Maintenance Policy
|
2
|
+
|
3
|
+
I'm following the [Semantic Versioning](http://semver.org/) for its releases: `(Major).(Minor).(Patch)`.
|
4
|
+
|
5
|
+
- **Major version**: Whenever there is something significant or any backwards incompatible changes.
|
6
|
+
- **Minor version**: When new, backwards compatible functionality is introduced a minor feature is introduced, or when a set of smaller features is rolled out.
|
7
|
+
- **Patch number**: When backwards compatible bug fixes are introduced that fix incorrect behavior.
|
8
|
+
|
9
|
+
The current stable release will receive security patches and bug fixes (eg. `5.0` -> `5.0.1`). Feature releases will mark the next supported stable release where the minor version is increased numerically by increments of one (eg. `5.0 -> 5.1`).
|
10
|
+
|
11
|
+
I encourage everyone to run the latest stable release to ensure that you can easily upgrade to the most secure and feature rich experience. In order to make sure you can easily run the most recent stable release, we are working hard to keep the update process simple and reliable.
|
data/Manifest.txt
CHANGED
@@ -13,13 +13,15 @@ Gemfile
|
|
13
13
|
Gemfile.lock
|
14
14
|
History.rdoc
|
15
15
|
LICENSE.rdoc
|
16
|
+
MAINTENANCE.md
|
16
17
|
Manifest.txt
|
17
18
|
README.rdoc
|
18
19
|
Rakefile
|
19
20
|
VERSION
|
20
21
|
config.reek
|
21
|
-
|
22
|
-
|
22
|
+
docs/behind-the-scene.md
|
23
|
+
docs/index.md
|
23
24
|
lib/hoe/manns.rb
|
25
|
+
recipes/recipe.rb
|
24
26
|
test/manns_spec.rb
|
25
27
|
test/spec_helper.rb
|
data/README.rdoc
CHANGED
@@ -5,16 +5,19 @@ code :: http://gitlab.com/saigkill/hoe-manns
|
|
5
5
|
docu :: https://gitlab.com/saigkill/hoe-manns/wikis/home
|
6
6
|
apidoc :: http://www.rubydoc.info/gems/hoe-manns
|
7
7
|
bugs :: https://gitlab.com/saigkill/hoe-manns/issues
|
8
|
+
license :: {<img src="http://img.shields.io/:license-mit-blue.svg" />}[https://gitlab.com/saigkill/hoe-manns/blob/master/LICENSE.rdoc]
|
8
9
|
last public version :: {<img src="https://badge.fury.io/rb/hoe-manns.png" alt="Last Version" />}[http://rubygems.org/gems/hoe-manns]
|
10
|
+
last rpm :: {<img src="https://img.shields.io/bintray/v/saigkill/rpm/hoe-manns.svg" />}[https://bintray.com/saigkill/rpm/hoe-manns]
|
11
|
+
last deb :: {<img src="https://img.shields.io/bintray/v/saigkill/deb/hoe-manns.svg" />}[https://bintray.com/saigkill/deb/hoe-manns]
|
9
12
|
downloads latest :: {<img src="https://img.shields.io/gem/dtv/hoe-manns.svg" alt="Downloads latest version" />}[http://rubygems.org/gems/hoe-manns]
|
10
13
|
downloads all :: {<img src="https://img.shields.io/gem/dt/hoe-manns.svg" alt="Downloads all versions" />}[http://rubygems.org/gems/hoe-manns]
|
11
|
-
continuous integration :: {<img src="https://secure.travis-ci.org/saigkill/hoe-manns.png?branch=master" alt="Build Status" />}[https://secure.travis-ci.org/saigkill/hoe-manns]
|
12
14
|
continuous integration :: {<img src="https://scrutinizer-ci.com/g/saigkill/hoe-manns/badges/build.png?b=master" />}[https://scrutinizer-ci.com/g/saigkill/hoe-manns]
|
13
15
|
code quality :: {<img src="https://scrutinizer-ci.com/g/saigkill/hoe-manns/badges/quality-score.png?b=master" />}[https://scrutinizer-ci.com/g/saigkill/hoe-manns]
|
14
|
-
code quality :: {<img src="https://
|
15
|
-
|
16
|
+
code quality :: {<img src="https://d3s6mut3hikguw.cloudfront.net/github/saigkill/hoe-manns/badges/gpa.svg" alt="Code Quality" />}[https://codeclimate.com/github/saigkill/hoe-manns]
|
17
|
+
code quality :: {<img src="https://api.codacy.com/project/badge/35e9e27255e8477e96f33b5016720b30" />}[https://www.codacy.com/app/saigkill/hoe-manns]
|
16
18
|
dependency check :: {<img src="https://gemnasium.com/b83a1c275ea3fd0f5a9a93efbb1ea6d9.svg" alt="Build Status" />}[https://gemnasium.com/2a56a3d68e779b8be5caf118ab2700d8]
|
17
19
|
still maintained? :: {<img src="http://stillmaintained.com/saigkill/hoe-manns.png" alt="Still maintained?" />}[http://stillmaintained.com/saigkill/hoe-manns]
|
20
|
+
docs (pdf, epub) :: {<img src="https://readthedocs.org/projects/hoe-manns/badge/?version=latest" />}[http://hoe-manns.readthedocs.org/en/latest/?badge=latest]
|
18
21
|
documentation quality :: {<img src="http://inch-ci.org/github/saigkill/hoe-manns.svg?branch=master" alt="Documentation Quality" />}[http://inch-ci.org/github/saigkill/hoe-manns]
|
19
22
|
donations :: {<img src="https://pledgie.com/campaigns/30268.png?skin_name=chrome" alt="Donations" />}[https://pledgie.com/campaigns/30268]
|
20
23
|
donations :: {<img src="http://img.shields.io/gratipay/saigkill.svg" alt="Donations" />}[https://gratipay.com/~saigkill/]
|
@@ -24,15 +27,17 @@ donations :: {<img src="http://tsv-neuss.de/cms/upload/News-Bilder/amazon1.png"
|
|
24
27
|
|
25
28
|
hoe-manns is a small collection of my personal used rake tasks for using with hoe. Actually it includes that tasks:
|
26
29
|
|
27
|
-
*
|
28
|
-
*
|
29
|
-
*
|
30
|
-
* update_index
|
30
|
+
* bundler:gemfile_lock
|
31
|
+
* bundle_audit:*
|
32
|
+
* clean_pkg
|
31
33
|
* copy_manuals
|
34
|
+
* copy_mirror
|
35
|
+
* copy_wiki
|
36
|
+
* remove_pre_gemspec
|
32
37
|
* run_before_release
|
33
38
|
* run_after_release
|
34
|
-
*
|
35
|
-
*
|
39
|
+
* update_workspace
|
40
|
+
* update_index
|
36
41
|
|
37
42
|
== FEATURES/PROBLEMS:
|
38
43
|
|
@@ -42,13 +47,16 @@ hoe-manns is a small collection of my personal used rake tasks for using with ho
|
|
42
47
|
* Does a index --using VERSION Index.yml if you use the indexer from Rubyworks
|
43
48
|
* copies your manuals to your docpath.
|
44
49
|
* runs the rake tasks before release: git:manifest, bundler:gemfile, update_gemfile_lock, update_index, remove_pre_gemspec, update_workspace, bundler_audit:run and copy_mirror.
|
45
|
-
* runs after release: send_email
|
50
|
+
* runs after release: send_email, create_packages, deploy_packages.
|
46
51
|
* Cleans up the pkg dir
|
52
|
+
* provides bundler_audit tasks
|
53
|
+
* copies the current stuff to a mirror repository
|
47
54
|
|
48
55
|
This Gem was programmed and tested for Linux systems. If anyone would like to make the methods also fit for other OS,
|
49
56
|
i'm happy about Pull requests.
|
50
57
|
|
51
58
|
For a detailed information please visit: https://gitlab.com/saigkill/hoe-manns/wikis/home
|
59
|
+
|
52
60
|
If you like this piece of software don't forget to give the gitlab repo a star.
|
53
61
|
|
54
62
|
== SYNOPSIS:
|
@@ -73,11 +81,8 @@ Also add hoe-manns to your requirements and recreate your Gemfile.
|
|
73
81
|
== INSTALL:
|
74
82
|
|
75
83
|
gem install hoe-manns
|
76
|
-
cd /path/to/gem (In case of using RVM anything like ~/.rvm/gems/ruby-2.2.1/gems/hoe-manns)
|
77
|
-
rake setup
|
78
84
|
|
79
|
-
|
80
|
-
have to place in the config your docpath.
|
85
|
+
Edit your .hoerc: http://bit.ly/1L9hBwN
|
81
86
|
|
82
87
|
== DEVELOPERS:
|
83
88
|
|
@@ -88,6 +93,8 @@ After checking out the source, run:
|
|
88
93
|
This task will install any missing dependencies, run the tests/specs,
|
89
94
|
and generate the RDoc.
|
90
95
|
|
96
|
+
Merge Requests are welcome :-)
|
97
|
+
|
91
98
|
Read https://gitlab.com/saigkill/hoe-manns/blob/master/CONTRIBUTING.md
|
92
99
|
|
93
100
|
== LICENSE:
|
data/Rakefile
CHANGED
@@ -25,6 +25,7 @@ Hoe.plugin :highline
|
|
25
25
|
Hoe.plugin :manns
|
26
26
|
# Hoe.plugin :mercurial
|
27
27
|
# Hoe.plugin :perforce
|
28
|
+
Hoe.plugin :packaging
|
28
29
|
# Hoe.plugin :racc
|
29
30
|
# Hoe.plugin :rcov
|
30
31
|
Hoe.plugin :reek
|
@@ -47,21 +48,23 @@ Hoe.spec 'hoe-manns' do
|
|
47
48
|
email_to << 'ruby-talk@ruby-lang.org'
|
48
49
|
#email_to << 'Sascha.Manns@directbox.com'
|
49
50
|
|
50
|
-
dependency 'setup', '~> 5.2'
|
51
51
|
dependency 'parseconfig', '~> 1.0'
|
52
|
+
dependency 'rainbow', '~> 2.0'
|
53
|
+
dependency 'indexer', '~> 0.3'
|
52
54
|
dependency 'bundler-audit', '~> 0.4.0'
|
53
|
-
dependency 'fpm', '~> 1.4.0'
|
54
55
|
|
55
56
|
extra_dev_deps << ['coveralls', '~> 0.8.3']
|
56
57
|
extra_dev_deps << ['digest', '~> 0.0.1']
|
57
58
|
extra_dev_deps << ['gem-release', '~> 0.7']
|
58
59
|
extra_dev_deps << ['hoe-bundler', '~> 1.2']
|
60
|
+
extra_dev_deps << ['hoe-bundler_audit', '~> 1.0']
|
59
61
|
extra_dev_deps << ['hoe-deveiate', '~> 0.7']
|
60
62
|
extra_dev_deps << ['hoe-doofus', '~> 1.0']
|
61
63
|
extra_dev_deps << ['hoe-gemspec', '~> 1.0']
|
62
64
|
extra_dev_deps << ['hoe-git', '~> 1.6']
|
63
65
|
extra_dev_deps << ['hoe-highline', '~> 0.2']
|
64
|
-
extra_dev_deps << ['hoe-manns', '~> 1.
|
66
|
+
extra_dev_deps << ['hoe-manns', '~> 1.2']
|
67
|
+
extra_dev_deps << ['hoe-packaging', '~> 1.1']
|
65
68
|
extra_dev_deps << ['hoe-reek', '~> 1.0']
|
66
69
|
extra_dev_deps << ['hoe-rubocop', '~> 0.1']
|
67
70
|
extra_dev_deps << ['hoe-rubygems', '~> 1.0']
|
@@ -69,8 +72,7 @@ Hoe.spec 'hoe-manns' do
|
|
69
72
|
extra_dev_deps << ['hoe-travis', '~> 1.2']
|
70
73
|
extra_dev_deps << ['hoe-version', '~> 1.2']
|
71
74
|
extra_dev_deps << ['hoe-yard', '~> 0.1']
|
72
|
-
extra_dev_deps << ['
|
73
|
-
extra_dev_deps << ['minitest', '~> 5.8.1']
|
75
|
+
extra_dev_deps << ['minitest', '~> 5.8']
|
74
76
|
extra_dev_deps << ['rake', '~> 10.0']
|
75
77
|
extra_dev_deps << ['reek', '~> 3.3']
|
76
78
|
extra_dev_deps << ['rspec', '~> 3.3']
|
@@ -81,16 +83,11 @@ Hoe.spec 'hoe-manns' do
|
|
81
83
|
self.history_file = 'History.rdoc'
|
82
84
|
self.readme_file = 'README.rdoc'
|
83
85
|
self.extra_rdoc_files = FileList['*.rdoc'].to_a
|
84
|
-
self.post_install_message = '***
|
86
|
+
self.post_install_message = '*** Edit your .hoerc: http://bit.ly/1L9hBwN *** Please file bugreports and feature requests on: https://gitlab.com/saigkill/hoe-manns/issues'
|
85
87
|
end
|
86
88
|
|
87
89
|
##################################################SETUP ZONE############################################################
|
88
|
-
|
89
|
-
task :setup do
|
90
|
-
system('setup.rb uninstall --force')
|
91
|
-
system('setup.rb config --sysconfdir=$HOME/.hoe-manns')
|
92
|
-
system('setup.rb install')
|
93
|
-
end
|
90
|
+
|
94
91
|
|
95
92
|
|
96
93
|
# vim: syntax=ruby
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.2.0
|
@@ -0,0 +1,214 @@
|
|
1
|
+
# About
|
2
|
+
This kind of documentation explains what makes the "red pill".
|
3
|
+
|
4
|
+
## The methods
|
5
|
+
|
6
|
+
```ruby
|
7
|
+
require 'rainbow/ext/string'
|
8
|
+
# Method for updating Gemfile.lock
|
9
|
+
def self.update_gemfile_lock_method
|
10
|
+
puts 'Updating Gemfile.lock'.color(:yellow)
|
11
|
+
system('bundle update')
|
12
|
+
puts 'Updated Gemfile.lock'.color(:green)
|
13
|
+
end
|
14
|
+
```
|
15
|
+
That one does only a "bundle update" to update the Gemfile.lock.
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
# Method for removing prerelease gemspec
|
19
|
+
def self.remove_pre_gemspec_method
|
20
|
+
puts 'Removing pre version of gemspec'.color(:yellow)
|
21
|
+
File.delete(*Dir.glob('*.gemspec'))
|
22
|
+
puts 'Removed'.color(:green)
|
23
|
+
end
|
24
|
+
```
|
25
|
+
If you have produced a prerelease gemspec you maybe like this method. It removes the gemspec from your sources.
|
26
|
+
|
27
|
+
```ruby
|
28
|
+
# Method for updating workspace
|
29
|
+
def self.update_workspace_method
|
30
|
+
puts 'Updating workspace'.color(:yellow)
|
31
|
+
system('git add Manifest.txt Gemfile Gemfile.lock')
|
32
|
+
system('git commit -m "Updated workspace"')
|
33
|
+
system('git push')
|
34
|
+
puts 'Updated workspace'.color(:green)
|
35
|
+
end
|
36
|
+
```
|
37
|
+
In my case i have sometimes trouble with rake release, because it tells me about not registered but updated files.
|
38
|
+
The whole workspace will be committed with the comment "Updated workspace" and will be pushed to the actual branch.
|
39
|
+
|
40
|
+
```ruby
|
41
|
+
# Method for updating .index
|
42
|
+
def self.update_index_method
|
43
|
+
puts 'Updating .index. Have you changed your VERSION file?'.color(:yellow)
|
44
|
+
system('index --using VERSION Index.yml')
|
45
|
+
system('git add .index')
|
46
|
+
puts '.index updated'.color(:green)
|
47
|
+
end
|
48
|
+
```
|
49
|
+
If you use Indexer from Rubyworks (<a href="https://github.com/rubyworks/indexer">https://github.com/rubyworks/indexer</a> ) this method updates the ".index". Please
|
50
|
+
keep in mind, that you have to update the VERSION file manually. Actual i haven't any idea, how to do this
|
51
|
+
automatically. If you find a solution you're welcome to send a pull request via GitHub.
|
52
|
+
|
53
|
+
``` ruby
|
54
|
+
def self.update_workspace_method
|
55
|
+
puts 'Updating workspace'.colour(:yellow)
|
56
|
+
system('git add Manifest.txt Gemfile Gemfile.lock Rakefile History.* README.*')
|
57
|
+
system('git add bin/*') if File.exist?('bin')
|
58
|
+
system('git add data/*') if File.exist?('data')
|
59
|
+
system('git add etc/*') if File.exist?('etc')
|
60
|
+
system('git add lib/*') if File.exist?('lib')
|
61
|
+
system('git add test/*') if File.exist?('test')
|
62
|
+
system('git commit -m "Updated workspace"')
|
63
|
+
system('git push')
|
64
|
+
system('git status')
|
65
|
+
puts 'Updated workspace'.colour(:green)
|
66
|
+
end
|
67
|
+
```
|
68
|
+
This method adds the Manifest, Gemfile, Rakefile, History, README, bin/*, data/*, etc/*, lib/*, and test/* to git and commits them.
|
69
|
+
|
70
|
+
``` ruby
|
71
|
+
def self.copy_mirror_method
|
72
|
+
project = Hoe::Manns.get_projectname
|
73
|
+
source = "#{Dir.home}/RubymineProjects/#{project}"
|
74
|
+
destination = "#{Dir.home}/RubymineProjects/#{project}-github"
|
75
|
+
puts 'Copying to mirror'.colour(:yellow)
|
76
|
+
FileUtils.cp_r "#{source}/lib/.", "#{destination}/lib/.", verbose: true
|
77
|
+
FileUtils.cp_r "#{source}/test/.", "#{destination}/test/.", verbose: true
|
78
|
+
FileUtils.cp_r "#{source}/Rakefile", "#{destination}", verbose: true
|
79
|
+
FileUtils.cp_r "#{source}/Gemfile", "#{destination}", verbose: true
|
80
|
+
FileUtils.cp_r "#{source}/Gemfile.lock", "#{destination}", verbose: true
|
81
|
+
FileUtils.cd(destination) do
|
82
|
+
system('git add * && git commit -m "Sync mirror" && git push')
|
83
|
+
end
|
84
|
+
```
|
85
|
+
This method copies the most changed projectfiles to ../your-project-github.
|
86
|
+
That means if you have a hoe-manns repository it copies the content to hoe-manns-github. So you haven't to go to the mirror repo manually.
|
87
|
+
|
88
|
+
```ruby
|
89
|
+
# Method for copying the manuals to a target directory
|
90
|
+
def self.copy_manuals_method
|
91
|
+
puts 'Copying manual pages to target'.color(:yellow)
|
92
|
+
pnameraw = File.open(*Dir.glob('README.*')) {|f| f.readline}
|
93
|
+
project = pnameraw.gsub(/[^0-9A-Za-z]/, '')
|
94
|
+
config = ParseConfig.new(File.join("#{Dir.home}/.hoe-manns/hoe-manns.cfg"))
|
95
|
+
docpath = config['docpath'].to_s
|
96
|
+
FileUtils.cp_r('manual/output', "#{docpath}/#{project}")
|
97
|
+
end
|
98
|
+
```
|
99
|
+
My project documentation is part of my Jekyll blog. The docdir resides now in "~/RubyMine/saigkill.github.io/docs".
|
100
|
+
If you have installed this Gem with "rake setup" after "gem install hoe-manns" a config file is placed in your ~/.hoe-manns/hoe-manns.cfg. There you have to replace the docdir "~/RubyMine/saigkill.github.io/docs" with your target directory. The method gets the name of the present project by asking README.{.txt, .rdoc, .md}. The name will be used as name of your target folder in your docdir.
|
101
|
+
In the case of my hoe-manns it will be copied to docdir/hoemanns. You see any other chars than alpha or numeric will be ignored.
|
102
|
+
|
103
|
+
```ruby
|
104
|
+
# Method for cleanup the pkg
|
105
|
+
def self.clean_pkg_method
|
106
|
+
puts 'Cleaning pkg'.color(:yellow)
|
107
|
+
FileUtils.rm_rf('pkg') if Dir.exist?('pkg')
|
108
|
+
puts 'Cleanup succeed'.color(:green)
|
109
|
+
end
|
110
|
+
```
|
111
|
+
Sometimes it can be useful to remove the pkg directory from your source. So just launch this method to do this.
|
112
|
+
|
113
|
+
``` ruby
|
114
|
+
namespace :bundle_audit do
|
115
|
+
desc 'Update bundle-audit database'
|
116
|
+
task :update do
|
117
|
+
Bundler::Audit::CLI.new.update
|
118
|
+
end
|
119
|
+
|
120
|
+
desc 'Check gems for vulns using bundle-audit'
|
121
|
+
task :check do
|
122
|
+
Bundler::Audit::CLI.new.check
|
123
|
+
end
|
124
|
+
|
125
|
+
desc 'Update vulns database and check gems using bundle-audit'
|
126
|
+
task :run do
|
127
|
+
Rake::Task['bundle_audit:update'].invoke
|
128
|
+
Rake::Task['bundle_audit:check'].invoke
|
129
|
+
end
|
130
|
+
end
|
131
|
+
task :bundle_audit do
|
132
|
+
Rake::Task['bundle_audit:run'].invoke
|
133
|
+
end
|
134
|
+
```
|
135
|
+
This Rake task provides 3 new Rake commands: bundle_audit:update, bundle_audit:run, and bundle_audit:check. A bundle_audit:run does bundle_audit:update and bundle_update:check. So you need in most cases just that one command.
|
136
|
+
|
137
|
+
``` ruby
|
138
|
+
def self.copy_wiki_method
|
139
|
+
puts 'Copying wiki content to docs'.colour(:yellow)
|
140
|
+
project = Hoe::Manns.get_projectname
|
141
|
+
dest = "#{Dir.home}/RubymineProjects/#{project}"
|
142
|
+
wikipath = "#{Dir.home}/RubymineProjects/#{project}.wiki"
|
143
|
+
FileUtils.mkdir_p "#{dest}/doc", verbose: true if File.exist?('docs') == false
|
144
|
+
files = Dir.glob("#{wikipath}/*.md")
|
145
|
+
FileUtils.cp files, "#{dest}/docs", verbose: true
|
146
|
+
FileUtils.mv "#{dest}/docs/home.md", "#{dest}/docs/index.md", verbose: true
|
147
|
+
puts 'Copied wiki content'.colour(:green)
|
148
|
+
end
|
149
|
+
```
|
150
|
+
GitLab provides for projects wiki a own git repository, which has the projectname extended with ".wiki". So this method copies the docs from projects wiki repo to the project repo and can be shipped.
|
151
|
+
|
152
|
+
|
153
|
+
```ruby
|
154
|
+
def self.create_packages_method
|
155
|
+
project = Hoe::Manns.get_projectname
|
156
|
+
FileUtils.cd("recipes/#{project}") do
|
157
|
+
puts 'Creating the deb package'.colour(:yellow)
|
158
|
+
system('fpm-cook -t deb')
|
159
|
+
puts 'deb creating done'.colour(:green)
|
160
|
+
puts 'Creating the rpm package'.colour(:yellow)
|
161
|
+
system('fpm-cook -t rpm')
|
162
|
+
puts 'rpm creating done'.colour(:green)
|
163
|
+
end
|
164
|
+
end
|
165
|
+
```
|
166
|
+
This method changes into the directory $projektname-maindir/recipes/$projektname. There it expects a "recipe.rb" file which looks like:
|
167
|
+
|
168
|
+
``` ruby
|
169
|
+
# Recipe class
|
170
|
+
class HoeMannsRubyGem < FPM::Cookery::RubyGemRecipe
|
171
|
+
name 'hoe-manns'
|
172
|
+
version '1.1.0'
|
173
|
+
maintainer 'Sascha Manns <samannsml@directbox.com>'
|
174
|
+
end
|
175
|
+
```
|
176
|
+
You have to set the version manually for each build. Sure: you can run that command just after you official released your gem. :-)
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
## The Rake tasks
|
181
|
+
|
182
|
+
In most cases you don't run the method directly, but use a Rake Task.
|
183
|
+
|
184
|
+
All Rake tasks in hoe-manns having a common structure:
|
185
|
+
|
186
|
+
```ruby
|
187
|
+
desc 'Update Gemfile.lock'
|
188
|
+
task :update_gemfile_lock do
|
189
|
+
Hoe::Manns.update_gemfile_lock_method
|
190
|
+
end
|
191
|
+
```
|
192
|
+
You see, it just runs the method. A task ":update_gemfile_lock" runs a "update_gemfile_lock_method".
|
193
|
+
|
194
|
+
hoe-manns ships two Rake tasks without any methods. These tasks are used to run a bunch of other tasks in a special order.
|
195
|
+
|
196
|
+
```ruby
|
197
|
+
desc 'Run all tasks before rake release'
|
198
|
+
task :run_before_release => %w(git:manifest bundler:gemfile update_gemfile_lock update_index remove_pre_gemspec
|
199
|
+
update_workspace) do
|
200
|
+
puts 'Ready to run rake release VERSION=x.y.z'.color(:green)
|
201
|
+
end
|
202
|
+
```
|
203
|
+
This rake task runs some rake tasks in that order: git:manifest, bundler:gemfile, update_gemfile_lock, update_index, remove_pre_gemspec and update_workspace.
|
204
|
+
|
205
|
+
```ruby
|
206
|
+
desc 'Run all tasks after rake release'
|
207
|
+
task :run_after_release => %w(send_email version:bump) do
|
208
|
+
puts 'Release finished'.color (:green)
|
209
|
+
end
|
210
|
+
```
|
211
|
+
This task runs: send_email and version:bump. That can be useful to automate things after the release.
|
212
|
+
|
213
|
+
|
214
|
+
|
data/docs/index.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
This is a manual for hoe-manns. In this collection i excluded some code which i using all around my projects. But what exactly happens?
|
2
|
+
|
3
|
+
* update_gemfile_lock does a simple "bundler update" which recreates the Gemfile.lock
|
4
|
+
* remove_pre_gemspec removes the gemfile what could be present from earlier tests
|
5
|
+
* update_workspace checks the stuff in. So you can make rake release on a clean base
|
6
|
+
* update_index runs a "index --using VERSION Index.yml". If you are using indexer (Metadata creator) from Rubyworks
|
7
|
+
you can use that task for running an update. You have to update the version number in the VERSION file manually!
|
8
|
+
Actually i haven't any idea, how to do that automatically.
|
9
|
+
* clean_pkg cleans up your pkg directory
|
10
|
+
* update_manuals copies the manual folder to your docpath. The task asks you for your project name. The docpath will be set in USER/.hoe-manns/hoe-manns.cfg. Let me say you have a project "dummy" and you place your docs in /your/path/docs the manuals will be shown under /your/path/docs/dummy/. There you have your index.html and the resources.
|
11
|
+
* run_before_release runs the Rake tasks: "git-manifest", "bundler:gemfile", "update_gemfile_lock", "update_index",
|
12
|
+
"remove_pre_gemspec" and "update_workspace" before the release.
|
13
|
+
* run_after_release runs the Rake tasks "send_email" and "version:bump" after release.
|
14
|
+
* bundler_audit:run updates the database from vulnerabilities and does a check
|
15
|
+
* update_workspace adds the workspace (Manifest, Gemfile, Rakefile, History, Readme, bin/*, data/*, etc/*, lib/*, and test/* to git and does a commit.
|
16
|
+
* copy_mirror_method copies the changes to ../your-projectname-github).
|
17
|
+
* creates deb & rpm packages from gem
|
18
|
+
* deploys packages to bintray
|
19
|
+
|
20
|
+
A deeper insight is possible there: [Behind the scene](behind-the-scene).
|
21
|
+
|
22
|
+
The APIDocs are placed there: http://www.rubydoc.info/gems/hoe-manns.
|
23
|
+
|
24
|
+
> This Gem was programmed and tested for Linux systems. If anyone would like to make the methods also fit for other OS, i'm happy about Pull requests.
|
data/lib/hoe/manns.rb
CHANGED
@@ -8,24 +8,20 @@
|
|
8
8
|
|
9
9
|
# Dependencies
|
10
10
|
|
11
|
-
# empty main class
|
12
|
-
class Hoe; end
|
13
|
-
|
14
11
|
# Main module for hoe-manns
|
15
12
|
module Hoe::Manns
|
16
13
|
# Version constant for HOE::Manns
|
17
|
-
VERSION = '1.
|
14
|
+
VERSION = '1.2.0'
|
18
15
|
|
19
|
-
attr_accessor :update_gemfile_lock
|
20
16
|
attr_accessor :remove_pre_gemspec
|
21
|
-
attr_accessor :update_workspace
|
22
17
|
attr_accessor :update_index
|
23
18
|
attr_accessor :copy_manuals
|
24
19
|
attr_accessor :copy_mirror
|
20
|
+
attr_accessor :copy_wiki
|
25
21
|
attr_accessor :run_before_release
|
26
22
|
attr_accessor :run_after_release
|
27
23
|
attr_accessor :clean_pkg
|
28
|
-
attr_accessor :
|
24
|
+
attr_accessor :bundle_audit
|
29
25
|
|
30
26
|
# Initialize plugin
|
31
27
|
def initialize_manns
|
@@ -33,21 +29,22 @@ module Hoe::Manns
|
|
33
29
|
require 'fileutils'
|
34
30
|
require 'parseconfig'
|
35
31
|
require 'rainbow/ext/string'
|
32
|
+
require 'omnibus/file_syncer'
|
36
33
|
require 'bundler/audit/cli'
|
37
34
|
end
|
38
35
|
|
39
36
|
# Definitions of the Rake task
|
40
37
|
def define_manns_tasks
|
41
|
-
|
38
|
+
# rubocop:disable Metrics/LineLength
|
42
39
|
# Rake Task for updating Gemfile.lock
|
43
40
|
desc 'Update Gemfile.lock'
|
44
|
-
task :
|
41
|
+
task 'bundler:gemfile_lock' do
|
45
42
|
Hoe::Manns.update_gemfile_lock_method
|
46
43
|
end
|
47
44
|
|
48
45
|
# Rake Task for removing Prerelease Gemspecs
|
49
46
|
desc 'Remove Pre-Gemspec'
|
50
|
-
task :
|
47
|
+
task 'gem:spec_remove' do
|
51
48
|
Hoe::Manns.remove_pre_gemspec_method
|
52
49
|
end
|
53
50
|
|
@@ -70,12 +67,37 @@ module Hoe::Manns
|
|
70
67
|
Hoe::Manns.copy_manuals_method
|
71
68
|
end
|
72
69
|
|
70
|
+
# Rake Task for copying the GitLab Wiki to ./doc
|
71
|
+
desc 'Copy Wiki'
|
72
|
+
task :copy_wiki do
|
73
|
+
Hoe::Manns.copy_wiki_method
|
74
|
+
end
|
75
|
+
|
73
76
|
# Rake task for copying to mirror
|
74
77
|
desc 'Coying to mirror'
|
75
|
-
task :copy_mirror do
|
78
|
+
task :copy_mirror => %w(clean_pkg) do
|
76
79
|
Hoe::Manns.copy_mirror_method
|
77
80
|
end
|
78
81
|
|
82
|
+
# Rake Task for running needed Rake Tasks before running rake release
|
83
|
+
desc 'Run all tasks before rake release'
|
84
|
+
task :run_before_release => %w(git:manifest bundler:gemfile bundler:gemfile_lock update_index gem:spec_remove
|
85
|
+
update_workspace bundle_audit:run copy_mirror) do
|
86
|
+
puts 'Ready to run rake release VERSION=x.y.z'.colour(:green)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Rake Task for running needed Rake Tasks after running rake release
|
90
|
+
desc 'Run all tasks after rake release'
|
91
|
+
task :run_after_release => %w(send_email clean_pkg generate_packages deploy_packages) do
|
92
|
+
puts 'Release finished'.colour (:green)
|
93
|
+
end
|
94
|
+
|
95
|
+
# Rake Task for cleaning up the pkg
|
96
|
+
desc 'Clean pkg'
|
97
|
+
task :clean_pkg do
|
98
|
+
Hoe::Manns.clean_pkg_method
|
99
|
+
end
|
100
|
+
|
79
101
|
# Method for bundle audit
|
80
102
|
namespace :bundle_audit do
|
81
103
|
desc 'Update bundle-audit database'
|
@@ -97,25 +119,6 @@ module Hoe::Manns
|
|
97
119
|
task :bundle_audit do
|
98
120
|
Rake::Task['bundle_audit:run'].invoke
|
99
121
|
end
|
100
|
-
|
101
|
-
# Rake Task for running needed Rake Tasks before running rake release
|
102
|
-
desc 'Run all tasks before rake release'
|
103
|
-
task :run_before_release => %w(git:manifest bundler:gemfile update_gemfile_lock update_index remove_pre_gemspec
|
104
|
-
update_workspace bundle_audit:run copy_mirror) do
|
105
|
-
puts 'Ready to run rake release VERSION=x.y.z'.colour(:green)
|
106
|
-
end
|
107
|
-
|
108
|
-
# Rake Task for running needed Rake Tasks after running rake release
|
109
|
-
desc 'Run all tasks after rake release'
|
110
|
-
task :run_after_release => %w(send_email version:bump) do
|
111
|
-
puts 'Release finished'.colour (:green)
|
112
|
-
end
|
113
|
-
|
114
|
-
# Rake Task for cleaning up the pkg
|
115
|
-
desc 'Clean pkg'
|
116
|
-
task :clean_pkg do
|
117
|
-
Hoe::Manns.clean_pkg_method
|
118
|
-
end
|
119
122
|
end
|
120
123
|
|
121
124
|
require 'rainbow/ext/string'
|
@@ -136,12 +139,14 @@ update_workspace bundle_audit:run copy_mirror) do
|
|
136
139
|
# Method for updating workspace
|
137
140
|
def self.update_workspace_method
|
138
141
|
puts 'Updating workspace'.colour(:yellow)
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
142
|
+
%w(Rakefile Gemfile Gemfile.lock .autotest .codeclimate.yml .coveralls.yml .gemnasium.yml .gitignore .index .rspec .rubocop.yml
|
143
|
+
.scrutinizer.yml .travis.yml CODE_OF_CONDUCT.md config.reek CONTRIBUTING.md History.rdoc Index.yml LICENSE.rdoc MAINTENANCE.md Manifest.txt
|
144
|
+
README.rdoc VERSION recipes/recipe.rb).each do |i|
|
145
|
+
system("git add #{i}") if File.exist?(i)
|
146
|
+
end
|
147
|
+
%w(bin etc data docs lib test).each do |d|
|
148
|
+
system("git add #{d}/*") if File.exist?(d)
|
149
|
+
end
|
145
150
|
system('git commit -m "Updated workspace"')
|
146
151
|
system('git push')
|
147
152
|
system('git status')
|
@@ -160,37 +165,69 @@ update_workspace bundle_audit:run copy_mirror) do
|
|
160
165
|
def self.copy_manuals_method
|
161
166
|
puts 'Copying manual pages to target'.colour(:yellow)
|
162
167
|
project = Hoe::Manns.get_projectname
|
163
|
-
config =
|
164
|
-
docpath = config['docpath'].to_s
|
168
|
+
config = YAML.load(File.read("#{Dir.home}/.hoerc"))
|
169
|
+
docpath = config['manns']['docpath'].to_s
|
165
170
|
FileUtils.cp_r('manual/output', "#{docpath}/#{project}")
|
171
|
+
puts 'Copied manuals'.colour(:green)
|
166
172
|
end
|
167
173
|
|
168
174
|
# Method for copying to mirror
|
169
175
|
def self.copy_mirror_method
|
170
176
|
project = Hoe::Manns.get_projectname
|
171
|
-
|
172
|
-
|
177
|
+
develpath = Hoe::Manns.get_develpath
|
178
|
+
source = "#{develpath}/#{project}"
|
179
|
+
destination = "#{develpath}/#{project}-mirror"
|
173
180
|
puts 'Copying to mirror'.colour(:yellow)
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
181
|
+
%w(bin etc data docs lib test recipes).each do |d|
|
182
|
+
if !File.exist?("#{destination}/#{d}") # if d isn't available in destination
|
183
|
+
FileUtils.mkdir("#{destination}/#{d}") if File.exist?("#{source}/#{d}") # and exist in source then create them
|
184
|
+
end
|
185
|
+
FileUtils.cp_r "#{source}/#{d}/.", "#{destination}/#{d}/.", verbose: true if File.exist?("#{source}/#{d}") # copy the content of the dirs
|
186
|
+
end
|
187
|
+
FileUtils.cp_r "#{source}/recipes/recipe.rb", "#{destination}/recipes/recipe.rb", verbose: true if File.exist?("#{source}/recipes/recipe.rb")
|
179
188
|
FileUtils.cd(destination) do
|
180
|
-
|
189
|
+
%w(Rakefile Gemfile Gemfile.lock .autotest .codeclimate.yml .coveralls.yml .gemnasium.yml .gitignore .index .rspec .rubocop.yml
|
190
|
+
.scrutinizer.yml .travis.yml CODE_OF_CONDUCT.md config.reek CONTRIBUTING.md History.rdoc Index.yml LICENSE.rdoc MAINTENANCE.md Manifest.txt
|
191
|
+
README.rdoc VERSION).each do |i|
|
192
|
+
FileUtils.cp_r "#{source}/#{i}", "#{destination}", verbose: true if File.exist?("#{source}/#{i}")
|
193
|
+
system("git add #{i}") if File.exist?(i)
|
194
|
+
%w(bin etc docs lib test).each do |d|
|
195
|
+
system("git add #{d}/*") if File.exist?(d)
|
196
|
+
end
|
197
|
+
end
|
198
|
+
system('git commit -m "Sync mirror" && git push')
|
181
199
|
end
|
200
|
+
system('git status')
|
182
201
|
puts 'Copying to mirror succeeded'.colour(:green)
|
183
202
|
end
|
184
203
|
|
185
|
-
#
|
204
|
+
# Copies the actual wiki entries to ./doc
|
205
|
+
def self.copy_wiki_method
|
206
|
+
puts 'Copying wiki content to docs'.colour(:yellow)
|
207
|
+
project = Hoe::Manns.get_projectname
|
208
|
+
develpath = Hoe::Manns.get_develpath
|
209
|
+
wikipath = "#{develpath}/#{project}.wiki"
|
210
|
+
FileUtils.mkdir_p 'docs', verbose: true if File.exist?('docs') == false
|
211
|
+
files = Dir.glob("#{wikipath}/*.md")
|
212
|
+
FileUtils.cp files, 'docs', verbose: true
|
213
|
+
FileUtils.mv 'docs/home.md', 'docs/index.md', verbose: true
|
214
|
+
puts 'Copied wiki content'.colour(:green)
|
215
|
+
end
|
186
216
|
|
187
217
|
# Method for getting the project name
|
188
218
|
def self.get_projectname
|
189
|
-
pnameraw = File.open(*Dir.glob('README.*')) {|f| f.readline}
|
219
|
+
pnameraw = File.open(*Dir.glob('README.*')) { |f| f.readline }
|
190
220
|
project = pnameraw.gsub(/[^0-9A-Za-z_-]/, '')
|
191
221
|
return project
|
192
222
|
end
|
193
223
|
|
224
|
+
# Method for getting the develpath
|
225
|
+
def self.get_develpath
|
226
|
+
config = YAML.load(File.read("#{Dir.home}/.hoerc"))
|
227
|
+
develpath = config['manns']['develpath'].to_s
|
228
|
+
return develpath
|
229
|
+
end
|
230
|
+
|
194
231
|
# Method for cleanup the pkg
|
195
232
|
def self.clean_pkg_method
|
196
233
|
puts 'Cleaning pkg'.colour(:yellow)
|
data/recipes/recipe.rb
ADDED
data/test/manns_spec.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'rspec'
|
2
2
|
require 'digest'
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require 'lib/hoe/manns'
|
4
|
+
require 'test/spec_helper'
|
5
5
|
|
6
6
|
describe 'Hoe::Manns' do
|
7
7
|
describe 'update_gemfile_lock_method' do
|
@@ -23,9 +23,9 @@ describe 'Hoe::Manns' do
|
|
23
23
|
it 'removes the old gemspec' do
|
24
24
|
Hoe::Manns.remove_pre_gemspec_method
|
25
25
|
|
26
|
-
gemspec =
|
27
|
-
gemspec =
|
28
|
-
expect(gemspec) ==
|
26
|
+
gemspec = false
|
27
|
+
gemspec = true if Dir.glob('*.gemspec').empty? == true
|
28
|
+
expect(gemspec) == false
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hoe-manns
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sascha Manns
|
@@ -30,64 +30,64 @@ cert_chain:
|
|
30
30
|
cEuJ8AWKUjdkdt1Nba7qmareRtc2+pEiITV5ANv24b8vsmq9/8nbxQckdO7+NQRP
|
31
31
|
pTQZhJ4mX28Qe1F9IE4F4UDeo8gQSPHJOttZA33sRLC19sH67dLq4pM=
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2015-10-
|
33
|
+
date: 2015-10-13 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
|
-
name:
|
36
|
+
name: parseconfig
|
37
37
|
requirement: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
41
|
+
version: '1.0'
|
42
42
|
type: :runtime
|
43
43
|
prerelease: false
|
44
44
|
version_requirements: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
48
|
+
version: '1.0'
|
49
49
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
50
|
+
name: rainbow
|
51
51
|
requirement: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
55
|
+
version: '2.0'
|
56
56
|
type: :runtime
|
57
57
|
prerelease: false
|
58
58
|
version_requirements: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
62
|
+
version: '2.0'
|
63
63
|
- !ruby/object:Gem::Dependency
|
64
|
-
name:
|
64
|
+
name: indexer
|
65
65
|
requirement: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: 0.
|
69
|
+
version: '0.3'
|
70
70
|
type: :runtime
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: 0.
|
76
|
+
version: '0.3'
|
77
77
|
- !ruby/object:Gem::Dependency
|
78
|
-
name:
|
78
|
+
name: bundler-audit
|
79
79
|
requirement: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version:
|
83
|
+
version: 0.4.0
|
84
84
|
type: :runtime
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version:
|
90
|
+
version: 0.4.0
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: hoe-highline
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
@@ -172,6 +172,20 @@ dependencies:
|
|
172
172
|
- - "~>"
|
173
173
|
- !ruby/object:Gem::Version
|
174
174
|
version: '1.2'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: hoe-bundler_audit
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - "~>"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '1.0'
|
182
|
+
type: :development
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '1.0'
|
175
189
|
- !ruby/object:Gem::Dependency
|
176
190
|
name: hoe-deveiate
|
177
191
|
requirement: !ruby/object:Gem::Requirement
|
@@ -234,14 +248,28 @@ dependencies:
|
|
234
248
|
requirements:
|
235
249
|
- - "~>"
|
236
250
|
- !ruby/object:Gem::Version
|
237
|
-
version: '1.
|
251
|
+
version: '1.2'
|
238
252
|
type: :development
|
239
253
|
prerelease: false
|
240
254
|
version_requirements: !ruby/object:Gem::Requirement
|
241
255
|
requirements:
|
242
256
|
- - "~>"
|
243
257
|
- !ruby/object:Gem::Version
|
244
|
-
version: '1.
|
258
|
+
version: '1.2'
|
259
|
+
- !ruby/object:Gem::Dependency
|
260
|
+
name: hoe-packaging
|
261
|
+
requirement: !ruby/object:Gem::Requirement
|
262
|
+
requirements:
|
263
|
+
- - "~>"
|
264
|
+
- !ruby/object:Gem::Version
|
265
|
+
version: '1.1'
|
266
|
+
type: :development
|
267
|
+
prerelease: false
|
268
|
+
version_requirements: !ruby/object:Gem::Requirement
|
269
|
+
requirements:
|
270
|
+
- - "~>"
|
271
|
+
- !ruby/object:Gem::Version
|
272
|
+
version: '1.1'
|
245
273
|
- !ruby/object:Gem::Dependency
|
246
274
|
name: hoe-reek
|
247
275
|
requirement: !ruby/object:Gem::Requirement
|
@@ -326,34 +354,20 @@ dependencies:
|
|
326
354
|
- - "~>"
|
327
355
|
- !ruby/object:Gem::Version
|
328
356
|
version: '1.2'
|
329
|
-
- !ruby/object:Gem::Dependency
|
330
|
-
name: indexer
|
331
|
-
requirement: !ruby/object:Gem::Requirement
|
332
|
-
requirements:
|
333
|
-
- - "~>"
|
334
|
-
- !ruby/object:Gem::Version
|
335
|
-
version: '0.3'
|
336
|
-
type: :development
|
337
|
-
prerelease: false
|
338
|
-
version_requirements: !ruby/object:Gem::Requirement
|
339
|
-
requirements:
|
340
|
-
- - "~>"
|
341
|
-
- !ruby/object:Gem::Version
|
342
|
-
version: '0.3'
|
343
357
|
- !ruby/object:Gem::Dependency
|
344
358
|
name: minitest
|
345
359
|
requirement: !ruby/object:Gem::Requirement
|
346
360
|
requirements:
|
347
361
|
- - "~>"
|
348
362
|
- !ruby/object:Gem::Version
|
349
|
-
version: 5.8
|
363
|
+
version: '5.8'
|
350
364
|
type: :development
|
351
365
|
prerelease: false
|
352
366
|
version_requirements: !ruby/object:Gem::Requirement
|
353
367
|
requirements:
|
354
368
|
- - "~>"
|
355
369
|
- !ruby/object:Gem::Version
|
356
|
-
version: 5.8
|
370
|
+
version: '5.8'
|
357
371
|
- !ruby/object:Gem::Dependency
|
358
372
|
name: rake
|
359
373
|
requirement: !ruby/object:Gem::Requirement
|
@@ -455,15 +469,17 @@ dependencies:
|
|
455
469
|
description: |-
|
456
470
|
hoe-manns is a small collection of my personal used rake tasks for using with hoe. Actually it includes that tasks:
|
457
471
|
|
458
|
-
*
|
459
|
-
*
|
460
|
-
*
|
461
|
-
* update_index
|
472
|
+
* bundler:gemfile_lock
|
473
|
+
* bundle_audit:*
|
474
|
+
* clean_pkg
|
462
475
|
* copy_manuals
|
476
|
+
* copy_mirror
|
477
|
+
* copy_wiki
|
478
|
+
* remove_pre_gemspec
|
463
479
|
* run_before_release
|
464
480
|
* run_after_release
|
465
|
-
*
|
466
|
-
*
|
481
|
+
* update_workspace
|
482
|
+
* update_index
|
467
483
|
email:
|
468
484
|
- samannsml@directbox.com
|
469
485
|
executables: []
|
@@ -473,8 +489,11 @@ extra_rdoc_files:
|
|
473
489
|
- CONTRIBUTING.md
|
474
490
|
- History.rdoc
|
475
491
|
- LICENSE.rdoc
|
492
|
+
- MAINTENANCE.md
|
476
493
|
- Manifest.txt
|
477
494
|
- README.rdoc
|
495
|
+
- docs/behind-the-scene.md
|
496
|
+
- docs/index.md
|
478
497
|
files:
|
479
498
|
- ".autotest"
|
480
499
|
- ".codeclimate.yml"
|
@@ -491,21 +510,23 @@ files:
|
|
491
510
|
- Gemfile.lock
|
492
511
|
- History.rdoc
|
493
512
|
- LICENSE.rdoc
|
513
|
+
- MAINTENANCE.md
|
494
514
|
- Manifest.txt
|
495
515
|
- README.rdoc
|
496
516
|
- Rakefile
|
497
517
|
- VERSION
|
498
518
|
- config.reek
|
499
|
-
-
|
500
|
-
-
|
519
|
+
- docs/behind-the-scene.md
|
520
|
+
- docs/index.md
|
501
521
|
- lib/hoe/manns.rb
|
522
|
+
- recipes/recipe.rb
|
502
523
|
- test/manns_spec.rb
|
503
524
|
- test/spec_helper.rb
|
504
525
|
homepage: http://saigkill.github.io
|
505
526
|
licenses:
|
506
527
|
- MIT
|
507
528
|
metadata: {}
|
508
|
-
post_install_message: "***
|
529
|
+
post_install_message: "*** Edit your .hoerc: http://bit.ly/1L9hBwN *** Please file
|
509
530
|
bugreports and feature requests on: https://gitlab.com/saigkill/hoe-manns/issues"
|
510
531
|
rdoc_options:
|
511
532
|
- "--title"
|
metadata.gz.sig
CHANGED
Binary file
|
data/data/hoe-manns/rubygems.png
DELETED
Binary file
|
data/etc/hoe-manns.cfg
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
docpath = "/home/sascha/RubymineProjects/saigkill.github.com/docs/"
|