addons 0.1.0 → 0.1.2

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: 4b1f48899f1dcbaf1336913a3e4212ee1221bf0a
4
- data.tar.gz: 6761392fc427226f1466592bf4942effee8b3c5e
3
+ metadata.gz: 7fab157f7c200d0c369a7a3bfe156e1fa089b08f
4
+ data.tar.gz: 022024974b0e8b74d1338bbebfd66cee53499d74
5
5
  SHA512:
6
- metadata.gz: 2d6ec04265ee6c58aea869d1f88a365079deb94fd68efa7c01bb4b1513eb7962f57955007003fa0dc9cf4f42e132407248ac6fed2193b425ee1518bd8d5d231e
7
- data.tar.gz: 7f27557fc9550412a72917aa0ed1631e45ae50e7b2a88709e663a382291e4675da5c27a59b6872887697623f48daa33b04cace039ad5e565d77d20b9a823141e
6
+ metadata.gz: 84ef26e4b806b0e9650bccf1df033a018c36d8ea5268f6e91fd5620ba9e1c9f530531caa8cae64a36bb24430db75f68b4bf505ac55882a6a4df231728d83672b
7
+ data.tar.gz: ee9a870981099af1fdc8172c96c3d29a6f1df2515c7b498d06db4ca3338972eca51a198b9887d38f03134be680ef514f096b4113a2351ce0da58a71ac0cb87a4
data/Gemfile CHANGED
@@ -3,6 +3,5 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's dependencies in addons.gemspec
4
4
  gemspec
5
5
 
6
- gem 'rest_client'
7
6
  gem 'json'
8
7
  gem 'rails'
data/Gemfile.lock CHANGED
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- addons (0.1.0)
5
- json
4
+ addons (0.1.1)
5
+ figaro (~> 0.7.0)
6
+ json (~> 1.8.1)
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
@@ -48,7 +49,6 @@ GEM
48
49
  mime-types (1.25.1)
49
50
  minitest (4.7.5)
50
51
  multi_json (1.9.2)
51
- netrc (0.7.7)
52
52
  polyglot (0.3.4)
53
53
  rack (1.5.2)
54
54
  rack-test (0.6.2)
@@ -66,9 +66,7 @@ GEM
66
66
  activesupport (= 4.0.3)
67
67
  rake (>= 0.8.7)
68
68
  thor (>= 0.18.1, < 2.0)
69
- rake (10.1.1)
70
- rest_client (1.7.2)
71
- netrc (~> 0.7.7)
69
+ rake (10.3.1)
72
70
  rspec (2.14.1)
73
71
  rspec-core (~> 2.14.0)
74
72
  rspec-expectations (~> 2.14.0)
@@ -101,9 +99,7 @@ PLATFORMS
101
99
  DEPENDENCIES
102
100
  addons!
103
101
  bundler (~> 1.3)
104
- figaro
105
102
  json
106
103
  rails
107
- rake
108
- rest_client
104
+ rake (~> 10.3.1)
109
105
  rspec (~> 2.6)
data/addons.gemspec CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
9
9
  spec.authors = ["Addonlist"]
10
10
  spec.email = ["engineering@addonlist.com"]
11
11
  spec.description = %q{Connect your app to Addons for all your service integrations in one place.}
12
- spec.summary = %q{After configuring your app with addons, set app_id and app_token variables (ENV['ADDONS_APP_ID'] and ENV['ADDONS_APP_TOKEN']), the gem will pull your services config and set them up for immediate use.}
13
- spec.homepage = ""
12
+ spec.summary = %q{After configuring your app with addons, set app_id and app_token variables (ENV['ADDONS_API_ID'] and ENV['ADDONS_APP_TOKEN']), the gem will pull your services config and set them up for immediate use.}
13
+ spec.homepage = "https://github.com/addonlist/addons-gem"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
@@ -18,12 +18,11 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "rest_client"
22
- spec.add_dependency "json"
23
- spec.add_dependency "figaro"
21
+ spec.add_dependency "json", "~> 1.8"
22
+ spec.add_dependency "figaro", "~> 0.7"
24
23
 
25
- spec.add_development_dependency "rails"
24
+ spec.add_development_dependency "rails", "~> 4.1"
26
25
  spec.add_development_dependency "bundler", "~> 1.3"
27
- spec.add_development_dependency "rake"
26
+ spec.add_development_dependency "rake", "~> 10.3"
28
27
  spec.add_development_dependency "rspec", "~> 2.6"
29
28
  end
