targit 1.1.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d9c24d83d5995fef98de9689b8852b8c68646258
4
- data.tar.gz: 871da0a7a3bca5260c83115edcf411f8c5a020f8
3
+ metadata.gz: 14f83324bcb4729bc0e0de994d3c3f79c1186822
4
+ data.tar.gz: 1072eb454a950cdaa6efbe5c39877096f5f397dc
5
5
  SHA512:
6
- metadata.gz: a5c86ed4423e4a56c3eaf41426410402f723c3cd824f4e69cb38afeec1297bb1cdcef010fd64693a2c3371a7122178913580a749ca1e112d54bbc5346525e0d0
7
- data.tar.gz: 5b2b75233390a33d4d6156d9dbcd2fc78eb09f3b59acad3dd0632257bcb0addcf269196bc08410cf162fed05fbd61243b11f75cfe195f56b1d21b911bfa139c0
6
+ metadata.gz: 569cc0bfe444f1f7a6d4004f0f4ac31505ebafe21ddbcf783cf2c306441f7d9f4f38dfcae5f2f1b2d06e0ec08cbe90e4e814166e74e9cd510de8733a1fe3fc02
7
+ data.tar.gz: 996f88576a3def8606c349611e3e98cdda65d623dd6896c45cd3a94a97a3b1d7fc2aa7110121f85f6de62ed79d1d95503c115fde64362c3aeb4636161ef274c2
@@ -1,3 +1,9 @@
1
+ # 2.0.0 / 2015-11-22
2
+
3
+ * [ENHANCEMENT] Upgrade to mime-types v3
4
+ * [DEPRECATED] Rubies earlier than 2.x are no longer supported
5
+ * [BUGFIX] Fix failed mime-type parsing
6
+
1
7
  # 1.1.0 / 2015-05-04
2
8
 
3
9
  * [FEATURE] Support multiple files for auth file
data/README.md CHANGED
@@ -3,9 +3,9 @@ targit
3
3
 
4
4
  [![Gem Version](https://img.shields.io/gem/v/targit.svg)](https://rubygems.org/gems/targit)
5
5
  [![Dependency Status](https://img.shields.io/gemnasium/akerl/targit.svg)](https://gemnasium.com/akerl/targit)
6
- [![Code Climate](https://img.shields.io/codeclimate/github/akerl/targit.svg)](https://codeclimate.com/github/akerl/targit)
7
- [![Coverage Status](https://img.shields.io/coveralls/akerl/targit.svg)](https://coveralls.io/r/akerl/targit)
8
- [![Build Status](https://img.shields.io/travis/akerl/targit.svg)](https://travis-ci.org/akerl/targit)
6
+ [![Build Status](https://img.shields.io/circleci/project/akerl/targit.svg)](https://circleci.com/gh/akerl/targit)
7
+ [![Coverage Status](https://img.shields.io/codecov/c/github/akerl/targit.svg)](https://codecov.io/github/akerl/targit)
8
+ [![Code Quality](https://img.shields.io/codacy/596c329739534caeb1df1f14a5381355.svg)](https://www.codacy.com/app/akerl/targit)
9
9
  [![MIT Licensed](https://img.shields.io/badge/license-MIT-green.svg)](https://tldrlegal.com/license/mit-license)
10
10
 
11
11
  Manages GitHub release assets for pushing binaries and other large files
data/bin/targit CHANGED
@@ -14,14 +14,14 @@ Mercenary.program(:targit) do |p|
14
14
  p.description 'Tool for adding GitHub release assets'
15
15
  p.syntax 'targit [options] USER/REPO TAG /path/to/file'
16
16
 
17
- # rubocop:disable Style/LineLength
17
+ # rubocop:disable Metrics/LineLength
18
18
  p.option :force, '-f', '--force', 'Replace the asset if it already exists'
19
19
  p.option :create, '-c', '--create', 'Create release if it does not exist'
20
20
  p.option :release_name, '-r NAME', '--release NAME', 'Set the release name'
21
21
  p.option :prerelease, '-p', '--prerelease', 'With -c, create as a dev release'
22
22
  p.option :authfile, '-a FILE', '--authfile FILE', 'Set the auth files for GitHub credentials (comma-delimited)'
23
23
  p.option :name, '-n NAME', '--name NAME', 'Set the name for the release asset'
24
- # rubocop:enable Style/LineLength
24
+ # rubocop:enable Metrics/LineLength
25
25
 
26
26
  p.action do |_, options|
27
27
  repo, tag = ARGV.shift 2
@@ -0,0 +1,10 @@
1
+ dependencies:
2
+ override:
3
+ - 'rvm-exec 2.0.0-p645 bundle install'
4
+ - 'rvm-exec 2.1.6 bundle install'
5
+ - 'rvm-exec 2.2.2 bundle install'
6
+ test:
7
+ override:
8
+ - 'rvm-exec 2.0.0-p645 bundle exec rake'
9
+ - 'rvm-exec 2.1.6 bundle exec rake'
10
+ - 'rvm-exec 2.2.2 bundle exec rake'
@@ -12,19 +12,18 @@ module Targit
12
12
 
13
13
  def initialize(asset, repo, tag, params = {})
14
14
  @options = params
15
- @options[:client] ||= _client
16
- @client = @options[:client]
15
+ @options[:client] ||= client
17
16
  @release = _release repo, tag
18
- @upload_options = _upload_options
19
17
  @asset = asset
18
+ @upload_options = _upload_options
20
19
  @name = @options[:name] || File.basename(@asset)
21
20
  end
22
21
 
23
22
  def upload!
24
23
  delete! if @options[:force]
25
24
  fail('Release asset already exists') if already_exists?
26
- asset = @client.upload_asset @release.data[:url], @asset, @upload_options
27
- @client.release_asset asset[:url]
25
+ asset = client.upload_asset @release.data[:url], @asset, @upload_options
26
+ client.release_asset asset[:url]
28
27
  end
29
28
 
30
29
  def already_exists?
@@ -34,11 +33,11 @@ module Targit
34
33
  def delete!
35
34
  asset = github_data
36
35
  return unless asset
37
- @client.delete_release_asset asset[:url]
36
+ client.delete_release_asset asset[:url]
38
37
  end
39
38
 
40
39
  def github_data
41
- @client.release_assets(@release.data[:url]).find { |x| x[:name] == @name }
40
+ client.release_assets(@release.data[:url]).find { |x| x[:name] == @name }
42
41
  end
43
42
 
44
43
  def url
@@ -7,10 +7,12 @@ module Targit
7
7
  module Client
8
8
  private
9
9
 
10
+ def client
11
+ @client ||= _client
12
+ end
13
+
10
14
  def _client
11
- files = @options[:authfile].split(',') || [:default]
12
- autosave = @options[:autosave] || true
13
- auth = Octoauth.new note: 'targit', files: files, autosave: autosave
15
+ auth = Octoauth.new octoauth_options
14
16
  Octokit::Client.new(
15
17
  access_token: auth.token,
16
18
  api_endpoint: @options[:api_endpoint],
@@ -18,5 +20,17 @@ module Targit
18
20
  auto_paginate: true
19
21
  )
20
22
  end
23
+
24
+ def octoauth_options
25
+ autosave = @options[:autosave] || true
26
+ {
27
+ note: 'targit', files: authfiles, autosave: autosave, scopes: ['user']
28
+ }
29
+ end
30
+
31
+ def authfiles
32
+ return [:default] unless @options[:authfile]
33
+ @authfile ||= @options[:authfile].split(',')
34
+ end
21
35
  end
22
36
  end
@@ -4,32 +4,32 @@ module Targit
4
4
  class Release
5
5
  include Targit::Client
6
6
 
7
- attr_reader :data, :repo, :tag
7
+ attr_reader :repo, :tag
8
8
 
9
9
  def initialize(repo, tag, params = {})
10
- @repo, @tag, @options = repo, tag, params
11
- @options[:client] ||= _client
12
- @client = @options[:client]
13
- @create_options = _create_options
14
- @data = find
15
- create if @data.nil? && @options.include?(:create)
16
- fail('No release found') if @data.nil?
10
+ @repo = repo
11
+ @tag = tag
12
+ @options = params
13
+ @options[:client] ||= client
14
+ create if @options.include?(:create) && data.nil?
15
+ fail('No release found') if data.nil?
16
+ end
17
+
18
+ def data
19
+ @data ||= _data
17
20
  end
18
21
 
19
22
  private
20
23
 
21
- def find
22
- @client.releases(@repo).find do |x|
23
- x[:tag_name] == @tag
24
- end
24
+ def _data
25
+ client.releases(@repo).find { |x| x[:tag_name] == @tag }
25
26
  end
26
27
 
27
28
  def create
28
- @client.create_release(@repo, @tag, @create_options)
29
- @data = find
29
+ client.create_release(@repo, @tag, create_options)
30
30
  end
31
31
 
32
- def _create_options
32
+ def create_options
33
33
  opts = {}
34
34
  opts[:name] = @options[:release_name] if @options[:release_name]
35
35
  [:prerelease, :target_commitish].each_with_object(opts) do |option, hash|
@@ -1,5 +1,5 @@
1
1
  ##
2
2
  # Set the version (needed for Mercenary -v)
3
3
  module Targit
4
- VERSION = '1.1.0'
4
+ VERSION = '2.0.0'
5
5
  end
@@ -1,9 +1,10 @@
1
- require 'simplecov'
2
- require 'coveralls'
3
-
4
- SimpleCov.formatter = Coveralls::SimpleCov::Formatter
5
- SimpleCov.start do
6
- add_filter '/spec/'
1
+ if ENV['CI'] == 'true'
2
+ require 'simplecov'
3
+ require 'codecov'
4
+ SimpleCov.formatter = SimpleCov::Formatter::Codecov
5
+ SimpleCov.start do
6
+ add_filter '/spec/'
7
+ end
7
8
  end
8
9
 
9
10
  require 'rspec'
@@ -15,14 +15,15 @@ describe Targit do
15
15
  end
16
16
  let(:io_asset) do
17
17
  VCR.use_cassette('current_io_asset') do
18
- fh = File.open('spec/examples/alpha')
19
- Targit.new(
20
- fh,
21
- 'akerl/targit',
22
- 'testing',
23
- authfile: 'spec/.creds',
24
- create: true
25
- )
18
+ File.open('spec/examples/alpha') do |fh|
19
+ Targit.new(
20
+ fh,
21
+ 'akerl/targit',
22
+ 'testing',
23
+ authfile: 'spec/.creds',
24
+ create: true
25
+ )
26
+ end
26
27
  end
27
28
  end
28
29
 
@@ -17,16 +17,16 @@ Gem::Specification.new do |s|
17
17
  s.test_files = `git ls-files spec/*`.split
18
18
  s.executables = ['targit']
19
19
 
20
- s.add_dependency 'octokit', '~> 3.8.0'
21
- s.add_dependency 'octoauth', '~> 1.1.0'
20
+ s.add_dependency 'octokit', '~> 4.2.0'
21
+ s.add_dependency 'octoauth', '~> 1.4.0'
22
22
  s.add_dependency 'mercenary', '~> 0.3.4'
23
- s.add_dependency 'mime-types', '~> 2.3'
23
+ s.add_dependency 'mime-types', '~> 3.0'
24
24
 
25
- s.add_development_dependency 'rubocop', '~> 0.30.0'
25
+ s.add_development_dependency 'rubocop', '~> 0.35.0'
26
26
  s.add_development_dependency 'rake', '~> 10.4.0'
27
- s.add_development_dependency 'coveralls', '~> 0.8.0'
28
- s.add_development_dependency 'rspec', '~> 3.2.0'
27
+ s.add_development_dependency 'codecov', '~> 0.1.1'
28
+ s.add_development_dependency 'rspec', '~> 3.4.0'
29
29
  s.add_development_dependency 'fuubar', '~> 2.0.0'
30
- s.add_development_dependency 'webmock', '~> 1.21.0'
31
- s.add_development_dependency 'vcr', '~> 2.9.2'
30
+ s.add_development_dependency 'webmock', '~> 1.22.0'
31
+ s.add_development_dependency 'vcr', '~> 3.0.0'
32
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: targit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Aker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-04 00:00:00.000000000 Z
11
+ date: 2015-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: octokit
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.8.0
19
+ version: 4.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.8.0
26
+ version: 4.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: octoauth
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.1.0
33
+ version: 1.4.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.1.0
40
+ version: 1.4.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: mercenary
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,28 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '2.3'
61
+ version: '3.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '2.3'
68
+ version: '3.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rubocop
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.30.0
75
+ version: 0.35.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.30.0
82
+ version: 0.35.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rake
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -95,33 +95,33 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: 10.4.0
97
97
  - !ruby/object:Gem::Dependency
98
- name: coveralls
98
+ name: codecov
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.8.0
103
+ version: 0.1.1
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.8.0
110
+ version: 0.1.1
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 3.2.0
117
+ version: 3.4.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 3.2.0
124
+ version: 3.4.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: fuubar
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -142,28 +142,28 @@ dependencies:
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 1.21.0
145
+ version: 1.22.0
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 1.21.0
152
+ version: 1.22.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: vcr
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 2.9.2
159
+ version: 3.0.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 2.9.2
166
+ version: 3.0.0
167
167
  description: Manages GitHub release assets for pushing binaries and other large files
168
168
  email: me@lesaker.org
169
169
  executables:
@@ -174,13 +174,13 @@ files:
174
174
  - ".gitignore"
175
175
  - ".rspec"
176
176
  - ".rubocop.yml"
177
- - ".travis.yml"
178
177
  - CHANGELOG.md
179
178
  - Gemfile
180
179
  - LICENSE
181
180
  - README.md
182
181
  - Rakefile
183
182
  - bin/targit
183
+ - circle.yml
184
184
  - lib/targit.rb
185
185
  - lib/targit/asset.rb
186
186
  - lib/targit/client.rb
@@ -233,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
233
233
  version: '0'
234
234
  requirements: []
235
235
  rubyforge_project:
236
- rubygems_version: 2.4.5
236
+ rubygems_version: 2.4.5.1
237
237
  signing_key:
238
238
  specification_version: 4
239
239
  summary: Tool for adding GitHub release assets
@@ -1,15 +0,0 @@
1
- language: ruby
2
- cache: bundler
3
- sudo: false
4
- rvm:
5
- - 2.2.0
6
- - 2.1.5
7
- - 2.0.0-p598
8
- - 1.9.3-p551
9
- notifications:
10
- email: false
11
- irc:
12
- template:
13
- - "%{repository}/%{branch}/%{build_number}: %{message} -- %{build_url}"
14
- channels:
15
- - irc.oftc.net#akerl