class A4Tools::DeploymentClient
Attributes
cache_timeout[RW]
Public Instance Methods
builds_for_milestone(milestone, builds=nil)
click to toggle source
# File lib/clients/deployment_client.rb, line 47 def builds_for_milestone(milestone, builds=nil) index = index_list_by_app(builds) in_milestone = [] (index.map { |app, builds| (builds.select { |b| b[:branches].is_a? Array and b[:branches].include? milestone }).last }).compact end
index_list_by_app()
click to toggle source
# File lib/clients/deployment_client.rb, line 35 def index_list_by_app builds = cache(:buildList) apps = {} builds.each do |build| apps[build[:appId]] ||= [] apps[build[:appId]].push build end apps.values.each { |app_builds| app_builds.sort! { |a,b| a[:postDate] <=> b[:postDate] } } apps end
publish_build(build, sites)
click to toggle source
# File lib/clients/deployment_client.rb, line 18 def publish_build(build, sites) sites = [*sites] return false unless authenticate_if_needed request = { commitId:build[:commitId], appIds:[build[:appId]], publicationTime:0, siteIds:sites } result = send_message(wrapped_message("buildPublish", "com.acres4.common.info.build.BuildPublishRequest", request)) return false unless result.code.to_i >= 200 and result.code.to_i < 300 true end