yes_ship_it 0.0.6 → 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/.codeclimate.yml +4 -0
- data/.travis.yml +7 -0
- data/CHANGELOG.md +10 -0
- data/README.md +12 -4
- data/assertions/submitted_rpm.rb +3 -3
- data/assertions/yes_it_shipped.rb +2 -2
- data/bin/yes_ship_it +4 -2
- data/lib/version.rb +1 -1
- data/spec/unit/assertions/published_gem_spec.rb +3 -1
- data/spec/unit/assertions/yes_it_shipped_spec.rb +3 -2
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78b481295a4a4a9ba607adb08eec58bac7f207a0
|
4
|
+
data.tar.gz: c8b0e1378e39c261db0c58c6858bfbf7c9cca3fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 51adeca1f94982d83fe0f7f089b1e40630da8d7da5324a2907edf1cda869fc40b63abbee3f1bdf77be9710c8a9b08380d186c958347898d6691af094f69c4d02
|
7
|
+
data.tar.gz: c6e49865aa4a412d8677326febf8ed07361b921569b04566a57fbd22d28cec6b511b0cbe43f8fcc2f1d7872b7efa71b03641e9ad58b3c35e0486dd581edfa6fe
|
data/.codeclimate.yml
ADDED
data/.travis.yml
ADDED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
# Change log of yes_ship_it
|
2
2
|
|
3
|
+
## Version 0.1.0
|
4
|
+
|
5
|
+
yes_ship_it has reached a useful state, so it's going to a version scheme which
|
6
|
+
will distinguish feature and bug fix releases. It's not API stable yet, so it's
|
7
|
+
still using 0.x releases.
|
8
|
+
|
9
|
+
Changes in this version:
|
10
|
+
|
11
|
+
* Add documentation for `plugin` command
|
12
|
+
|
3
13
|
## Version 0.0.6
|
4
14
|
|
5
15
|
* Add support for local assertion plugins. `yes_ship_it plugin generate` creates
|
data/README.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# Yes, ship it!
|
2
2
|
|
3
|
+
[](https://badge.fury.io/rb/yes_ship_it)
|
4
|
+
[](https://travis-ci.org/cornelius/yes_ship_it)
|
5
|
+
[](https://codeclimate.com/github/cornelius/yes_ship_it)
|
6
|
+
|
3
7
|
*The ultimate release script*
|
4
8
|
|
5
9
|
Whenever the answer is "Yes, ship it!" you will need `yes_ship_it`, this tool.
|
@@ -76,10 +80,14 @@ Many software projects will have specific needs for their releases. These can
|
|
76
80
|
be broken down and reflected in additional assertions. Adding assertions is
|
77
81
|
easy. There is a well-defined API for it.
|
78
82
|
|
79
|
-
|
80
|
-
`yes_ship_it
|
81
|
-
|
82
|
-
|
83
|
+
You can extend yes_ship_it by writing local assertions as plugins. Use the
|
84
|
+
command `yes_ship_it plugin` to generate and manage them.
|
85
|
+
|
86
|
+
While plugins can be useful for very special assertions or as a start for new
|
87
|
+
ones, it would be great to generalize them and ship them with `yes_ship_it`.
|
88
|
+
This will maximize the value for the community of people who ship software.
|
89
|
+
The project is very open to include new assertions. Just submit a pull request.
|
90
|
+
`yes_ship_it` will ship it with the next release.
|
83
91
|
|
84
92
|
## Testing
|
85
93
|
|
data/assertions/submitted_rpm.rb
CHANGED
@@ -106,9 +106,9 @@ module YSI
|
|
106
106
|
content = create_spec_file("rpm/#{spec_file}.erb")
|
107
107
|
executor.http_put(url, content, content_type: "text/plain")
|
108
108
|
|
109
|
-
old_files.each do |
|
110
|
-
engine.out.puts " Removing '#{
|
111
|
-
url = "#{base_url}/#{
|
109
|
+
old_files.each do |old_file|
|
110
|
+
engine.out.puts " Removing '#{old_file}'"
|
111
|
+
url = "#{base_url}/#{old_file}"
|
112
112
|
executor.http_delete(url)
|
113
113
|
end
|
114
114
|
|
@@ -8,7 +8,7 @@ module YSI
|
|
8
8
|
|
9
9
|
def check
|
10
10
|
begin
|
11
|
-
|
11
|
+
RestClient.get("https://yes-it-shipped.herokuapp.com/releases/#{engine.project_name}/#{engine.version}")
|
12
12
|
return "#{engine.project_name}-#{engine.version}"
|
13
13
|
rescue RestClient::ResourceNotFound
|
14
14
|
return nil
|
@@ -18,7 +18,7 @@ module YSI
|
|
18
18
|
def assert(executor)
|
19
19
|
executor.http_post("https://yes-it-shipped.herokuapp.com/releases",
|
20
20
|
project: engine.project_name, version: engine.version,
|
21
|
-
release_date_time: engine.tag_date, project_url: engine.project_url,
|
21
|
+
release_date_time: engine.tag_date.utc, project_url: engine.project_url,
|
22
22
|
release_url: engine.release_url, ysi_config_url: engine.config_url)
|
23
23
|
"#{engine.project_name}-#{engine.version}"
|
24
24
|
end
|
data/bin/yes_ship_it
CHANGED
@@ -8,8 +8,10 @@ option_parser = OptionParser.new do |opts|
|
|
8
8
|
|
9
9
|
opts.separator ""
|
10
10
|
opts.separator "Commands:"
|
11
|
-
opts.separator " changelog
|
12
|
-
opts.separator " init
|
11
|
+
opts.separator " changelog - show change log since last release"
|
12
|
+
opts.separator " init - initialize directory for shipping with yes_ship_it"
|
13
|
+
opts.separator " plugin list - list all local assertion plugins"
|
14
|
+
opts.separator " plugin generate - generate a template for a local plugin"
|
13
15
|
opts.separator ""
|
14
16
|
opts.separator "Specific options:"
|
15
17
|
|
data/lib/version.rb
CHANGED
@@ -2,7 +2,9 @@ require_relative "../spec_helper.rb"
|
|
2
2
|
|
3
3
|
describe YSI::PublishedGem do
|
4
4
|
describe "#assert" do
|
5
|
-
it "raises AssertionError if
|
5
|
+
it "raises AssertionError if rubygems.org credentials are not there" do
|
6
|
+
allow(File).to receive(:expand_path).and_return("/idontexist")
|
7
|
+
|
6
8
|
engine = YSI::Engine.new
|
7
9
|
allow(engine).to receive(:project_name).and_return("IdontExist")
|
8
10
|
allow(engine).to receive(:version).and_return("0.0")
|
@@ -47,7 +47,7 @@ EOT
|
|
47
47
|
:body => {
|
48
48
|
"project"=>"dummy",
|
49
49
|
"project_url"=>"https://github.com/cornelius/yes_ship_it",
|
50
|
-
"release_date_time"=>"2015-12-08
|
50
|
+
"release_date_time"=>"2015-12-08 13:16:55 UTC",
|
51
51
|
"release_url"=>"https://github.com/cornelius/yes_ship_it/releases/tag/v1.1.1",
|
52
52
|
"version"=>"1.1.1",
|
53
53
|
"ysi_config_url"=>"https://raw.githubusercontent.com/cornelius/yes_ship_it/master/yes_ship_it.conf"
|
@@ -55,13 +55,14 @@ EOT
|
|
55
55
|
:headers => {
|
56
56
|
'Accept'=>'*/*; q=0.5, application/xml',
|
57
57
|
'Accept-Encoding'=>'gzip, deflate',
|
58
|
-
'Content-Length'=>'
|
58
|
+
'Content-Length'=>'338',
|
59
59
|
'Content-Type'=>'application/x-www-form-urlencoded',
|
60
60
|
'User-Agent'=>'Ruby'
|
61
61
|
}).to_return(:status => 200, :body => "", :headers => {})
|
62
62
|
|
63
63
|
engine = YSI::Engine.new
|
64
64
|
allow(engine).to receive(:project_name).and_return("dummy")
|
65
|
+
allow(engine).to receive(:github_project_name).and_return("cornelius/yes_ship_it")
|
65
66
|
engine.version = "1.1.1"
|
66
67
|
engine.tag_date = Time.parse("20151208T141655+0100")
|
67
68
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yes_ship_it
|
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
|
- Cornelius Schumacher
|
@@ -131,8 +131,10 @@ executables:
|
|
131
131
|
extensions: []
|
132
132
|
extra_rdoc_files: []
|
133
133
|
files:
|
134
|
+
- ".codeclimate.yml"
|
134
135
|
- ".gitignore"
|
135
136
|
- ".rspec"
|
137
|
+
- ".travis.yml"
|
136
138
|
- CHANGELOG.md
|
137
139
|
- Gemfile
|
138
140
|
- MIT-LICENSE
|