class Fastlane::Actions::BuddybuildListAppsAction
Public Class Methods
available_options()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_list_apps_action.rb, line 61 def self.available_options [ FastlaneCore::ConfigItem.new(key: :api_access_token, env_name: "BUDDYBUILD_API_ACCESS_TOKEN", description: "The Buddybuild API Access Token for a given account", optional: false, type: String) ] end
description()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_list_apps_action.rb, line 49 def self.description "Retrieves all the applications for a given account in Buddybuild." end
is_supported?(platform)
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_list_apps_action.rb, line 71 def self.is_supported?(platform) true end
return_value()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_list_apps_action.rb, line 57 def self.return_value # If your method provides a return value, you can describe here what it does end
run(params)
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_list_apps_action.rb, line 4 def self.run(params) require 'faraday' require 'faraday_middleware' require 'json' UI.error("API Access Token not set") unless params[:api_access_token] buddybuild_api_base_url = 'https://api.buddybuild.com' conn = Faraday.new(:url => buddybuild_api_base_url) do |builder| builder.authorization :Bearer, params[:api_access_token] builder.adapter :net_http end response = conn.get '/v1/apps' case response.status when 200...300 # Print table options = [ "Number", "App Id", "Name", "Platform" ] json = JSON.parse(response.body) rows = [] json.each_with_index do |value, i| index = i + 1 rows << [index, value['_id'], value['app_name'], value['platform']] end puts Terminal::Table.new( title: "Buddybuild Applications".green, headings: options, rows: FastlaneCore::PrintTable.transform_output(rows) ) return response.body else UI.user_error!('Error retrieving applications: #{response.status} - #{response.body}') end end