rake-xpi 0.0.8 → 0.0.9
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.lock +6 -9
- data/lib/rake/xpi/github.rb +34 -44
- data/rake-xpi.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1b6aa79b6cb97154aef73f48d45498559935b6e3
|
4
|
+
data.tar.gz: 7d10367b9b0efa17fcef2fa410c2a8df13e2bf7d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 405ed492deed46dc74c2f20c5ffb12d4c2e1a2a0070f7b02a76611754b2440c51e359d5b3f29495b5f1306f6dc98014994c851603855955abc1176dd77e9acfc
|
7
|
+
data.tar.gz: 8fbfb211c95a3a92f164ddc57fd5c2c3dc23fa5ffc87344f1f36e7e6e0b0e691fd6c9b0c44ee04f60268d3bde82c6faf2afee93a742a971de09e555cf4759ed8
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rake-xpi (0.0.
|
4
|
+
rake-xpi (0.0.9)
|
5
5
|
aws-sdk
|
6
6
|
github_api
|
7
7
|
jwt
|
@@ -17,12 +17,12 @@ GEM
|
|
17
17
|
remote: https://rubygems.org/
|
18
18
|
specs:
|
19
19
|
addressable (2.4.0)
|
20
|
-
aws-sdk (2.2.
|
21
|
-
aws-sdk-resources (= 2.2.
|
22
|
-
aws-sdk-core (2.2.
|
20
|
+
aws-sdk (2.2.31)
|
21
|
+
aws-sdk-resources (= 2.2.31)
|
22
|
+
aws-sdk-core (2.2.31)
|
23
23
|
jmespath (~> 1.0)
|
24
|
-
aws-sdk-resources (2.2.
|
25
|
-
aws-sdk-core (= 2.2.
|
24
|
+
aws-sdk-resources (2.2.31)
|
25
|
+
aws-sdk-core (= 2.2.31)
|
26
26
|
descendants_tracker (0.0.4)
|
27
27
|
thread_safe (~> 0.3, >= 0.3.1)
|
28
28
|
domain_name (0.5.20160310)
|
@@ -76,6 +76,3 @@ PLATFORMS
|
|
76
76
|
DEPENDENCIES
|
77
77
|
bundler (~> 1.3)
|
78
78
|
rake-xpi!
|
79
|
-
|
80
|
-
BUNDLED WITH
|
81
|
-
1.11.2
|
data/lib/rake/xpi/github.rb
CHANGED
@@ -19,17 +19,39 @@ module Rake
|
|
19
19
|
module XPI
|
20
20
|
class Config
|
21
21
|
@@builds = 'builds'
|
22
|
-
def get_stable_release(tag, prerelease)
|
23
|
-
release = @releases.list(@config.github.user, @config.github.repo).detect{|rel| rel.tag_name == tag }
|
24
|
-
return release if release
|
25
22
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
23
|
+
def client
|
24
|
+
if @client.nil?
|
25
|
+
raise "Github publishing not configured" unless @config.github && @config.github.user && @config.github.token
|
26
|
+
token = ENV[@config.github.token]
|
27
|
+
raise "Github publishing not configured" unless token
|
28
|
+
@client = Github.new({oauth_token: token})
|
29
|
+
end
|
30
|
+
return @client
|
31
|
+
end
|
32
|
+
|
33
|
+
def add_asset(tag, is_prerelease, asset_name, content, content_type)
|
34
|
+
release = client.repos.releases.list(@config.github.user, @config.github.repo).detect{|rel| rel.tag_name == tag }
|
35
|
+
if release
|
36
|
+
raise "Release #{tag}: requested #{is_prerelease ? 'pre' : ''}release, found #{is_prerelease ? 'pre' : ''}release" if is_prerelease ^ release.prerelease
|
37
|
+
else
|
38
|
+
sha = `git rev-list --max-parents=0 HEAD`.split(/\n/).collect{|sha| sha.strip}.first
|
39
|
+
release = client.repos.releases.create(@config.github.user, @config.github.repo, {
|
40
|
+
tag_name: tag,
|
41
|
+
target_commitish: sha,
|
42
|
+
name: tag,
|
43
|
+
body: tag,
|
44
|
+
prerelease: !!is_prerelease
|
45
|
+
})
|
46
|
+
end
|
47
|
+
|
48
|
+
client.repos.releases.assets.list(@config.github.user, @config.github.repo, release.id){ |asset|
|
49
|
+
next unless asset.name == asset_name
|
50
|
+
client.repos.releases.assets.delete(@config.github.user, @config.github.repo, asset.id)
|
51
|
+
}
|
52
|
+
client.repos.releases.assets.upload(@config.github.user, @config.github.repo, release.id, content, {
|
53
|
+
name: asset_name,
|
54
|
+
content_type: content_type
|
33
55
|
})
|
34
56
|
end
|
35
57
|
|
@@ -45,40 +67,8 @@ module Rake
|
|
45
67
|
token = ENV[@config.github.token]
|
46
68
|
raise "Github publishing not configured" unless token
|
47
69
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
release = nil
|
52
|
-
if release_build?
|
53
|
-
# create release and upload assets
|
54
|
-
release = @releases.create(@config.github.user, @config.github.repo, {
|
55
|
-
tag_name: self.release,
|
56
|
-
name: self.release,
|
57
|
-
body: self.release
|
58
|
-
})
|
59
|
-
else
|
60
|
-
release = get_stable_release(@@builds, true)
|
61
|
-
end
|
62
|
-
|
63
|
-
@releases.assets.upload(@config.github.user, @config.github.repo, release.id, self.xpi, {
|
64
|
-
name: self.versioned_xpi,
|
65
|
-
content_type: 'application/x-xpinstall'
|
66
|
-
})
|
67
|
-
|
68
|
-
if release_build?
|
69
|
-
release = get_stable_release('update.rdf', false)
|
70
|
-
# Remove any existing assets
|
71
|
-
@github.repos.releases.assets.list(@config.github.user, @config.github.repo, release.id){ |asset|
|
72
|
-
@github.repos.releases.assets.delete(@config.github.user, @config.github.repo, asset.id)
|
73
|
-
}
|
74
|
-
|
75
|
-
update_rdf{|update|
|
76
|
-
@releases.assets.upload(@config.github.user, @config.github.repo, release.id, update, {
|
77
|
-
name: 'update.rdf',
|
78
|
-
content_type: 'application/rdf+xml'
|
79
|
-
})
|
80
|
-
}
|
81
|
-
end
|
70
|
+
add_asset(release_build? ? self.release : @@builds, !release_build?, self.versioned_xpi, self.xpi, 'application/x-xpinstall')
|
71
|
+
update_rdf{|update| add_asset('update.rdf', false, 'update.rdf', update, 'application/rdf+xml') } if release_build?
|
82
72
|
end
|
83
73
|
end
|
84
74
|
end
|
data/rake-xpi.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "rake-xpi"
|
7
|
-
spec.version = '0.0.
|
7
|
+
spec.version = '0.0.9'
|
8
8
|
spec.authors = ["Emiliano Heyns"]
|
9
9
|
spec.email = ["Emiliano.Heyns@iris-advies.com"]
|
10
10
|
spec.description = %q{rake helper to build XPI files}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake-xpi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Emiliano Heyns
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|