data/lib/addons/config.rb CHANGED
@@ -2,19 +2,19 @@ require 'net/http'
2
2
  require 'open-uri'
3
3
  require 'json'
4
4
 
5
- BASE_CONFIG_URL = "https://launchpack.io/api/v1/apps/config"
5
+ BASE_CONFIG_URL = "https://addonlist.com/api/v1/addons/apps/config"
6
6
 
7
7
  module Addons
8
8
  class Config
9
9
  def self.init
10
10
  puts "Initializing Addons::Config"
11
11
 
12
- if ENV['ADDONS_APP_ID'].nil? or ENV['ADDONS_APP_ID'] == ""
12
+ if ENV['ADDONS_API_ID'].nil? or ENV['ADDONS_API_ID'] == ""
13
13
  filename = Rails.root.join('config', 'application.yml')
14
14
 
15
15
  if File.exists?(filename)
16
16
  File.open(filename, 'r') do |file|
17
- # NOTE: read the ADDONS_APP_ID and ADDONS_APP_TOKEN from application.yml and set ENV vars.
17
+ # NOTE: read the ADDONS_API_ID and ADDONS_APP_TOKEN from application.yml and set ENV vars.
18
18
 
19
19
  file.each_line do |line|
20
20
  matches = line.match(/(.*): (.*)/)
@@ -26,21 +26,28 @@ module Addons
26
26
  end
27
27
  end
28
28
 
29
- puts "checking ENV['ADDONS_APP_ID'] and ENV['ADDONS_APP_TOKEN']"
29
+ puts "checking ENV['ADDONS_API_ID'] and ENV['ADDONS_APP_TOKEN']"
30
30
 
31
- if ENV['ADDONS_APP_ID'] == nil
32
- puts "Error: ENV['ADDONS_APP_ID'] must be defined"
33
- return false, "Error: ENV['ADDONS_APP_ID'] must be defined"
31
+ if ENV['ADDONS_API_ID'] == nil
32
+ puts "Error: ENV['ADDONS_API_ID'] must be defined"
33
+ return false, "Error: ENV['ADDONS_API_ID'] must be defined"
34
34
  elsif ENV['ADDONS_APP_TOKEN'] == nil
35
35
  puts "Error: ENV['ADDONS_APP_TOKEN'] must be defined"
36
36
  return false, "Error: ENV['ADDONS_APP_TOKEN'] must be defined"
37
37
  end
38
38
 
39
39
  # contact server and look for config
40
- configUrl = "#{BASE_CONFIG_URL}?app_id=#{ENV['ADDONS_APP_ID']}&app_token=#{ENV['ADDONS_APP_TOKEN']}&source=rubygem"
40
+ configUrl = "#{BASE_CONFIG_URL}?source=rubygem"
41
41
 
42
42
  begin
43
- response = URI.parse(configUrl).read
43
+
44
+ uri = URI.parse(configUrl)
45
+
46
+ http = Net::HTTP.new(uri.host, uri.port)
47
+ http.use_ssl = true
48
+ request = Net::HTTP::Get.new(uri.request_uri)
49
+ request.basic_auth(ENV['ADDONS_API_ID'], ENV['ADDONS_APP_TOKEN'])
50
+ response = http.request(request).body
44
51
 
45
52
  services = JSON.parse(response)
46
53
 
@@ -65,7 +72,7 @@ module Addons
65
72
  return true, "Success"
66
73
 
67
74
  rescue OpenURI::HTTPError => ex
68
- return false, "Error: Unauthorized use of Addons. Be sure to set ENV['ADDONS_APP_ID'] and ENV['ADDONS_APP_TOKEN']"
75
+ return false, "Error: Unauthorized use of Addons. Be sure to set ENV['ADDONS_API_ID'] and ENV['ADDONS_APP_TOKEN']"
69
76
  end
70
77
 
71
78
  end
@@ -19,9 +19,9 @@ module Addons
19
19
  "error_msg" => "Error: You have unstaged files or uncommitted changes in Git. Please commit or stash everything so we can start on a clean slate.",
20
20
  }
