lib/gooddata/lcm/actions/collect_segments.rb in gooddata-0.6.50 vs lib/gooddata/lcm/actions/collect_segments.rb in gooddata-0.6.51
- old
+ new
@@ -28,13 +28,26 @@
domain_name = params.organization || params.domain
domain = client.domain(domain_name) || fail("Invalid domain name specified - #{domain_name}")
domain_segments = domain.segments
+ if params.segments_filter
+ domain_segments.select! do |segment|
+ params.segments_filter.include?(segment.segment_id)
+ end
+ end
+
segments = domain_segments.map do |segment|
- project = segment.master_project
+ project = nil
- # TODO: Check if project exists!
+ begin
+ project = segment.master_project
+ rescue RestClient::BadRequest => e
+ params.gdc_logger.error "Failed to retrieve master project for segment #{segment.id}. Error: #{e}"
+ raise
+ end
+
+ raise "Master project for segment #{segment.id} doesn't exist." unless project
{
segment_id: segment.segment_id,
development_pid: project.pid,
driver: project.driver.downcase,