Class: GitlabQuality::TestTooling::FeatureReadiness::OperationalReadinessCheck
- Inherits:
-
Object
- Object
- GitlabQuality::TestTooling::FeatureReadiness::OperationalReadinessCheck
- Includes:
- Concerns::IssueConcern, Concerns::WorkItemConcern
- Defined in:
- lib/gitlab_quality/test_tooling/feature_readiness/operational_readiness_check.rb
Constant Summary collapse
- BASE_LABELS_FOR_SEARCH =
["feature::addition"].freeze
- OPERATIONAL_READINESS_ISSUE_TEMPLATE_PATH =
'.gitlab/issue_templates/Operational Readiness.md'
Constants included from Concerns::WorkItemConcern
Concerns::WorkItemConcern::OPERATIONAL_READINESS_NOTE_ID, Concerns::WorkItemConcern::OPERATIONAL_READINESS_TRACKING_LABEL
Constants included from Concerns::IssueConcern
Concerns::IssueConcern::OPERATIONAL_READINESS_CHECKLIST_LABEL
Instance Method Summary collapse
-
#initialize(token:, project: nil, group: nil, limit_to_minutes: nil, search_labels: [], issue_is_blocking: false, dry_run: false) ⇒ OperationalReadinessCheck
constructor
A new instance of OperationalReadinessCheck.
- #invoke! ⇒ Object
Methods included from Concerns::WorkItemConcern
#add_labels, #add_operational_readiness_precheck_comment, #existing_note_containing_text, #extract_id_from_gid, #fetch_work_item, #get_id_for_group_label, #get_id_for_label, #get_issue_iids, #get_labels, #has_a_child_epic?, #has_label?, #ids_for_group_labels, #ids_for_labels, #label_gids, #link_operation_readiness_issue, #linked_issue_iids, #note_has_emoji?, #post_comment_about_operation_readiness_issue_created, #work_item_author_id
Methods included from Concerns::IssueConcern
#create_operation_readiness_issue, #has_operational_readiness_issue_linked?, #linked_issues
Constructor Details
#initialize(token:, project: nil, group: nil, limit_to_minutes: nil, search_labels: [], issue_is_blocking: false, dry_run: false) ⇒ OperationalReadinessCheck
Returns a new instance of OperationalReadinessCheck.
15 16 17 18 19 20 21 22 23 |
# File 'lib/gitlab_quality/test_tooling/feature_readiness/operational_readiness_check.rb', line 15 def initialize(token:, project: nil, group: nil, limit_to_minutes: nil, search_labels: [], issue_is_blocking: false, dry_run: false) @token = token @project = "#{group}/#{project}" @group = group @limit_to_minutes = limit_to_minutes @search_labels = search_labels @issue_is_blocking = issue_is_blocking @dry_run = dry_run end |
Instance Method Details
#invoke! ⇒ Object
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/gitlab_quality/test_tooling/feature_readiness/operational_readiness_check.rb', line 25 def invoke! created_after = utc_time_minus_mins(limit_to_minutes) epics = work_items_client.paginated_call(:group_work_items, labels: search_labels.concat(BASE_LABELS_FOR_SEARCH).uniq, state: 'opened', created_after: created_after, extras: [:work_item_fields]) epics.each do |epic| process_epic(epic) end end |