21
21
  GIT_COMMIT_RECIPE = {
22
- "run_msg" => "Committing changes made by #{Addons::Recipe::RECIPE_NAME_PLACEHOLDER} version: #{Addons::Recipe::RECIPE_VERSION_PLACEHOLDER} Launchpack.io recipe",
22
+ "run_msg" => "Committing changes made by #{Addons::Recipe::RECIPE_NAME_PLACEHOLDER} version: #{Addons::Recipe::RECIPE_VERSION_PLACEHOLDER} AddonList recipe",
23
23
  "type" => InstructionTypes::TERMINAL_COMMAND,
24
- "command" => "git add .; git commit -m \"LAUNCHPACK RECIPE - #{Addons::Recipe::RECIPE_NAME_PLACEHOLDER} version: #{Addons::Recipe::RECIPE_VERSION_PLACEHOLDER}\"",
24
+ "command" => "git add .; git commit -m \"ADDONLIST RECIPE - #{Addons::Recipe::RECIPE_NAME_PLACEHOLDER} version: #{Addons::Recipe::RECIPE_VERSION_PLACEHOLDER}\"",
25
25
  "expected_result" => {
26
26
  "type" => ResultTypes::NO_EXPECTATION
27
27
  },
@@ -42,7 +42,7 @@ module Addons
42
42
  end
43
43
 
44
44
  def self.run(recipe)
45
- puts "\r\nRunning Launchpack.io #{recipe["platform"]} recipe for: #{recipe["name"]}\r\n\r\n"
45
+ puts "\r\nRunning AddonList #{recipe["platform"]} recipe for: #{recipe["name"]}\r\n\r\n"
46
46
 
47
47
  Addons::Recipe::Commons::GIT_READY_RECIPE.each do |git_instruction|
48
48
  run_instruction(git_instruction, recipe)
@@ -1,3 +1,3 @@
1
1
  module Addons
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -7,16 +7,16 @@ module Addons
7
7
  module Generators
8
8
  class InstallGenerator < Rails::Generators::Base
9
9
 
10
- class_option :appid, type: :string, required: true, :desc => "ADDONS_APP_ID"
10
+ class_option :apiid, type: :string, required: true, :desc => "ADDONS_API_ID"
11
11
  class_option :apptoken, type: :string, required: true, :desc => "ADDONS_APP_TOKEN"
12
12
 
13
13
  def initialize(*args, &block)
14
14
  super
15
15
 
16
- @addons_app_id = options[:appid]
16
+ @ADDONS_API_ID = options[:apiid]
17
17
  @addons_app_token = options[:apptoken]
18
18
 
19
- puts "ADDONS_APP_ID: #{@addons_app_id}"
19
+ puts "ADDONS_API_ID: #{@ADDONS_API_ID}"
20
20
  puts "ADDONS_APP_TOKEN: #{@addons_app_token}"
21
21
  end
22
22
 
@@ -42,7 +42,7 @@ module Addons
42
42
  if File.readlines(figaro).grep(/gem 'figaro'/).size == 0
43
43
  File.open(figaro, 'a') do |file|
44
44
  file.puts ""
45
- file.puts "gem 'figaro' # Addons dependency"
45
+ file.puts "gem 'figaro', '~> 0.7.0' # Addons dependency"
46
46
  end
47
47
  end
48
48
 
@@ -57,7 +57,7 @@ module Addons
57
57
  # NOTE: 'w' overwrites the previous file!
58
58
  File.open(filename, 'w') do |file|
59
59
  # add new vars to application.yml for the restart
60
- file.puts "ADDONS_APP_ID: #{@addons_app_id}"
60
+ file.puts "ADDONS_API_ID: #{@ADDONS_API_ID}"
61
61
  file.puts "ADDONS_APP_TOKEN: #{@addons_app_token}"
62
62
  end
63
63
 
@@ -1,4 +1,5 @@
1
- require 'rest_client'
1
+ require 'net/http'
2
+ require 'open-uri'
2
3
  require 'json'
3
4
 
4
5
  require 'addons/recipes/types'
@@ -11,17 +12,24 @@ namespace :addons do
11
12
  desc "Run a recipe by name"
12
13
  task :run, :recipe_handle do |t, args|
13
14
  recipes = nil
14
- recipeUrl = "https://launchpack.io/api/v1/apps/recipes?app_id=#{ENV['ADDONS_APP_ID']}&app_token=#{ENV['ADDONS_APP_TOKEN']}"
15
+ recipeUrl = "https://addonlist.com/api/v1/addons/apps/recipes?source=rubygem"
15
16
 
16
- response = RestClient.get recipeUrl
17
- recipes = JSON.parse response.body
17
+ uri = URI.parse(recipeUrl)
18
+
19
+ http = Net::HTTP.new(uri.host, uri.port)
20
+ http.use_ssl = true
21
+ request = Net::HTTP::Get.new(uri.request_uri)
22
+ request.basic_auth(ENV['ADDONS_API_ID'], ENV['ADDONS_APP_TOKEN'])
23
+ response = http.request(request).body
24
+
25
+ recipes = JSON.parse response
18
26
 
19
27
  # parse instructions into ruby
20
28
  recipes.each { |recipe| recipe["instructions"] = JSON.parse(recipe["instructions"]) }
21
29
 
22
30
  @run = false
23
31
  if "all" == args[:recipe_handle]
24
- puts "Running all your Launchpack.io recipes"
32
+ puts "Running all your AddonList recipes"
25
33
 
26
34
  recipes.each do |recipe|
27
35
  Addons::Recipe.run recipe
data/spec/addons_spec.rb CHANGED
@@ -6,8 +6,8 @@ describe Addons::Config do
6
6
  end
7
7
 
8
8
  # it "initializes without errors with valid environment variables" do
9
- # ENV['LAUNCHBOX_USER_EMAIL'] = 'ben@addonlist.com'
10
- # ENV['LAUNCHBOX_USER_TOKEN'] = 'iXZfkrcSqcZW9pPvK6bv'
9
+ # ENV['ADDONS_API_ID'] = 'app_id'
10
+ # ENV['ADDONS_APP_TOKEN'] = 'app_token'
11
11
 
12
12
  # Addons::Config.init()[0].should eql(true)
13
13
  # end
metadata CHANGED
@@ -1,111 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: addons
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Addonlist
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-15 00:00:00.000000000 Z
11
+ date: 2014-04-29 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rest_client
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - '>='
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - '>='
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: json
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
- - - '>='
17
+ - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: '0'
19
+ version: '1.8'
34
20
  type: :runtime
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
- - - '>='
24
+ - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: '0'
26
+ version: '1.8'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: figaro
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
- - - '>='
31
+ - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: '0'
33
+ version: '0.7'
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - '>='
38
+ - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: '0'
40
+ version: '0.7'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: rails
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - '>='
45
+ - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '0'
47
+ version: '4.1'
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - '>='
52
+ - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '0'
54
+ version: '4.1'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: bundler
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - ~>
59
+ - - "~>"
74
60
  - !ruby/object:Gem::Version
75
61
  version: '1.3'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - ~>
66
+ - - "~>"
81
67
  - !ruby/object:Gem::Version
82
68
  version: '1.3'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: rake
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - '>='
73
+ - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '0'
75
+ version: '10.3'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - '>='
80
+ - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '0'
82
+ version: '10.3'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: rspec
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
- - - ~>
87
+ - - "~>"
102
88
  - !ruby/object:Gem::Version
103
89
  version: '2.6'
104
90
  type: :development
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
- - - ~>
94
+ - - "~>"
109
95
  - !ruby/object:Gem::Version
110
96
  version: '2.6'
111
97
  description: Connect your app to Addons for all your service integrations in one place.
@@ -115,7 +101,7 @@ executables: []
115
101
  extensions: []
116
102
  extra_rdoc_files: []
117
103
  files:
118
- - .gitignore
104
+ - ".gitignore"
119
105
  - Gemfile
120
106
  - Gemfile.lock
121
107
  - LICENSE.txt
@@ -133,7 +119,7 @@ files:
133
119
  - lib/generators/addons/install_generator.rb
134
120
  - lib/tasks/addons_recipe.rake
135
121
  - spec/addons_spec.rb
136
- homepage: ''
122
+ homepage: https://github.com/addonlist/addons-gem
137
123
  licenses:
138
124
  - MIT
139
125
  metadata: {}
@@ -143,21 +129,21 @@ require_paths:
143
129
  - lib
144
130
  required_ruby_version: !ruby/object:Gem::Requirement
145
131
  requirements:
146
- - - '>='
132
+ - - ">="
147
133
  - !ruby/object:Gem::Version
148
134
  version: '0'
149
135
  required_rubygems_version: !ruby/object:Gem::Requirement
150
136
  requirements:
151
- - - '>='
137
+ - - ">="
152
138
  - !ruby/object:Gem::Version
153
139
  version: '0'
154
140
  requirements: []
155
141
  rubyforge_project:
156
- rubygems_version: 2.0.3
142
+ rubygems_version: 2.2.2
157
143
  signing_key:
158
144
  specification_version: 4
159
145
  summary: After configuring your app with addons, set app_id and app_token variables
160
- (ENV['ADDONS_APP_ID'] and ENV['ADDONS_APP_TOKEN']), the gem will pull your services
146
+ (ENV['ADDONS_API_ID'] and ENV['ADDONS_APP_TOKEN']), the gem will pull your services
161
147
  config and set them up for immediate use.
162
148
  test_files:
163
149
  - spec/addons_spec.rb