Skip to content

add missing mergequeue rule configuration properties #3822

@patrickcarnahan

Description

@patrickcarnahan

the merge queue configuration is missing a couple of properties that are available in the raw api:

{
    "type": "merge_queue",
    "parameters": map[string]interface{}{
        "merge_method":                      "MERGE",
        "max_entries_to_build":              5,
        "min_entries_to_merge":              1,
        "max_entries_to_merge":              5,
        "min_entries_to_merge_wait_minutes": 1,
        "grouping_strategy":                 "ALLGREEN",
        "check_response_timeout_minutes":    60,
        "check_run_retries_limit":           0,
        "actor_controlled_merging":          true,
    },
}

the current support in the merge queue ruleset is represented by the existing struct:

// MergeQueueRuleParameters represents the merge_queue rule parameters.
type MergeQueueRuleParameters struct {
	MergeMethod                  MergeQueueMergeMethod `json:"merge_method"`
	MaxEntriesToBuild            int                   `json:"max_entries_to_build"`
	MinEntriesToMerge            int                   `json:"min_entries_to_merge"`
	MaxEntriesToMerge            int                   `json:"max_entries_to_merge"`
	MinEntriesToMergeWaitMinutes int                   `json:"min_entries_to_merge_wait_minutes"`
	GroupingStrategy             MergeGroupingStrategy `json:"grouping_strategy"`
	CheckResponseTimeoutMinutes  int                   `json:"check_response_timeout_minutes"`
}

from this diff we need to implement two additional properties:

CheckRunRetriesLimit   int  `json:"check_run_retries_limit"`
ActorControlledMerging bool `json:"actor_controlled_merging"`

i'm happy to self-assign and add this functionality myself if there is reasonable expectation it will be merged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions