roger_sneakpeek 0.0.3 → 0.1.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/CHANGELOG.md +3 -0
- data/lib/roger_sneakpeek/finalizer.rb +18 -21
- data/lib/roger_sneakpeek/version.rb +1 -1
- data/roger_sneakpeek.gemspec +1 -1
- metadata +27 -28
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 65c48484573713d48546843dd66e9979058b91fd
|
4
|
+
data.tar.gz: d406d62f8fb6980656babfd85aefff4bdaa16f27
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e99a9b99a72cbc5d948c72f314b83a39a7f096421e0e044974bf7f9f1cdc3778a2f0aac75dc1ad042e07b94426ca1cdb3dded3d3be0d184ac2918850efebca6
|
7
|
+
data.tar.gz: b0f917af012cf4d4624ad170ea4dfebfa9a3d14c42e4a473d848e53fa70c6f633703898ae21559e97b8c05d7f3c8d27c93d5b2302e4ad6fa40b0f2c5f5bbe2e9
|
data/CHANGELOG.md
CHANGED
@@ -11,43 +11,40 @@ require File.dirname(__FILE__) + "/ci"
|
|
11
11
|
module RogerSneakpeek
|
12
12
|
# Finalizer to zip and upload release
|
13
13
|
class Finalizer < Roger::Release::Finalizers::Base
|
14
|
-
|
14
|
+
self.name = :sneakpeek
|
15
15
|
|
16
|
-
def
|
17
|
-
|
16
|
+
def default_options
|
17
|
+
{
|
18
18
|
zip: "zip",
|
19
19
|
project: nil,
|
20
20
|
gitlab_project: nil,
|
21
21
|
ci_only: true,
|
22
22
|
sneakpeek_api_url: "http://api.peek.digitpaint.nl"
|
23
|
-
}
|
24
|
-
|
25
|
-
options.update(call_options) if call_options
|
23
|
+
}
|
24
|
+
end
|
26
25
|
|
27
|
-
|
26
|
+
def perform
|
27
|
+
unless @options[:project]
|
28
28
|
fail ArgumentError, "You must specify a project to RogerSneakpeek"
|
29
29
|
end
|
30
30
|
|
31
|
-
unless options[:gitlab_project]
|
31
|
+
unless @options[:gitlab_project]
|
32
32
|
fail ArgumentError, "You must specify a gitlab_project to RogerSneakpeek"
|
33
33
|
end
|
34
34
|
|
35
35
|
# If we run in ci_only mode and are not in CI we stop.
|
36
|
-
return if options[:ci_only] && !CI.ci?
|
37
|
-
|
38
|
-
@release = release
|
39
|
-
@current_options = options
|
36
|
+
return if @options[:ci_only] && !CI.ci?
|
40
37
|
|
41
38
|
check_zip_command
|
42
39
|
|
43
|
-
release.log(self, "Starting upload to Sneakpeek")
|
40
|
+
@release.log(self, "Starting upload to Sneakpeek")
|
44
41
|
upload_release zip_release
|
45
42
|
end
|
46
43
|
|
47
44
|
protected
|
48
45
|
|
49
46
|
def zip_command(*args)
|
50
|
-
([Shellwords.escape(
|
47
|
+
([Shellwords.escape(@options[:zip])] + args).join(" ")
|
51
48
|
end
|
52
49
|
|
53
50
|
def check_zip_command
|
@@ -57,13 +54,13 @@ module RogerSneakpeek
|
|
57
54
|
end
|
58
55
|
|
59
56
|
def git(*args)
|
60
|
-
cmd = Shellwords.join([
|
57
|
+
cmd = Shellwords.join([@options[:git]] + args)
|
61
58
|
`#{cmd}`
|
62
59
|
end
|
63
60
|
|
64
61
|
def zip_release
|
65
62
|
zip_path = Dir::Tmpname.create ["release", ".zip"] {}
|
66
|
-
::Dir.chdir(release.build_path) do
|
63
|
+
::Dir.chdir(@release.build_path) do
|
67
64
|
command = zip_command("-r", "-9", Shellwords.escape(zip_path), "./*")
|
68
65
|
output = `#{command}`
|
69
66
|
fail "Could not generate zipfile\n#{output}" if $CHILD_STATUS.to_i != 0
|
@@ -76,23 +73,23 @@ module RogerSneakpeek
|
|
76
73
|
if CI.ci?
|
77
74
|
git = CI.new()
|
78
75
|
else
|
79
|
-
git = Git.new(path: release.project.path)
|
76
|
+
git = Git.new(path: @release.project.path)
|
80
77
|
end
|
81
78
|
|
82
79
|
data = perform_upload(
|
83
80
|
sneakpeek_url(git),
|
84
81
|
zip_path,
|
85
82
|
sha: git.sha,
|
86
|
-
gitlab_project:
|
83
|
+
gitlab_project: @options[:gitlab_project]
|
87
84
|
)
|
88
85
|
|
89
|
-
release.log(self, "Sneakpeek url: #{data['url']}") if data
|
86
|
+
@release.log(self, "Sneakpeek url: #{data['url']}") if data
|
90
87
|
ensure
|
91
88
|
File.unlink zip_path
|
92
89
|
end
|
93
90
|
|
94
91
|
def sneakpeek_url(git)
|
95
|
-
project =
|
92
|
+
project = @options[:project]
|
96
93
|
case
|
97
94
|
when git.tag
|
98
95
|
"/projects/#{project}/tags/#{URI.escape(git.tag)}"
|
@@ -104,7 +101,7 @@ module RogerSneakpeek
|
|
104
101
|
end
|
105
102
|
|
106
103
|
def perform_upload(url, zip_path, params)
|
107
|
-
conn = Faraday.new(
|
104
|
+
conn = Faraday.new(@options[:sneakpeek_api_url]) do |f|
|
108
105
|
f.request :multipart
|
109
106
|
f.request :url_encoded
|
110
107
|
f.adapter :net_http
|
data/roger_sneakpeek.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.files = `git ls-files`.split("\n")
|
21
21
|
s.require_paths = ["lib"]
|
22
22
|
|
23
|
-
s.add_dependency "roger", "~> 1.
|
23
|
+
s.add_dependency "roger", "~> 1.7", ">= 1.0.0"
|
24
24
|
s.add_dependency "faraday", "~> 0.8", ">= 0.8.11"
|
25
25
|
|
26
26
|
s.add_development_dependency "rubocop", [">= 0"]
|
metadata
CHANGED
@@ -1,127 +1,126 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: roger_sneakpeek
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Flurin Egger
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: roger
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
20
|
-
- -
|
19
|
+
version: '1.7'
|
20
|
+
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: 1.0.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
|
-
- - ~>
|
27
|
+
- - "~>"
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: '1.
|
30
|
-
- -
|
29
|
+
version: '1.7'
|
30
|
+
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: 1.0.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: faraday
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - ~>
|
37
|
+
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
39
|
version: '0.8'
|
40
|
-
- -
|
40
|
+
- - ">="
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: 0.8.11
|
43
43
|
type: :runtime
|
44
44
|
prerelease: false
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
|
-
- - ~>
|
47
|
+
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
49
|
version: '0.8'
|
50
|
-
- -
|
50
|
+
- - ">="
|
51
51
|
- !ruby/object:Gem::Version
|
52
52
|
version: 0.8.11
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: rubocop
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
|
-
- -
|
57
|
+
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
59
|
version: '0'
|
60
60
|
type: :development
|
61
61
|
prerelease: false
|
62
62
|
version_requirements: !ruby/object:Gem::Requirement
|
63
63
|
requirements:
|
64
|
-
- -
|
64
|
+
- - ">="
|
65
65
|
- !ruby/object:Gem::Version
|
66
66
|
version: '0'
|
67
67
|
- !ruby/object:Gem::Dependency
|
68
68
|
name: rake
|
69
69
|
requirement: !ruby/object:Gem::Requirement
|
70
70
|
requirements:
|
71
|
-
- -
|
71
|
+
- - ">="
|
72
72
|
- !ruby/object:Gem::Version
|
73
73
|
version: '0'
|
74
74
|
type: :development
|
75
75
|
prerelease: false
|
76
76
|
version_requirements: !ruby/object:Gem::Requirement
|
77
77
|
requirements:
|
78
|
-
- -
|
78
|
+
- - ">="
|
79
79
|
- !ruby/object:Gem::Version
|
80
80
|
version: '0'
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: test-unit
|
83
83
|
requirement: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
|
-
- -
|
85
|
+
- - ">="
|
86
86
|
- !ruby/object:Gem::Version
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
90
|
version_requirements: !ruby/object:Gem::Requirement
|
91
91
|
requirements:
|
92
|
-
- -
|
92
|
+
- - ">="
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: '0'
|
95
95
|
- !ruby/object:Gem::Dependency
|
96
96
|
name: thor
|
97
97
|
requirement: !ruby/object:Gem::Requirement
|
98
98
|
requirements:
|
99
|
-
- - ~>
|
99
|
+
- - "~>"
|
100
100
|
- !ruby/object:Gem::Version
|
101
101
|
version: '0'
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
105
|
requirements:
|
106
|
-
- - ~>
|
106
|
+
- - "~>"
|
107
107
|
- !ruby/object:Gem::Version
|
108
108
|
version: '0'
|
109
109
|
- !ruby/object:Gem::Dependency
|
110
110
|
name: mocha
|
111
111
|
requirement: !ruby/object:Gem::Requirement
|
112
112
|
requirements:
|
113
|
-
- - ~>
|
113
|
+
- - "~>"
|
114
114
|
- !ruby/object:Gem::Version
|
115
115
|
version: 1.1.0
|
116
116
|
type: :development
|
117
117
|
prerelease: false
|
118
118
|
version_requirements: !ruby/object:Gem::Requirement
|
119
119
|
requirements:
|
120
|
-
- - ~>
|
120
|
+
- - "~>"
|
121
121
|
- !ruby/object:Gem::Version
|
122
122
|
version: 1.1.0
|
123
|
-
description:
|
124
|
-
Will upload the current release to the Sneakpeek server.
|
123
|
+
description: " Will upload the current release to the Sneakpeek server.\n"
|
125
124
|
email:
|
126
125
|
- info@digitpaint.nl
|
127
126
|
- flurin@digitpaint.nl
|
@@ -129,7 +128,7 @@ executables: []
|
|
129
128
|
extensions: []
|
130
129
|
extra_rdoc_files: []
|
131
130
|
files:
|
132
|
-
- .rubocop.yml
|
131
|
+
- ".rubocop.yml"
|
133
132
|
- CHANGELOG.md
|
134
133
|
- Gemfile
|
135
134
|
- Gemfile.lock
|
@@ -152,17 +151,17 @@ require_paths:
|
|
152
151
|
- lib
|
153
152
|
required_ruby_version: !ruby/object:Gem::Requirement
|
154
153
|
requirements:
|
155
|
-
- -
|
154
|
+
- - ">="
|
156
155
|
- !ruby/object:Gem::Version
|
157
156
|
version: '0'
|
158
157
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
159
158
|
requirements:
|
160
|
-
- -
|
159
|
+
- - ">="
|
161
160
|
- !ruby/object:Gem::Version
|
162
161
|
version: '0'
|
163
162
|
requirements: []
|
164
163
|
rubyforge_project:
|
165
|
-
rubygems_version: 2.
|
164
|
+
rubygems_version: 2.5.1
|
166
165
|
signing_key:
|
167
166
|
specification_version: 4
|
168
167
|
summary: Deployment of releases to Sneakpeek server as Roger finalizer
|