packaging_rake_tasks 1.4.6 → 1.4.11
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/VERSION +1 -1
- data/lib/packaging/git_helpers.rb +110 -0
- data/lib/tasks/check_changelog.rake +4 -1
- data/lib/tasks/check_license.rake +3 -3
- data/lib/tasks/osc.rake +2 -1
- data/lib/tasks/tarball.rake +14 -5
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d02ef0977f43dd5efd93ebe2b4ec40a61415ac8012413478a326917fcab8182e
|
4
|
+
data.tar.gz: d05332e52a13152900bf4300a920ce989212ff47c283b62b67b67dd9bc663337
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e66cf2ab83c82d3f1e70af85a5ead91bb9eafcc81e8f08efa314e71a8c3f37346f6806bcd69f2de969f54b9e0b4d5d9d142c8d88450d1c221c0c0a0ebb89c01f
|
7
|
+
data.tar.gz: 160211ee2b33de61e5817c5162b5bbbfedb48999fd41be8d3d0117106e217dccd368eeacc993f6487ddbeae85955118fa71f705130cb85f9f2e80f4e85ac6cc7
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.4.
|
1
|
+
1.4.11
|
@@ -0,0 +1,110 @@
|
|
1
|
+
#--
|
2
|
+
# Rake helpers
|
3
|
+
#
|
4
|
+
# Copyright (C) 2019 SUSE Linux LLC
|
5
|
+
# This library is free software; you can redistribute it and/or modify
|
6
|
+
# it only under the terms of version 2.1 of the GNU Lesser General Public
|
7
|
+
# License as published by the Free Software Foundation.
|
8
|
+
#
|
9
|
+
# This library is distributed in the hope that it will be useful, but WITHOUT
|
10
|
+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
11
|
+
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
|
12
|
+
# details.
|
13
|
+
#
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
15
|
+
# License along with this library; if not, write to the Free Software
|
16
|
+
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
17
|
+
#++
|
18
|
+
|
19
|
+
module Packaging
|
20
|
+
#
|
21
|
+
# Helpers around various git commands
|
22
|
+
module GitHelpers
|
23
|
+
# Create a git tag based on the version and the current branch.
|
24
|
+
#
|
25
|
+
# The optional block can specify the version number to use. If no block
|
26
|
+
# is given, this uses spec_version, i.e. the version number of the first
|
27
|
+
# .spec file in the package/ subdirectory.
|
28
|
+
#
|
29
|
+
# @return [Boolean] true if the tag was created, false if it already existed
|
30
|
+
#
|
31
|
+
def create_version_tag(&block)
|
32
|
+
name = tag_name(&block)
|
33
|
+
if tag_exists?(name)
|
34
|
+
puts "Tag #{name} already exists"
|
35
|
+
false
|
36
|
+
else
|
37
|
+
puts "Creating tag #{name}"
|
38
|
+
git("tag #{name}")
|
39
|
+
true
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
# Check if a tag exists.
|
44
|
+
#
|
45
|
+
# @return Boolean
|
46
|
+
#
|
47
|
+
def tag_exists?(name = nil)
|
48
|
+
name ||= tag_name
|
49
|
+
git("tag").include?(name)
|
50
|
+
end
|
51
|
+
|
52
|
+
# Read the package version from specfile_name. If specfile_name is 'nil',
|
53
|
+
# use the first .spec file in the packages/ subdirectory.
|
54
|
+
#
|
55
|
+
# @return String
|
56
|
+
#
|
57
|
+
def spec_version(specfile_name = nil)
|
58
|
+
specfile_name ||= Dir.glob("#{Packaging::Configuration.instance.package_dir}/*.spec").first
|
59
|
+
# use the first *.spec file found, assume all spec files
|
60
|
+
# contain the same version
|
61
|
+
File.readlines(specfile_name)
|
62
|
+
.grep(/^\s*Version:\s*/).first.sub("Version:", "").strip
|
63
|
+
end
|
64
|
+
|
65
|
+
# Return the name of the current git branch or "detached" if in "head
|
66
|
+
# detached" state.
|
67
|
+
#
|
68
|
+
# @return String
|
69
|
+
#
|
70
|
+
def branch_name
|
71
|
+
branch = git("branch").grep(/^\* /).first.sub(/^\* /, "")
|
72
|
+
return "detached" if branch =~ /HEAD detached/
|
73
|
+
branch
|
74
|
+
end
|
75
|
+
|
76
|
+
# Check if the current branch is "master".
|
77
|
+
#
|
78
|
+
# @return [Boolean]
|
79
|
+
#
|
80
|
+
def master?
|
81
|
+
branch_name == "master"
|
82
|
+
end
|
83
|
+
|
84
|
+
# Return a suitable tag name based on version and branch.
|
85
|
+
# For "master", this is only the version number.
|
86
|
+
# For branches, this is "branchname-version".
|
87
|
+
# If in "detached head" state, this is "detached-version".
|
88
|
+
#
|
89
|
+
# Like in create_version_tag, the optional block can specify the version
|
90
|
+
# number to use. If no block is given, this uses spec_version, i.e. the
|
91
|
+
# version number of the first .spec file in the package/ subdirectory.
|
92
|
+
#
|
93
|
+
# @return String
|
94
|
+
#
|
95
|
+
def tag_name(&block)
|
96
|
+
branch = branch_name
|
97
|
+
version = block_given? ? block.call : spec_version
|
98
|
+
return version if branch == "master"
|
99
|
+
branch + "-" + version
|
100
|
+
end
|
101
|
+
|
102
|
+
# Call a git subcommand and return its output as an array of strings.
|
103
|
+
#
|
104
|
+
# @return Array<String>
|
105
|
+
#
|
106
|
+
def git(subcmd)
|
107
|
+
`/usr/bin/git #{subcmd}`.split("\n")
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
@@ -113,9 +113,9 @@ def license_report
|
|
113
113
|
if ! report[:missing].empty?
|
114
114
|
raise "\nMissing license:\n#{report[:missing].join("\n")}"
|
115
115
|
end
|
116
|
-
puts "\nSkipped files:\n#{report[:skipped].join("\n")}" if verbose
|
117
|
-
puts "\nCopyright found in these files:\n#{report[:seen].join("\n")}" if verbose
|
118
|
-
puts "\nCopyright detected as not needed in these files:\n#{report[:unneeded].join("\n")}" if verbose
|
116
|
+
puts "\nSkipped files:\n#{report[:skipped].join("\n")}" if verbose == true
|
117
|
+
puts "\nCopyright found in these files:\n#{report[:seen].join("\n")}" if verbose == true
|
118
|
+
puts "\nCopyright detected as not needed in these files:\n#{report[:unneeded].join("\n")}" if verbose == true
|
119
119
|
puts "\nAll files have proper license reference." if verbose
|
120
120
|
end
|
121
121
|
|
data/lib/tasks/osc.rake
CHANGED
@@ -52,7 +52,8 @@ namespace :osc do
|
|
52
52
|
end
|
53
53
|
|
54
54
|
def checkout
|
55
|
-
|
55
|
+
osc_verbose = (verbose == true) ? "--verbose" : ""
|
56
|
+
sh "osc -A '#{obs_api}' --traceback #{osc_verbose} checkout '#{obs_project}' #{package_name}"
|
56
57
|
end
|
57
58
|
|
58
59
|
def osc_checkout_dir
|
data/lib/tasks/tarball.rake
CHANGED
@@ -36,8 +36,10 @@ def remove_old_packages
|
|
36
36
|
# remove the old tarball - all versions
|
37
37
|
config = Packaging::Configuration.instance
|
38
38
|
package_glob = File.join(Dir.pwd,config.package_dir,"#{config.package_name}-*.tar.bz2")
|
39
|
-
|
40
|
-
|
39
|
+
verbose(verbose == true) do
|
40
|
+
Dir[package_glob].each do |d|
|
41
|
+
rm d
|
42
|
+
end
|
41
43
|
end
|
42
44
|
end
|
43
45
|
|
@@ -88,10 +90,17 @@ task :tarball do
|
|
88
90
|
config = Packaging::Configuration.instance
|
89
91
|
target = File.join(config.package_dir, package_file_name)
|
90
92
|
begin
|
91
|
-
|
92
|
-
|
93
|
+
puts "* Making tarball #{package_file_path} ..." if verbose
|
94
|
+
# collapse the middle state to false to silence FileUtils
|
95
|
+
verbose(verbose == true) do
|
96
|
+
Rake::Task[target].invoke
|
97
|
+
build_tarball
|
98
|
+
end
|
99
|
+
puts "* ...Done" if verbose
|
93
100
|
ensure
|
94
|
-
|
101
|
+
verbose(verbose == true) do
|
102
|
+
rm_rf target
|
103
|
+
end
|
95
104
|
end
|
96
105
|
end
|
97
106
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: packaging_rake_tasks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josef Reidinger
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -35,6 +35,7 @@ files:
|
|
35
35
|
- VERSION
|
36
36
|
- lib/packaging.rb
|
37
37
|
- lib/packaging/configuration.rb
|
38
|
+
- lib/packaging/git_helpers.rb
|
38
39
|
- lib/packaging/tasks.rb
|
39
40
|
- lib/tasks/build_dependencies.rake
|
40
41
|
- lib/tasks/check_changelog.rake
|
@@ -65,8 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
66
|
- !ruby/object:Gem::Version
|
66
67
|
version: '0'
|
67
68
|
requirements: []
|
68
|
-
|
69
|
-
rubygems_version: 2.7.3
|
69
|
+
rubygems_version: 3.1.2
|
70
70
|
signing_key:
|
71
71
|
specification_version: 4
|
72
72
|
summary: Rake tasks providing tasks to package project in git and integration with
|