addons-api 1.0.8 → 1.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
  SHA256:
3
- metadata.gz: 0efde7da8f4c951b37ec43459d55e0bb815f2447b91ee34132ba92195980be41
4
- data.tar.gz: 0b82f729e46a5b5e40e1bd394b56a52f024bb1759f617588205067c451dcea17
3
+ metadata.gz: b1b72d88ee50d9bba87b0045123bb74d0ec2420b6320bd2f78536956bcb810fa
4
+ data.tar.gz: 59e40d4fc52edb2af6fb54f6f557db3c03005988030a69c24b733b74a9b5941c
5
5
  SHA512:
6
- metadata.gz: f95c5c58cb3f82b1c65047f3628b84aab7888ea3c31737df24bc174ee43b80c652c09f8d5f6c19aedb1c4c21c04c12066fc05e8a7cf48b7f49f5b1cf34e1e605
7
- data.tar.gz: ea13be3d2309b9763bd2d7b1ba1cfc6d641d8f9c392bdaa170d3ab8ce650ded8096c7d8ce9d9cc5be54843ec96f5307f7e550ef19abe5653ab41e8e8bde5771a
6
+ metadata.gz: 6aa813a00351ae0668f2796923e1ed24c52b462354896f200b842edb831540aeab5e2d348fc71365731f80557a86a2b6f5059202f6a8dd67f33d870aee9e5546
7
+ data.tar.gz: e5241d87058dfd890451c8a0b186d5c0c38bc59922f2444e00961c5b92b316885b30317e4f5011832acf9231244317f536d10633ee7b1e1c4d2ca8b4a548c80d
@@ -0,0 +1,16 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "bundler"
4
+ versioning-strategy: increase
5
+ directory: "/"
6
+ schedule:
7
+ interval: "monthly"
8
+ labels:
9
+ - "dependencies"
10
+ open-pull-requests-limit: 100
11
+ pull-request-branch-name:
12
+ separator: "-"
13
+ ignore:
14
+ - dependency-name: "fs-extra"
15
+ - dependency-name: "*"
16
+ update-types: ["version-update:semver-major"]
@@ -13,23 +13,21 @@ jobs:
13
13
  pull-requests: write
14
14
 
15
15
  steps:
16
- - uses: google-github-actions/release-please-action@v3
16
+ - uses: google-github-actions/release-please-action@v4
17
17
  id: release
18
18
  with:
19
- release-type: ruby
20
- package-name: addons-api
21
- bump-minor-pre-major: true
22
- version-file: "lib/addons-api/version.rb"
19
+ token: ${{secrets.RELEASE_PLEASE_GITHUB_TOKEN}}
20
+ config-file: release-please-config.json
23
21
 
24
22
  # Checkout code if release was created
25
23
  - uses: actions/checkout@v3
26
24
  if: ${{ steps.release.outputs.release_created }}
27
25
 
28
26
  # Set up Ruby if a release was created
29
- - name: Set up Ruby 3.1
27
+ - name: Set up Ruby 3.2
30
28
  uses: ruby/setup-ruby@v1
31
29
  with:
32
- ruby-version: 3.1
30
+ ruby-version: 3.2
33
31
  if: ${{ steps.release.outputs.release_created }}
34
32
 
35
33
  # Bundle install if a release was created
data/.gitignore CHANGED
@@ -1 +1,2 @@
1
1
  Gemfile.lock
