Loading README.md +2 −1 Changes for README.md: 2 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ usage: gitlab-projects-settings [-h] [--version] [--update-check] [--settings] [ [--run-housekeeping] [--prune-unreachable-objects] [--archive-project | --unarchive-project] [--delete-group] [--delete-project] [--protect-branches] [--protect-tags [LEVEL]] [--set-merge-method [METHOD]] [--set-merge-squash [SQUASH]] [--set-merge-squash [SQUASH]] [--set-merge-pipelines [CHECK]] [--erase-jobs-artifacts | --erase-jobs-contents] [--get-group-labels | --set-group-labels JSON] [--get-project-labels | --set-project-labels JSON] [--] Loading Loading @@ -111,6 +111,7 @@ repository settings arguments: merge requests settings arguments: --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward) --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow) --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True) ci/cd settings arguments: --erase-jobs-artifacts # Erase all CI/CD jobs artifacts Loading src/cli/entrypoint.py +13 −0 Changes for src/cli/entrypoint.py: 13 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ from ..system.platform import Platform from ..types.environments import Environments from ..types.gitlab import ( MergeRequestsMethod, MergeRequestsPipelines, MergeRequestsSquash, ProjectFeatures, ) Loading Loading @@ -624,6 +625,18 @@ class Entrypoint: f'{Colors.RESET}') Platform.flush() # Set project merge pipelines if options.set_merge_pipelines is not None: gitlab.project_set_attribute( criteria, MergeRequestsPipelines.ATTRIBUTE, options.set_merge_pipelines, ) print(f'{Colors.BOLD} - Set merge pipelines: ' f'{Colors.CYAN}{str(options.set_merge_pipelines).lower()}' f'{Colors.RESET}') Platform.flush() # Erase project jobs artifacts and traces if options.erase_jobs_contents: gitlab.project_erase_jobs_contents(criteria) Loading src/cli/main.py +10 −0 Changes for src/cli/main.py: 10 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -313,6 +313,16 @@ def main() -> None: help='Set project merge requests squashing' f' ({", ".join(MergeRequestsSquash.VALUES.keys())}, default: %(const)s)', ) group.add_argument( '--set-merge-pipelines', dest='set_merge_pipelines', metavar='CHECK', nargs='?', type=lambda x: (str(x).lower() in ('true', 't', 'yes', 'y', 'on', '1')), const=MergeRequestsPipelines.DEFAULT, help='Set project merge requests check for successful pipelines' ' (true, false, default: %(const)s)', ) # Arguments CI/CD settings definitions group = parser.add_argument_group('ci/cd settings arguments') Loading src/types/gitlab.py +5 −0 Changes for src/types/gitlab.py: 5 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -24,6 +24,11 @@ class MergeRequestsMethod: 'Fast-forward': 'ff', } # MergeRequestsPipelines class class MergeRequestsPipelines: ATTRIBUTE: str = 'only_allow_merge_if_pipeline_succeeds' DEFAULT: bool = True # MergeRequestsSquash class class MergeRequestsSquash: ATTRIBUTE: str = 'squash_option' Loading Loading
README.md +2 −1 Changes for README.md: 2 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ usage: gitlab-projects-settings [-h] [--version] [--update-check] [--settings] [ [--run-housekeeping] [--prune-unreachable-objects] [--archive-project | --unarchive-project] [--delete-group] [--delete-project] [--protect-branches] [--protect-tags [LEVEL]] [--set-merge-method [METHOD]] [--set-merge-squash [SQUASH]] [--set-merge-squash [SQUASH]] [--set-merge-pipelines [CHECK]] [--erase-jobs-artifacts | --erase-jobs-contents] [--get-group-labels | --set-group-labels JSON] [--get-project-labels | --set-project-labels JSON] [--] Loading Loading @@ -111,6 +111,7 @@ repository settings arguments: merge requests settings arguments: --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward) --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow) --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True) ci/cd settings arguments: --erase-jobs-artifacts # Erase all CI/CD jobs artifacts Loading
src/cli/entrypoint.py +13 −0 Changes for src/cli/entrypoint.py: 13 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ from ..system.platform import Platform from ..types.environments import Environments from ..types.gitlab import ( MergeRequestsMethod, MergeRequestsPipelines, MergeRequestsSquash, ProjectFeatures, ) Loading Loading @@ -624,6 +625,18 @@ class Entrypoint: f'{Colors.RESET}') Platform.flush() # Set project merge pipelines if options.set_merge_pipelines is not None: gitlab.project_set_attribute( criteria, MergeRequestsPipelines.ATTRIBUTE, options.set_merge_pipelines, ) print(f'{Colors.BOLD} - Set merge pipelines: ' f'{Colors.CYAN}{str(options.set_merge_pipelines).lower()}' f'{Colors.RESET}') Platform.flush() # Erase project jobs artifacts and traces if options.erase_jobs_contents: gitlab.project_erase_jobs_contents(criteria) Loading
src/cli/main.py +10 −0 Changes for src/cli/main.py: 10 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -313,6 +313,16 @@ def main() -> None: help='Set project merge requests squashing' f' ({", ".join(MergeRequestsSquash.VALUES.keys())}, default: %(const)s)', ) group.add_argument( '--set-merge-pipelines', dest='set_merge_pipelines', metavar='CHECK', nargs='?', type=lambda x: (str(x).lower() in ('true', 't', 'yes', 'y', 'on', '1')), const=MergeRequestsPipelines.DEFAULT, help='Set project merge requests check for successful pipelines' ' (true, false, default: %(const)s)', ) # Arguments CI/CD settings definitions group = parser.add_argument_group('ci/cd settings arguments') Loading
src/types/gitlab.py +5 −0 Changes for src/types/gitlab.py: 5 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -24,6 +24,11 @@ class MergeRequestsMethod: 'Fast-forward': 'ff', } # MergeRequestsPipelines class class MergeRequestsPipelines: ATTRIBUTE: str = 'only_allow_merge_if_pipeline_succeeds' DEFAULT: bool = True # MergeRequestsSquash class class MergeRequestsSquash: ATTRIBUTE: str = 'squash_option' Loading