gitlabform 4.2.1__tar.gz → 4.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gitlabform-4.2.1 → gitlabform-4.2.3}/PKG-INFO +1 -1
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/util/labels_processor.py +13 -7
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/PKG-INFO +1 -1
- {gitlabform-4.2.1 → gitlabform-4.2.3}/pyproject.toml +1 -1
- {gitlabform-4.2.1 → gitlabform-4.2.3}/LICENSE +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/README.md +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/common.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/core.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/groups.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/projects.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/configuration/transform.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/constants.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/commits.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/core.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/group_badges.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/group_ldap_links.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/group_variables.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/groups.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/merge_requests.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/pipelines.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/project_badges.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/project_deploy_keys.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/project_merge_requests_approvals.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/project_protected_environments.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/project_security_settings.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/projects.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/python_gitlab.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/gitlab/variables.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/lists/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/lists/filter.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/lists/groups.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/lists/projects.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/output.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/abstract_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/application/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/application/application_settings_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/defining_keys.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_badges_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_hooks_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_labels_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_ldap_links_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_members_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_push_rules_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_saml_links_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_settings_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_variables_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/multiple_entities_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/badges_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/branches_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/deploy_keys_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/files_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/hooks_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/integrations_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/job_token_scope_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/members_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/merge_requests_approval_rules.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/merge_requests_approvals.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_labels_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_push_rules_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_security_settings.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_settings_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/resource_groups_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/schedules_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/tags_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/variables_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/shared/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/shared/protected_environments_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/single_entity_processor.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/util/__init__.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/util/decorators.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/util/difference_logger.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/run.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/util.py +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/SOURCES.txt +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/dependency_links.txt +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/entry_points.txt +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/requires.txt +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform.egg-info/top_level.txt +0 -0
- {gitlabform-4.2.1 → gitlabform-4.2.3}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitlabform
|
|
3
|
-
Version: 4.2.
|
|
3
|
+
Version: 4.2.3
|
|
4
4
|
Summary: 🏗 Specialized configuration as a code tool for GitLab projects, groups and more using hierarchical configuration written in YAML
|
|
5
5
|
Author: Greg Dubicki and Contributors
|
|
6
6
|
Project-URL: Homepage, https://gitlabform.github.io/gitlabform/
|
|
@@ -14,8 +14,8 @@ class LabelsProcessor:
|
|
|
14
14
|
group_or_project: Group | Project,
|
|
15
15
|
needs_update: Callable, # self._needs_update passed from AbstractProcessor called process_labels
|
|
16
16
|
):
|
|
17
|
-
#
|
|
18
|
-
existing_labels = group_or_project.labels.list(get_all=True)
|
|
17
|
+
# Only get Labels created directly on the project/group
|
|
18
|
+
existing_labels = group_or_project.labels.list(get_all=True, include_ancestor_groups=False)
|
|
19
19
|
existing_label_names: List = []
|
|
20
20
|
|
|
21
21
|
if isinstance(group_or_project, Group):
|
|
@@ -25,9 +25,11 @@ class LabelsProcessor:
|
|
|
25
25
|
|
|
26
26
|
if existing_labels:
|
|
27
27
|
for listed_label in existing_labels:
|
|
28
|
+
# list and get single label return the same data from Gitlab so we can save on API calls
|
|
29
|
+
# by only GETting again when we need to make an update or delete
|
|
30
|
+
# https://docs.gitlab.com/api/labels/ && https://docs.gitlab.com/api/group_labels/
|
|
28
31
|
verbose(f"Processing existing label in Gitlab: {listed_label.name}")
|
|
29
|
-
|
|
30
|
-
label_name = full_label.name
|
|
32
|
+
label_name = listed_label.name
|
|
31
33
|
|
|
32
34
|
if label_name not in configured_labels.keys():
|
|
33
35
|
verbose(f"{label_name} not in configured labels")
|
|
@@ -35,15 +37,15 @@ class LabelsProcessor:
|
|
|
35
37
|
# on Repo state, for example: Compliance Framework labels based on language or CI-template status
|
|
36
38
|
if enforce:
|
|
37
39
|
info(f"Removing {label_name} from {parent_object_type}")
|
|
38
|
-
|
|
40
|
+
self.get_label(group_or_project, listed_label).delete()
|
|
39
41
|
else:
|
|
40
42
|
configured_label = configured_labels.get(label_name)
|
|
41
43
|
existing_label_names.append(label_name)
|
|
42
44
|
|
|
43
|
-
if needs_update(
|
|
45
|
+
if needs_update(listed_label.asdict(), configured_label):
|
|
44
46
|
self.update_existing_label(
|
|
45
47
|
configured_label,
|
|
46
|
-
|
|
48
|
+
self.get_label(group_or_project, listed_label),
|
|
47
49
|
parent_object_type,
|
|
48
50
|
)
|
|
49
51
|
else:
|
|
@@ -55,6 +57,10 @@ class LabelsProcessor:
|
|
|
55
57
|
info(f"Creating new label: {label_name}, on {parent_object_type}")
|
|
56
58
|
self.create_new_label(configured_labels, group_or_project, label_name, parent_object_type)
|
|
57
59
|
|
|
60
|
+
@staticmethod
|
|
61
|
+
def get_label(group_or_project, listed_label) -> GroupLabel | ProjectLabel:
|
|
62
|
+
return group_or_project.labels.get(listed_label.id)
|
|
63
|
+
|
|
58
64
|
@staticmethod
|
|
59
65
|
def update_existing_label(
|
|
60
66
|
configured_label,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitlabform
|
|
3
|
-
Version: 4.2.
|
|
3
|
+
Version: 4.2.3
|
|
4
4
|
Summary: 🏗 Specialized configuration as a code tool for GitLab projects, groups and more using hierarchical configuration written in YAML
|
|
5
5
|
Author: Greg Dubicki and Contributors
|
|
6
6
|
Project-URL: Homepage, https://gitlabform.github.io/gitlabform/
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gitlabform"
|
|
7
|
-
version = "4.2.
|
|
7
|
+
version = "4.2.3"
|
|
8
8
|
authors = [{ name = "Greg Dubicki and Contributors" }]
|
|
9
9
|
description = "🏗 Specialized configuration as a code tool for GitLab projects, groups and more using hierarchical configuration written in YAML"
|
|
10
10
|
keywords = ["cli", "yaml", "gitlab", "configuration-as-code"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_ldap_links_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_members_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_push_rules_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_saml_links_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_settings_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/group/group_variables_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/deploy_keys_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/integrations_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/job_token_scope_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/merge_requests_approval_rules.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/merge_requests_approvals.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_labels_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_push_rules_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_security_settings.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/project_settings_processor.py
RENAMED
|
File without changes
|
{gitlabform-4.2.1 → gitlabform-4.2.3}/gitlabform/processors/project/resource_groups_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|