2
+ *.gem
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "1.1.0"
3
+ }
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.1.0](https://github.com/addonsio/addons-ruby/compare/addons-api/v1.0.9...addons-api/v1.1.0) (2024-02-12)
4
+
5
+
6
+ ### Features
7
+
8
+ * bump release ([#10](https://github.com/addonsio/addons-ruby/issues/10)) ([12f4f8e](https://github.com/addonsio/addons-ruby/commit/12f4f8ed48ce69179026d4866054dfaae3187814))
9
+ * release 1.1.0 ([12f4f8e](https://github.com/addonsio/addons-ruby/commit/12f4f8ed48ce69179026d4866054dfaae3187814))
10
+
11
+ ## [1.0.9](https://github.com/addonsio/addons-ruby/compare/addons-api-v1.0.8...addons-api/v1.0.9) (2024-02-08)
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * initial commit ([46c3542](https://github.com/addonsio/addons-ruby/commit/46c3542a2b9dc6ab87490b63aa790a159e37191a))
17
+ * Publish to RubyGems with GH actions ([df667cc](https://github.com/addonsio/addons-ruby/commit/df667ccbbaab96c80bbe8ddf59ee03a79a350c43))
18
+
3
19
  ## [1.0.8](https://github.com/addonsio/ruby-sdk/compare/v1.0.7...v1.0.8) (2023-04-03)
4
20
 
5
21
 
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Addons.io API Ruby SDK
2
2
 
3
- Ruby HTTP client for the Addons API.
3
+ Ruby HTTP client for the Addons.io API.
4
4
 
5
5
  ## Similarity to other PaaS
6
6
 
7
- - The [Heroku](https://heroku.com) API. Add-ons will find that they need little modifications to their code when switching to the Addons.io platform.
7
+ - The [Heroku](https://heroku.com) API. Addons will find that they need little modifications to their code when switching to the Addons.io platform.
data/addons-api.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.email = ['moty@crazyantlabs.com']
13
13
  spec.description = 'Ruby HTTP client for the Addons.io API.'
14
14
  spec.summary = 'Ruby HTTP client for the Addons.io API. Learn more on https://addons.io'
15
- spec.homepage = 'https://github.com/addonsio/ruby-sdk'
15
+ spec.homepage = 'https://github.com/addonsio/addons-ruby'
16
16
  spec.license = 'MIT'
17
17
 
18
18
  spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
@@ -100,13 +100,18 @@ module AddonsApi
100
100
  @oauth_resource ||= OAuth.new(self)
101
101
  end
102
102
 
103
+ # AddonService resource
104
+ def addon_service
105
+ @addon_service_resource ||= AddonService.new(self)
106
+ end
107
+
103
108
  # Team resource
104
109
  def team
105
110
  @team_resource ||= Team.new(self)
106
111
  end
107
112
  end
108
113
 
109
- # Add-on services represent add-ons that may be provisioned for apps.
114
+ # Addon services represent addons that may be provisioned for apps.
110
115
  class OAuth
111
116
  BASE_PATH = "oauth"
112
117
 
@@ -148,6 +153,58 @@ module AddonsApi
148
153
  end
149
154
  end
150
155
 
156
+ class AddonService
157
+ BASE_PATH = "addon-services"
158
+
159
+ def initialize(client)
160
+ @client = client
161
+ end
162
+
163
+ def list()
164
+ @client.request(:get, "#{BASE_PATH}")
165
+ end
166
+
167
+ def info(addon_service_id)
168
+ @client.request(:get, "#{BASE_PATH}/#{addon_service_id}")
169
+ end
170
+
171
+ def plan
172
+ @plan_resource ||= AddonServicePlan.new(@client)
173
+ end
174
+
175
+ def field
176
+ @field_resource ||= AddonServiceField.new(@client)
177
+ end
178
+
179
+ class AddonServicePlan
180
+ def initialize(client)
181
+ @client = client
182
+ end
183
+
184
+ def list(addon_service_id)
185
+ @client.request(:get, "#{BASE_PATH}/#{addon_service_id}/plans")
186
+ end
187
+
188
+ def info(addon_service_id, addon_service_plan_id)
189
+ @client.request(:get, "#{BASE_PATH}/#{addon_service_id}/plans/#{addon_service_plan_id}")
190
+ end
191
+ end
192
+
193
+ class AddonServiceField
194
+ def initialize(client)
195
+ @client = client
196
+ end
197
+
198
+ def list(addon_service_id)
199
+ @client.request(:get, "#{BASE_PATH}/#{addon_service_id}/fields")
200
+ end
201
+
202
+ def info(addon_service_id, addon_service_field_id)
203
+ @client.request(:get, "#{BASE_PATH}/#{addon_service_id}/fields/#{addon_service_plan_id}")
204
+ end
205
+ end
206
+ end
207
+
151
208
  class Team
152
209
  BASE_PATH = "teams"
153
210
 
@@ -167,7 +224,7 @@ module AddonsApi
167
224
  @member_resource ||= Member.new(@client)
168
225
  end
169
226
 
170
- # Add-on resource
227
+ # Addon resource
171
228
  def addon
172
229
  @addon_resource ||= Addon.new(@client)
173
230
  end
@@ -184,12 +241,16 @@ module AddonsApi
184
241
  end
185
242
  end
186
243
 
187
- # Add-on
244
+ # Addon
188
245
  class Addon
189
246
  def initialize(client)
190
247
  @client = client
191
248
  end
192
249
 
250
+ def sso(team_id, addon_id, body = {})
251
+ @sso_resource ||= Sso.new(@client)
252
+ end
253
+
193
254
  def action
194
255
  @action_resource ||= Action.new(@client)
195
256
  end
@@ -206,56 +267,84 @@ module AddonsApi
206
267
  @client.request(:get, "", base_url: callback_url)
207
268
  end
208
269
 
209
- # Configuration of an Add-on
270
+ def create(team_id, body = {})
271
+ @client.request(:post, "#{BASE_PATH}/#{team_id}/addons", body: body)
272
+ end
273
+
274
+ def delete(team_id, addon_id)
275
+ @client.request(:delete, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}")
276
+ end
277
+
278
+ def update(team_id, addon_id, body = {})
279
+ @client.request(:patch, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}", body: body)
280
+ end
281
+
282
+ class Sso
283
+ def initialize(client)
284
+ @client = client
285
+ end
286
+
287
+ # Get the configuration of an addon.
288
+ def create(team_id, addon_id)
289
+ @client.request(:post, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}/sso")
290
+ end
291
+
292
+ # Mark an addon as deprovisioned with callback URL.
293
+ def create_with_callback_url(callback_url)
294
+ @client.request(:post, "sso", base_url: callback_url)
295
+ end
296
+ end
297
+
298
+ # Configuration of an Addon
210
299
  class Config
211
300
  def initialize(client)
212
301
  @client = client
213
302
  end
214
303
 
215
- # Get the configuration of an add-on.
304
+ # Get the configuration of an addon.
216
305
  def list(team_id, addon_id)
217
306
  @client.request(:get, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}/config")
218
307
  end
219
308
 
220
- # Get the configuration of an add-on with callback URL.
309
+ # Get the configuration of an addon with callback URL.
221
310
  def list_with_callback_url(callback_url)
222
311
  @client.request(:get, "config", base_url: callback_url)
223
312
  end
224
313
 
225
- # Update the configuration of an add-on.
314
+ # Update the configuration of an addon.
226
315
  def update(team_id, addon_id, body = {})
227
316
  @client.request(:patch, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}/config", body: body)
228
317
  end
229
318
 
230
- # Update the configuration of an add-on with callback URL.
319
+ # Update the configuration of an addon with callback URL.
231
320
  def update_with_callback_url(callback_url, body = {})
232
321
  @client.request(:patch, "config", base_url: callback_url, body: body)
233
322
  end
234
323
  end
235
324
 
236
- # Add-on Actions are lifecycle operations for add-on provisioning and deprovisioning.
237
- # They allow add-on providers to (de)provision add-ons in the background and then report back when (de)provisioning is complete.
325
+ # Addon Actions are lifecycle operations for addon provisioning and deprovisioning.
326
+ # They allow addon providers to (de)provision addons in the background and then report back when (de)provisioning is complete.
238
327
  class Action
239
328
  def initialize(client)
240
329
  @client = client
241
330
  end
242
331
 
243
- # Mark an add-on as provisioned.
332
+ # Mark an addon as provisioned.
244
333
  def provision(team_id, addon_id)
245
334
  @client.request(:post, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}/actions/provision")
246
335
  end
247
336
 
248
- # Mark an add-on as provisioned with callback URL.
337
+ # Mark an addon as provisioned with callback URL.
249
338
  def provision_with_callback_url(callback_url)
250
339
  @client.request(:post, "actions/provision", base_url: callback_url)
251
340
  end
252
341
 
253
- # Mark an add-on as deprovisioned.
342
+ # Mark an addon as deprovisioned.
254
343
  def deprovision(team_id, addon_id)
255
344
  @client.request(:post, "#{BASE_PATH}/#{team_id}/addons/#{addon_id}/actions/deprovision")
256
345
  end
257
346
 
258
- # Mark an add-on as deprovisioned with callback URL.
347
+ # Mark an addon as deprovisioned with callback URL.
259
348
  def deprovision_with_callback_url(callback_url)
260
349
  @client.request(:post, "actions/deprovision", base_url: callback_url)
261
350
  end
@@ -1,3 +1,3 @@
1
1
  module AddonsApi
2
- VERSION = '1.0.8'
2
+ VERSION = '1.1.0'
3
3
  end
@@ -0,0 +1,15 @@
1
+ {
2
+ "packages": {
3
+ ".": {
4
+ "package-name": "addons-api",
5
+ "changelog-path": "CHANGELOG.md",
6
+ "release-type": "ruby",
7
+ "bump-minor-pre-major": true,
8
+ "bump-patch-for-minor-pre-major": false,
9
+ "draft": false,
10
+ "prerelease": false,
11
+ "version-file": "lib/addons-api/version.rb"
12
+ }
13
+ },
14
+ "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
15
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: addons-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - motymichaely
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-03 00:00:00.000000000 Z
11
+ date: 2024-02-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -129,8 +129,10 @@ executables: []
129
129
  extensions: []
130
130
  extra_rdoc_files: []
131
131
  files:
132
+ - ".github/dependabot.yml"
132
133
  - ".github/workflows/release.yml"
133
134
  - ".gitignore"
135
+ - ".release-please-manifest.json"
134
136
  - CHANGELOG.md
135
137
  - Gemfile
136
138
  - LICENSE
@@ -139,11 +141,12 @@ files:
139
141
  - lib/addons-api.rb
140
142
  - lib/addons-api/client.rb
141
143
  - lib/addons-api/version.rb
142
- homepage: https://github.com/addonsio/ruby-sdk
144
+ - release-please-config.json
145
+ homepage: https://github.com/addonsio/addons-ruby
143
146
  licenses:
144
147
  - MIT
145
148
  metadata: {}
146
- post_install_message:
149
+ post_install_message:
147
150
  rdoc_options: []
148
151
  require_paths:
149
152
  - lib
@@ -158,8 +161,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
158
161
  - !ruby/object:Gem::Version
159
162
  version: '0'
160
163
  requirements: []
161
- rubygems_version: 3.3.26
162
- signing_key:
164
+ rubygems_version: 3.4.19
165
+ signing_key:
163
166
  specification_version: 4
164
167
  summary: Ruby HTTP client for the Addons.io API. Learn more on https://addons.io
165
168
  test_files: []