Class: MarketplaceKit::Services::ApiGateway
- Inherits:
-
Object
- Object
- MarketplaceKit::Services::ApiGateway
- Defined in:
- lib/marketplace_kit/services/api_gateway.rb
Instance Method Summary collapse
- #backup ⇒ Object
- #deploy(zip_file_path, force:, manifest:) ⇒ Object
- #get_deploy(deploy_id) ⇒ Object
- #login(email, password) ⇒ Object
- #login_required? ⇒ Boolean
- #send_file_change(relative_file_path, file_path) ⇒ Object
- #settings ⇒ Object
Instance Method Details
#backup ⇒ Object
51 52 53 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 51 def backup send_request(:post, 'marketplace_releases/backup', {}) end |
#deploy(zip_file_path, force:, manifest:) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 35 def deploy(zip_file_path, force:, manifest:) upload_file = Faraday::UploadIO.new(zip_file_path, 'application/zip') send_request( :post, 'marketplace_releases', { marketplace_builder: { zip_file: upload_file, force_mode: force, manifest: manifest } }, multipart: true ) end |
#get_deploy(deploy_id) ⇒ Object
31 32 33 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 31 def get_deploy(deploy_id) send_request(:get, "marketplace_releases/#{deploy_id}") end |
#login(email, password) ⇒ Object
4 5 6 7 8 9 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 4 def login(email, password) response = send_request(:post, 'sessions', email: email, password: password) raise Errors::MarketplaceError.new('Error: Invalid email or password!') if response.status == 401 response.body['token'] end |
#login_required? ⇒ Boolean
11 12 13 14 15 16 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 11 def login_required? response = send_request(:get, "sessions?temporary_token=#{MarketplaceKit.config.token}") raise Errors::MarketplaceError.new('Login failed.') unless response.success? response.body['login_required'] end |
#send_file_change(relative_file_path, file_path) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 18 def send_file_change(relative_file_path, file_path) file = Faraday::UploadIO.new(file_path, 'application/octet-stream') send_request( :put, 'marketplace_releases/sync', { path: relative_file_path, marketplace_builder_file_body: file }, multipart: true ) end |
#settings ⇒ Object
55 56 57 |
# File 'lib/marketplace_kit/services/api_gateway.rb', line 55 def settings send_request(:get, 'settings') end |