class Fastlane::Actions::BuddybuildShowLatestBuildAction
Public Class Methods
available_options()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_show_latest_build.rb, line 52 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), FastlaneCore::ConfigItem.new(key: :app_id, env_name: "BUDDYBUILD_APP_ID", description: "The Buddybuild Application Identifier", optional: true, type: String), FastlaneCore::ConfigItem.new(key: :branch, env_name: "BUDDYBUILD_BRANCH_ID", description: "The Buddybuild Application Branch", optional: true, type: String), FastlaneCore::ConfigItem.new(key: :scheme, env_name: "BUDDYBUILD_APP_SCHEMA", description: "The Buddybuild Application Schema", optional: true, type: String), FastlaneCore::ConfigItem.new(key: :status, env_name: "BUDDYBUILD_APP_STATUS", description: "The Buddybuild Application Status", optional: true, type: String, verify_block: proc do |value| UI.user_error! "#{value} is not a valid status" unless ["cancelled", "failed", "queued", "running", "success"].include? value end) ] end
description()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_show_latest_build.rb, line 40 def self.description "Retrieves the latest build for a given Application Identifier." end
is_supported?(platform)
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_show_latest_build.rb, line 85 def self.is_supported?(platform) true end
return_value()
click to toggle source
# File lib/fastlane/plugin/buddybuild/actions/buddybuild_show_latest_build.rb, line 48 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_show_latest_build.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] UI.error("Application Id not set") unless params[:app_id] 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/#{params[:app_id]}/build/latest" do |req| if !params[:branch].nil? req.params[:branch] = params[:branch] end if !params[:scheme].nil? req.params[:scheme] = params[:scheme] end if !params[:status].nil? req.params[:status] = params[:status] end end case response.status when 200...300 return response.body else UI.user_error!('Error retrieving applications: #{response.status} - #{response.body}') end end