hoe-packaging 1.1.5 → 1.2.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/Gemfile +11 -12
- data/Gemfile.lock +84 -85
- data/History.rdoc +21 -0
- data/LICENSE.rdoc +619 -24
- data/Manifest.txt +0 -14
- data/README.rdoc +101 -44
- data/Rakefile +17 -33
- data/STATUS.rdoc +24 -0
- data/lib/hoe/packaging.rb +37 -23
- metadata +54 -72
- data/.autotest +0 -25
- data/.codeclimate.yml +0 -8
- data/.coveralls.yml +0 -1
- data/.gemnasium.yml +0 -5
- data/.rspec +0 -2
- data/.rubocop.yml +0 -39
- data/.scrutinizer.yml +0 -21
- data/.travis.yml +0 -29
- data/CODE_OF_CONDUCT.md +0 -17
- data/CONTRIBUTING.md +0 -33
- data/MAINTENANCE.md +0 -11
- data/config.reek +0 -111
- data/spec/packaging_spec.rb +0 -8
- data/spec/spec_helper.rb +0 -15
data/Manifest.txt
CHANGED
|
@@ -1,22 +1,8 @@
|
|
|
1
|
-
.autotest
|
|
2
|
-
.codeclimate.yml
|
|
3
|
-
.coveralls.yml
|
|
4
|
-
.gemnasium.yml
|
|
5
|
-
.rspec
|
|
6
|
-
.rubocop.yml
|
|
7
|
-
.scrutinizer.yml
|
|
8
|
-
.travis.yml
|
|
9
|
-
CODE_OF_CONDUCT.md
|
|
10
|
-
CONTRIBUTING.md
|
|
11
1
|
Gemfile
|
|
12
2
|
Gemfile.lock
|
|
13
3
|
History.rdoc
|
|
14
4
|
LICENSE.rdoc
|
|
15
|
-
MAINTENANCE.md
|
|
16
5
|
Manifest.txt
|
|
17
6
|
README.rdoc
|
|
18
7
|
Rakefile
|
|
19
|
-
config.reek
|
|
20
8
|
lib/hoe/packaging.rb
|
|
21
|
-
spec/packaging_spec.rb
|
|
22
|
-
spec/spec_helper.rb
|
data/README.rdoc
CHANGED
|
@@ -1,31 +1,34 @@
|
|
|
1
1
|
= hoe-packaging
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
docs (en-US) :: https://saigkill.github.io/docs/hoe-packaging/en-US/html/index.html
|
|
6
|
-
docs (de-DE) :: https://saigkill.github.io/docs/hoe-packaging/de-DE/html/index.html
|
|
3
|
+
code :: https://launchpad.net/hoe-packaging
|
|
4
|
+
docs :: https://saigkill.github.io/hoe-packaging/about/
|
|
7
5
|
apidoc :: http://www.rubydoc.info/gems/hoe-packaging
|
|
8
|
-
bugs :: https://
|
|
6
|
+
bugs :: https://bugs.launchpad.net/hoe-packaging
|
|
7
|
+
questions :: https://answers.launchpad.net/hoe-packaging
|
|
8
|
+
feature requests :: https://blueprints.launchpad.net/hoe-packaging
|
|
9
|
+
openhub statistics :: https://www.openhub.net/p/hoe-packaging
|
|
10
|
+
authors blog :: https://saigkill.tuxfamily.org
|
|
9
11
|
min. rubyver :: 2.2.0
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
downloads all :: {<img src="https://img.shields.io/gem/dt/hoe-packaging.svg" alt="Downloads all versions" />}[http://rubygems.org/gems/hoe-packaging]
|
|
14
|
-
continuous integration :: {<img src="https://scrutinizer-ci.com/g/saigkill/hoe-packaging/badges/build.png?b=master" />}[https://scrutinizer-ci.com/g/saigkill/hoe-packaging/]
|
|
15
|
-
code quality :: {<img src="https://scrutinizer-ci.com/g/saigkill/hoe-packaging/badges/quality-score.png?b=master" />}[https://scrutinizer-ci.com/g/saigkill/hoe-packaging/]
|
|
16
|
-
code quality :: {<img src="https://d3s6mut3hikguw.cloudfront.net/github/saigkill/hoe-packaging/badges/gpa.svg" alt="Code Quality" />}[https://codeclimate.com/github/saigkill/hoe-packaging]
|
|
17
|
-
code quality :: {<img src="https://api.codacy.com/project/badge/Grade/ddc76c674b464b4eac7a8d05a0155c24" alt="Codacy code quality" />}[https://www.codacy.com/app/samannsml/hoe-packaging?utm_source=github.com&utm_medium=referral&utm_content=saigkill/hoe-packaging&utm_campaign=Badge_Grade]
|
|
18
|
-
security :: {<img src="https://hakiri.io/github/saigkill/hoe-packaging/master.svg" alt="security" />}[https://hakiri.io/github/saigkill/hoe-packaging/master]
|
|
19
|
-
dependency check :: {<img src="https://gemnasium.com/saigkill/hoe-packaging.svg" alt="Dependency Status" />}[https://gemnasium.com/saigkill/hoe-packaging]
|
|
20
|
-
documentation quality :: {<img src="http://inch-ci.org/github/saigkill/hoe-packaging.svg?branch=master" alt="Documentation Quality" />}[http://inch-ci.org/github/saigkill/hoe-packaging]
|
|
21
|
-
donations :: {<img src="https://pledgie.com/campaigns/30335.png?skin_name=chrome" alt="Donations" />}[https://pledgie.com/campaigns/30335]
|
|
22
|
-
donations :: {<img src="http://tsv-neuss.de/cms/upload/News-Bilder/amazon1.png" alt="Donations" />}[http://www.amazon.de/registry/wishlist/D75HOEQ00BDD]
|
|
12
|
+
|
|
13
|
+
If you're reading this on Github, please keep in mind, that this is just a
|
|
14
|
+
mirror. The development happens on: https://launchpad.net/hoe-packaging.
|
|
23
15
|
|
|
24
16
|
== DESCRIPTION:
|
|
25
17
|
|
|
26
18
|
hoe-packaging is a plugin for the hoe ruby projecthelper (https://github.com/seattlerb/hoe). It provides creation of rpm and deb packages,
|
|
27
19
|
also a deployment to bintray.
|
|
28
20
|
|
|
21
|
+
The History.rdoc contains a detailed description on what has changed. For most
|
|
22
|
+
users the NEWS file might be a better place to look since it contains
|
|
23
|
+
change summaries between the different versions.
|
|
24
|
+
|
|
25
|
+
youtube_dlhelper is released under the GPL3 License, see the file 'License.rdoc'
|
|
26
|
+
for more information.
|
|
27
|
+
|
|
28
|
+
The official web site is:
|
|
29
|
+
|
|
30
|
+
https://launchpad.net/hoe-packaging
|
|
31
|
+
|
|
29
32
|
== FEATURES/PROBLEMS:
|
|
30
33
|
|
|
31
34
|
* creating of deb & rpm packages
|
|
@@ -33,9 +36,8 @@ also a deployment to bintray.
|
|
|
33
36
|
|
|
34
37
|
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.
|
|
35
38
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
If you like this little program so don't forget to give this GitLab repository a star :-)
|
|
39
|
+
See the {FAQs}[https://answers.launchpad.net/hoe-packaging/+faqs] for checking known issues.
|
|
40
|
+
See the {status}[https://github.com/saigkill/hoe-packaging/blob/master/STATUS.rdoc] of the app.
|
|
39
41
|
|
|
40
42
|
== SYNOPSIS:
|
|
41
43
|
|
|
@@ -49,16 +51,21 @@ Use in your Rakefile:
|
|
|
49
51
|
|
|
50
52
|
Also add hoe-packaging to your requirements and recreate your Gemfile.
|
|
51
53
|
|
|
54
|
+
Read the documentation at: https://saigkill.github.io/hoe-packaging/about/
|
|
55
|
+
|
|
52
56
|
== REQUIREMENTS:
|
|
53
57
|
|
|
54
|
-
* setup
|
|
55
58
|
* fpm
|
|
56
59
|
* fpm-cookery
|
|
57
60
|
|
|
58
61
|
== INSTALL:
|
|
59
62
|
|
|
63
|
+
The installation is very easy.
|
|
64
|
+
|
|
60
65
|
gem install hoe-packaging
|
|
61
66
|
|
|
67
|
+
Read the documentation at: https://saigkill.github.io/hoe-packaging/about/
|
|
68
|
+
|
|
62
69
|
== DEVELOPERS:
|
|
63
70
|
|
|
64
71
|
After checking out the source, run:
|
|
@@ -68,33 +75,83 @@ After checking out the source, run:
|
|
|
68
75
|
This task will install any missing dependencies, run the tests/specs,
|
|
69
76
|
and generate the RDoc.
|
|
70
77
|
|
|
71
|
-
|
|
78
|
+
=== IDEAS:
|
|
79
|
+
|
|
80
|
+
* Add ideas on: https://blueprints.launchpad.net/hoe-packaging
|
|
81
|
+
|
|
82
|
+
=== COOL HACKS:
|
|
83
|
+
|
|
84
|
+
* Open a bugreport on https://bugs.launchpad.net/hoe-manns.
|
|
85
|
+
* Please use the -u flag when generating the patch as it makes the patch
|
|
86
|
+
more readable.
|
|
87
|
+
* Write a good explanation of what the patch does.
|
|
88
|
+
* It is better to use git format-patch command: git format-patch HEAD^
|
|
89
|
+
|
|
90
|
+
=== CONTRIBUTOR CODE OF CONDUCT:
|
|
91
|
+
|
|
92
|
+
As contributors and maintainers of this project, we pledge to respect all
|
|
93
|
+
people who contribute through reporting issues, posting feature requests,
|
|
94
|
+
updating documentation, submitting pull requests or patches, and other
|
|
95
|
+
activities.
|
|
96
|
+
|
|
97
|
+
We are committed to making participation in this project a harassment-free
|
|
98
|
+
experience for everyone, regardless of level of experience, gender, gender
|
|
99
|
+
identity and expression, sexual orientation, disability, personal
|
|
100
|
+
appearance, body size, race, age, or religion.
|
|
101
|
+
|
|
102
|
+
Examples of unacceptable behavior by participants include the use of sexual
|
|
103
|
+
language or imagery, derogatory comments or personal attacks, trolling,
|
|
104
|
+
public or private harassment, insults, or other unprofessional conduct.
|
|
105
|
+
|
|
106
|
+
Project maintainers have the right and responsibility to remove, edit, or
|
|
107
|
+
reject comments, commits, code, wiki edits, issues, and other contributions
|
|
108
|
+
that are not aligned to this Code of Conduct. Project maintainers who do
|
|
109
|
+
not follow the Code of Conduct may be removed from the project team.
|
|
110
|
+
|
|
111
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
|
112
|
+
reported by opening an issue or contacting one or more of the project
|
|
113
|
+
maintainers.
|
|
114
|
+
|
|
115
|
+
This Code of Conduct is adapted from the {Contributor Covenant}[http:contributor-covenant.org],
|
|
116
|
+
version 1.0.0, available at {http://contributor-covenant.org/version/1/0/0/}[http://contributor-covenant.org/version/1/0/0/].
|
|
117
|
+
|
|
118
|
+
=== MAINTANANCE POLICY:
|
|
119
|
+
|
|
120
|
+
I'm following the Semantic Versioning for its releases: (Major).(Minor).(Patch).
|
|
121
|
+
|
|
122
|
+
* Major version: Whenever there is something significant or any backwards
|
|
123
|
+
incompatible changes.
|
|
124
|
+
* Minor version: When new, backwards compatible functionality is introduced a
|
|
125
|
+
minor feature is introduced, or when a set of smaller features is rolled out.
|
|
126
|
+
* Patch number: When backwards compatible bug fixes are introduced that fix
|
|
127
|
+
incorrect behavior.
|
|
128
|
+
* The current stable release will receive security patches and bug fixes
|
|
129
|
+
(eg. 5.0 -> 5.0.1).
|
|
130
|
+
* Feature releases will mark the next supported stable release where the minor
|
|
131
|
+
version is increased numerically by increments of one (eg. 5.0 -> 5.1).
|
|
132
|
+
|
|
133
|
+
I encourage everyone to run the latest stable release to ensure that you can
|
|
134
|
+
easily upgrade to the most secure and feature rich experience. In order to
|
|
135
|
+
make sure you can easily run the most recent stable release, we are working
|
|
136
|
+
hard to keep the update process simple and reliable.
|
|
72
137
|
|
|
73
|
-
|
|
138
|
+
=== STRUCTURE:
|
|
74
139
|
|
|
75
|
-
|
|
140
|
+
==== BRANCHES:
|
|
76
141
|
|
|
77
|
-
|
|
142
|
+
===== `master` BRANCH:
|
|
143
|
+
The master branch is the current edge of development.
|
|
78
144
|
|
|
79
|
-
|
|
145
|
+
===== `X.X` BRANCH:
|
|
146
|
+
The X.X branch is the last stable branch. It will used for tarballs.
|
|
80
147
|
|
|
81
|
-
|
|
148
|
+
===== MERGE REQUESTS:
|
|
149
|
+
If you want to merge your branch with the trunk, join the team.
|
|
82
150
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
'Software'), to deal in the Software without restriction, including
|
|
86
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
87
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
88
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
89
|
-
the following conditions:
|
|
151
|
+
Please base all Merge requests off the `master` branch. Merges to
|
|
152
|
+
`X.X` only occur through the `master` branch.
|
|
90
153
|
|
|
91
|
-
|
|
92
|
-
included in all copies or substantial portions of the Software.
|
|
154
|
+
== PROBLEM REPORTING:
|
|
93
155
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
97
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
98
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
99
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
100
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
156
|
+
Bugs should be reported to https://bugs.launchpad.net/hoe-packaging. You will need to create an
|
|
157
|
+
account for yourself.
|
data/Rakefile
CHANGED
|
@@ -1,68 +1,52 @@
|
|
|
1
1
|
# -*- ruby -*-
|
|
2
2
|
# Release:
|
|
3
|
-
#
|
|
4
|
-
# * do stuff
|
|
5
|
-
# * update documentation
|
|
6
|
-
# * enable :git
|
|
7
|
-
# * rake run_before_release
|
|
8
|
-
# * disable :git
|
|
9
|
-
# * Checkin
|
|
10
|
-
# * rake release
|
|
11
|
-
# * rake run_after_release
|
|
3
|
+
# See README.rdoc.releasing
|
|
12
4
|
|
|
13
5
|
require 'rubygems'
|
|
14
6
|
require 'hoe'
|
|
15
7
|
|
|
16
8
|
Hoe.plugin :bundler
|
|
17
9
|
Hoe.plugin :doofus
|
|
18
|
-
Hoe.plugin :email
|
|
19
|
-
# Hoe.plugin :gem_prelude_sucks
|
|
20
|
-
#Hoe.plugins.delete :git
|
|
21
10
|
#Hoe.plugin :git
|
|
22
|
-
Hoe.plugin :history
|
|
23
|
-
# Hoe.plugin :inline
|
|
24
11
|
Hoe.plugin :manns
|
|
25
|
-
Hoe.plugin :packaging
|
|
26
|
-
Hoe.plugin :reek
|
|
27
12
|
Hoe.plugin :rdoc
|
|
13
|
+
Hoe.plugin :reek
|
|
28
14
|
Hoe.plugin :rubocop
|
|
29
15
|
Hoe.plugin :rubygems
|
|
30
|
-
|
|
16
|
+
Hoe.plugin :travis
|
|
31
17
|
Hoe.plugin :version
|
|
32
|
-
|
|
18
|
+
|
|
33
19
|
|
|
34
20
|
###########################################DEVELOPING ZONE##############################################################
|
|
35
21
|
# rubocop:disable Metrics/LineLength
|
|
36
22
|
Hoe.spec 'hoe-packaging' do
|
|
37
|
-
developer('Sascha Manns', '
|
|
38
|
-
license '
|
|
23
|
+
developer('Sascha Manns', 'Sascha.Manns@mailbox.org')
|
|
24
|
+
license 'GPL-3' # this should match the license in the README
|
|
39
25
|
require_ruby_version '>= 2.2.0'
|
|
40
26
|
|
|
41
|
-
email_to << 'ruby-talk@ruby-lang.org'
|
|
42
|
-
|
|
43
27
|
self.history_file = 'History.rdoc'
|
|
44
28
|
self.readme_file = 'README.rdoc'
|
|
45
29
|
self.extra_rdoc_files = FileList['*.rdoc'].to_a
|
|
46
|
-
self.post_install_message = '*** Extend your hoerc: https://saigkill.github.io/
|
|
30
|
+
self.post_install_message = '*** Extend your hoerc: https://saigkill.github.io/hoe-packaging/about/ *** Please file bugreports and feature requests on: https://bugs.launchpad.net/hoe-packaging'
|
|
47
31
|
|
|
48
|
-
dependency 'bundler', '~> 1.
|
|
49
|
-
dependency 'fpm', '~> 1.
|
|
50
|
-
dependency 'fpm-cookery', '~> 0.
|
|
32
|
+
dependency 'bundler', '~> 1.15'
|
|
33
|
+
dependency 'fpm', '~> 1.9'
|
|
34
|
+
dependency 'fpm-cookery', '~> 0.33'
|
|
51
35
|
|
|
52
36
|
extra_dev_deps << ['hoe-bundler', '~> 1.3']
|
|
53
37
|
extra_dev_deps << ['hoe-doofus', '~> 1.0']
|
|
54
38
|
extra_dev_deps << ['hoe-git', '~> 1.6']
|
|
55
|
-
extra_dev_deps << ['hoe-manns', '~> 1.
|
|
56
|
-
extra_dev_deps << ['hoe-packaging', '~> 1.1']
|
|
39
|
+
extra_dev_deps << ['hoe-manns', '~> 1.6']
|
|
57
40
|
extra_dev_deps << ['hoe-reek', '~> 1.1']
|
|
58
41
|
extra_dev_deps << ['hoe-rubocop', '~> 1.0']
|
|
59
42
|
extra_dev_deps << ['hoe-rubygems', '~> 1.0']
|
|
60
|
-
extra_dev_deps << ['hoe-
|
|
43
|
+
extra_dev_deps << ['hoe-travis', '~> 1.3']
|
|
61
44
|
extra_dev_deps << ['hoe-version', '~> 1.2']
|
|
62
|
-
extra_dev_deps << ['rake', '~>
|
|
63
|
-
extra_dev_deps << ['
|
|
64
|
-
extra_dev_deps << ['
|
|
65
|
-
extra_dev_deps << ['
|
|
45
|
+
extra_dev_deps << ['rake', '~> 12.1']
|
|
46
|
+
extra_dev_deps << ['rdoc', '~> 5.1']
|
|
47
|
+
extra_dev_deps << ['reek', '~> 4.7']
|
|
48
|
+
extra_dev_deps << ['rspec', '~> 3.7']
|
|
49
|
+
extra_dev_deps << ['rubocop', '~> 0.51']
|
|
66
50
|
extra_dev_deps << ['coveralls', '~> 0.8']
|
|
67
51
|
end
|
|
68
52
|
|
data/STATUS.rdoc
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
= Misc status badges
|
|
2
|
+
|
|
3
|
+
== Gem
|
|
4
|
+
last public version :: {<img src="https://badge.fury.io/rb/hoe-packaging.png" alt="Last Version" />}[http://rubygems.org/gems/hoe-packaging]
|
|
5
|
+
downloads latest :: {<img src="https://img.shields.io/gem/dtv/hoe-packaging.svg" alt="Downloads latest version" />}[http://rubygems.org/gems/hoe-packaging]
|
|
6
|
+
downloads all :: {<img src="https://img.shields.io/gem/dt/hoe-packaging.svg" alt="Downloads all versions" />}[http://rubygems.org/gems/hoe-packaging]
|
|
7
|
+
|
|
8
|
+
== Code Review
|
|
9
|
+
code quality :: {<img src="https://scrutinizer-ci.com/g/saigkill/hoe-packaging/badges/quality-score.png?b=master" />}[https://scrutinizer-ci.com/g/saigkill/hoe-packaging/]
|
|
10
|
+
code quality :: {<img src="https://d3s6mut3hikguw.cloudfront.net/github/saigkill/hoe-packaging/badges/gpa.svg" alt="Code Quality" />}[https://codeclimate.com/github/saigkill/hoe-packaging]
|
|
11
|
+
code quality :: {<img src="https://api.codacy.com/project/badge/Grade/ddc76c674b464b4eac7a8d05a0155c24" alt="Codacy code quality" />}[https://www.codacy.com/app/samannsml/hoe-packaging?utm_source=github.com&utm_medium=referral&utm_content=saigkill/hoe-packaging&utm_campaign=Badge_Grade]
|
|
12
|
+
|
|
13
|
+
== Security
|
|
14
|
+
security :: {<img src="https://hakiri.io/github/saigkill/hoe-packaging/master.svg" alt="security" />}[https://hakiri.io/github/saigkill/hoe-packaging/master]
|
|
15
|
+
|
|
16
|
+
== Dependencies
|
|
17
|
+
dependency check :: {<img src="https://gemnasium.com/saigkill/hoe-packaging.svg" alt="Dependency Status" />}[https://gemnasium.com/saigkill/hoe-packaging]
|
|
18
|
+
|
|
19
|
+
== Documentation
|
|
20
|
+
documentation quality :: {<img src="http://inch-ci.org/github/saigkill/hoe-packaging.svg?branch=master" alt="Documentation Quality" />}[http://inch-ci.org/github/saigkill/hoe-packaging]
|
|
21
|
+
|
|
22
|
+
== Donations
|
|
23
|
+
donations :: {<img src="https://pledgie.com/campaigns/30335.png?skin_name=chrome" alt="Donations" />}[https://pledgie.com/campaigns/30335]
|
|
24
|
+
donations :: {<img src="https://saigkill.tuxfamily.org/dotclear/public/Amazon.png" alt="Donations" />}[http://www.amazon.de/registry/wishlist/D75HOEQ00BDD]
|
data/lib/hoe/packaging.rb
CHANGED
|
@@ -1,18 +1,27 @@
|
|
|
1
|
-
#
|
|
2
|
-
# @encoding: utf-8
|
|
3
|
-
# @author: Sascha Manns
|
|
4
|
-
# @abstract: hoe-packaging
|
|
1
|
+
# Copyright (C) 2013-2017 Sascha Manns <Sascha.Manns@mailbox.org>
|
|
5
2
|
#
|
|
6
|
-
#
|
|
7
|
-
# License
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
8
15
|
|
|
9
16
|
# Dependencies
|
|
17
|
+
|
|
10
18
|
require 'hoe'
|
|
11
19
|
|
|
12
20
|
# Main module for hoe-packaging
|
|
21
|
+
# rubocop:disable Style/ClassAndModuleChildren
|
|
13
22
|
module Hoe::Packaging
|
|
14
23
|
# Versionizing
|
|
15
|
-
VERSION = '1.
|
|
24
|
+
VERSION = '1.2.0'.freeze
|
|
16
25
|
attr_accessor :create_packages
|
|
17
26
|
attr_accessor :deploy_packages
|
|
18
27
|
|
|
@@ -43,25 +52,29 @@ module Hoe::Packaging
|
|
|
43
52
|
# @return [String] true or false
|
|
44
53
|
def create_packages_method
|
|
45
54
|
FileUtils.cd('recipes') do
|
|
46
|
-
puts 'Creating the deb package'.
|
|
55
|
+
puts 'Creating the deb package'.color(:yellow)
|
|
47
56
|
system('fpm-cook -t deb')
|
|
48
57
|
puts 'deb creating done'.colour(:green)
|
|
49
|
-
puts 'Creating the rpm package'.
|
|
58
|
+
puts 'Creating the rpm package'.color(:yellow)
|
|
50
59
|
system('fpm-cook -t rpm')
|
|
51
|
-
puts 'rpm creating done'.
|
|
60
|
+
puts 'rpm creating done'.color(:green)
|
|
52
61
|
end
|
|
53
62
|
end
|
|
54
63
|
|
|
55
64
|
# Method for deploying to bintray
|
|
65
|
+
# rubocop:disable Metrics/AbcSize
|
|
66
|
+
# rubocop:disable Metrics/LineLength
|
|
67
|
+
# rubocop:disable Metrics/MethodLength
|
|
68
|
+
# This method smells of :reek:TooManyStatements
|
|
56
69
|
# @return [String] true or false
|
|
57
70
|
def deploy_bintray_method
|
|
58
|
-
project =
|
|
59
|
-
user, apikey =
|
|
60
|
-
version =
|
|
71
|
+
project = projectname
|
|
72
|
+
user, apikey = bintray_config
|
|
73
|
+
version = version
|
|
61
74
|
path = 'pool/main/r'
|
|
62
75
|
debadd = ';deb_distribution=ubuntu;deb_component=main;deb_architecture=i386,amd64'
|
|
63
76
|
publish = ';publish=1'
|
|
64
|
-
puts 'Deploying packages to bintray'.
|
|
77
|
+
puts 'Deploying packages to bintray'.color(:yellow)
|
|
65
78
|
|
|
66
79
|
FileUtils.cd('recipes/pkg') do
|
|
67
80
|
filerpm = Dir.glob('*.rpm')
|
|
@@ -71,31 +84,32 @@ module Hoe::Packaging
|
|
|
71
84
|
|
|
72
85
|
rpmup = system("curl -T #{rpm} -u#{user}:#{apikey} https://api.bintray.com/content/#{user}/rpm/#{project}/v#{version}/#{path}/#{publish}")
|
|
73
86
|
begin
|
|
74
|
-
rpmup[
|
|
87
|
+
rpmup['message'] == 'success'
|
|
75
88
|
rescue NoMethodError
|
|
76
89
|
false
|
|
77
90
|
end
|
|
78
91
|
debup = system("curl -T #{deb} -u#{user}:#{apikey} 'https://api.bintray.com/content/#{user}/deb/#{project}/v#{version}/#{path}/#{deb}#{debadd}#{publish}'")
|
|
79
92
|
begin
|
|
80
|
-
debup[
|
|
93
|
+
debup['message'] == 'success'
|
|
81
94
|
rescue NoMethodError
|
|
82
95
|
false
|
|
83
96
|
end
|
|
84
97
|
end
|
|
85
|
-
puts 'Deploying succeeded'.
|
|
98
|
+
puts 'Deploying succeeded'.color(:green)
|
|
86
99
|
end
|
|
87
100
|
|
|
88
101
|
# Method for getting the project name
|
|
89
102
|
# @return [String] project Returns project name
|
|
90
|
-
def
|
|
91
|
-
pnameraw = File.open(*Dir.glob('README.*')
|
|
103
|
+
def projectname
|
|
104
|
+
pnameraw = File.open(*Dir.glob('README.*'), &:readline)
|
|
92
105
|
project = pnameraw.gsub(/[^0-9A-Za-z_-]/, '')
|
|
106
|
+
return project
|
|
93
107
|
end
|
|
94
108
|
|
|
95
109
|
# Method for getting the bintray config
|
|
96
110
|
# @return [Array] user apikey
|
|
97
|
-
def
|
|
98
|
-
config = YAML.
|
|
111
|
+
def bintray_config
|
|
112
|
+
config = YAML.safe_load(File.read("#{Dir.home}/.hoerc"))
|
|
99
113
|
user = config['deploy']['username'].to_s
|
|
100
114
|
apikey = config['deploy']['apikey'].to_s
|
|
101
115
|
[user, apikey]
|
|
@@ -103,8 +117,8 @@ module Hoe::Packaging
|
|
|
103
117
|
|
|
104
118
|
# Method for getting version
|
|
105
119
|
# @return [String] version
|
|
106
|
-
def
|
|
107
|
-
version = File.open(*Dir.glob('VERSION')
|
|
120
|
+
def version
|
|
121
|
+
version = File.open(*Dir.glob('VERSION'), &:readline)
|
|
108
122
|
version.chomp.to_s
|
|
109
123
|
end
|
|
110
124
|
end
|