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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f7a38b12c557de98e6ea36e0f82cb9f65e44a5bf
4
- data.tar.gz: 478894aeceac04cc8027ba88bf78578e65b649d9
3
+ metadata.gz: 78b481295a4a4a9ba607adb08eec58bac7f207a0
4
+ data.tar.gz: c8b0e1378e39c261db0c58c6858bfbf7c9cca3fd
5
5
  SHA512:
6
- metadata.gz: 0956fb1a9f67912b750729dc6132fe1dcd8784d23da178878e808eb167f37947772d65d21fa46f1a98bf2ba26129718a5e95ee3e8e5ba7624c3e785ac4affd85
7
- data.tar.gz: 349837d22c00fb3c2decdda42dc37ea29cd6a85ed86937caa1c89b0bac346c7af55e1da6eefa3897588e92e976f0e09ad7b70ecc174cdcd7f5f08fe86be3d5c0
6
+ metadata.gz: 51adeca1f94982d83fe0f7f089b1e40630da8d7da5324a2907edf1cda869fc40b63abbee3f1bdf77be9710c8a9b08380d186c958347898d6691af094f69c4d02
7
+ data.tar.gz: c6e49865aa4a412d8677326febf8ed07361b921569b04566a57fbd22d28cec6b511b0cbe43f8fcc2f1d7872b7efa71b03641e9ad58b3c35e0486dd581edfa6fe
data/.codeclimate.yml ADDED
@@ -0,0 +1,4 @@
1
+ languages:
2
+ Ruby: true
3
+ exclude_paths:
4
+ - ".rubocop.yml"
data/.travis.yml ADDED
@@ -0,0 +1,7 @@
1
+ language: ruby
2
+ rvm:
3
+ - "2.1.2"
4
+ - "2.1.8"
5
+ - "2.2.4"
6
+ - "2.3.0"
7
+ script: bundle exec rspec spec/unit
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
+ [![Gem Version](https://badge.fury.io/rb/yes_ship_it.svg)](https://badge.fury.io/rb/yes_ship_it)
4
+ [![Build Status](https://travis-ci.org/cornelius/yes_ship_it.svg?branch=master)](https://travis-ci.org/cornelius/yes_ship_it)
5
+ [![Code Climate](https://codeclimate.com/github/cornelius/yes_ship_it/badges/gpa.svg)](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
- There is no supported plugin concept. The idea is that all assertions ship with
80
- `yes_ship_it`. This will maximize the value for the community of people who ship
81
- software. The project is very open to include new assertions. Just submit a pull
82
- request. `yes_ship_it` will ship it with the next release.
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
 
@@ -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 |file|
110
- engine.out.puts " Removing '#{file}'"
111
- url = "#{base_url}/#{file}"
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
- json = RestClient.get("https://yes-it-shipped.herokuapp.com/releases/#{engine.project_name}/#{engine.version}")
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 - show change log since last release"
12
- opts.separator " init - initialize directory for shipping with yes_ship_it"
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
@@ -1,3 +1,3 @@
1
1
  module YSI
2
- VERSION = "0.0.6"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -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 there is an error" do
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 14:16:55 +0100",
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'=>'342',
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.6
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