Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-gitlabcis for 
openSUSE:Factory checked in at 2026-03-17 19:04:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-gitlabcis (Old)
 and      /work/SRC/openSUSE:Factory/.python-gitlabcis.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-gitlabcis"

Tue Mar 17 19:04:40 2026 rev:9 rq:1339481 version:1.18.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-gitlabcis/python-gitlabcis.changes        
2026-03-16 14:21:00.290444201 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-gitlabcis.new.8177/python-gitlabcis.changes  
    2026-03-17 19:06:21.041279547 +0100
@@ -1,0 +2,7 @@
+Tue Mar 17 06:00:19 UTC 2026 - Johannes Kastl 
<[email protected]>
+
+- update to 1.18.0:
+  * Feature
+    - feat: Group support for dependency checks (#125) (92d4fbb)
+
+-------------------------------------------------------------------

Old:
----
  gitlabcis-1.17.1.tar.gz

New:
----
  gitlabcis-1.18.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-gitlabcis.spec ++++++
--- /var/tmp/diff_new_pack.FGQ76g/_old  2026-03-17 19:06:21.893314857 +0100
+++ /var/tmp/diff_new_pack.FGQ76g/_new  2026-03-17 19:06:21.893314857 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           python-gitlabcis
-Version:        1.17.1
+Version:        1.18.0
 Release:        0
 Summary:        An automated tool that assesses the GitLab CIS benchmarks 
against a project
 License:        MIT

++++++ gitlabcis-1.17.1.tar.gz -> gitlabcis-1.18.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitlabcis-1.17.1/CHANGELOG.md 
new/gitlabcis-1.18.0/CHANGELOG.md
--- old/gitlabcis-1.17.1/CHANGELOG.md   2026-03-16 01:39:57.000000000 +0100
+++ new/gitlabcis-1.18.0/CHANGELOG.md   2026-03-16 23:30:10.000000000 +0100
@@ -1,5 +1,11 @@
 # CHANGELOG
 
+## v1.18.0 (2026-03-16)
+
+### Feature
+
+* feat: Group support for dependency checks (#125) 
([`92d4fbb`](https://gitlab.com/gitlab-security-oss/cis/gitlabcis/-/commit/92d4fbb76f2127145cd3c9ea5c9770b064cbd780))
+
 ## v1.17.1 (2026-03-16)
 
 ### Fix
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitlabcis-1.17.1/PKG-INFO 
new/gitlabcis-1.18.0/PKG-INFO
--- old/gitlabcis-1.17.1/PKG-INFO       2026-03-16 01:40:06.635062000 +0100
+++ new/gitlabcis-1.18.0/PKG-INFO       2026-03-16 23:30:20.650512000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: gitlabcis
-Version: 1.17.1
+Version: 1.18.0
 Summary: An automated tool that assesses the GitLab CIS benchmarks against a 
project.
 Author-email: Nate Rosandich <[email protected]>, Neil McDonald 
<[email protected]>, Mitra JozeNazemian 
<[email protected]>
 License: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitlabcis-1.17.1/gitlabcis/__init__.py 
new/gitlabcis-1.18.0/gitlabcis/__init__.py
--- old/gitlabcis-1.17.1/gitlabcis/__init__.py  2026-03-16 01:39:57.000000000 
+0100
+++ new/gitlabcis-1.18.0/gitlabcis/__init__.py  2026-03-16 23:30:10.000000000 
+0100
@@ -9,4 +9,4 @@
 # -------------------------------------------------------------------------
 
 __author__ = '[email protected]'
-__version__ = '1.17.1'  # noqa: E999
+__version__ = '1.18.0'  # noqa: E999
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitlabcis-1.17.1/gitlabcis/benchmarks/dependencies_3/third_party_packages_3_1.py
 
new/gitlabcis-1.18.0/gitlabcis/benchmarks/dependencies_3/third_party_packages_3_1.py
--- 
old/gitlabcis-1.17.1/gitlabcis/benchmarks/dependencies_3/third_party_packages_3_1.py
        2026-03-16 01:39:40.000000000 +0100
+++ 
new/gitlabcis-1.18.0/gitlabcis/benchmarks/dependencies_3/third_party_packages_3_1.py
        2026-03-16 23:29:53.000000000 +0100
@@ -55,11 +55,14 @@
     from gql.transport.requests import RequestsHTTPTransport
     from graphql import GraphQLError
 
-    if kwargs.get('isProject'):
+    from gitlabcis.utils import ci
+
+    if kwargs.get('isProject') or kwargs.get('isGroup'):
         try:
 
             variables = {
                 'fullPath': glEntity.path_with_namespace
+                if kwargs.get('isProject') else glEntity.full_path
             }
 
         except (GitlabHttpError, GitlabGetError,
@@ -77,15 +80,30 @@
             fetch_schema_from_transport=True
         )
 
-        query = gql('''
-        query GetSecurityScanners($fullPath: ID!) {
-            project(fullPath: $fullPath) {
-                securityScanners {
-                    enabled
+        if kwargs.get('isProject'):
+            query = gql('''
+            query GetSecurityScanners($fullPath: ID!) {
+                project(fullPath: $fullPath) {
+                    securityScanners {
+                        enabled
+                    }
+                }
+            }
+            ''')
+        else:
+            query = gql('''
+            query GetGroupScanExecutionPolicies($fullPath: ID!) {
+                group(fullPath: $fullPath) {
+                    scanExecutionPolicies {
+                        nodes {
+                            name
+                            enabled
+                            yaml
+                        }
+                    }
                 }
             }
-        }
-        ''')
+            ''')
 
         try:
 
@@ -99,22 +117,57 @@
             return {None: 'Insufficient permissions'}
 
         try:
-            enabledScanners = results["project"]["securityScanners"]["enabled"]
-            dependencyScanningEnabled = \
-                "DEPENDENCY_SCANNING" in enabledScanners
-            containerScanningEnabled = \
-                "CONTAINER_SCANNING" in enabledScanners
-            if (dependencyScanningEnabled and containerScanningEnabled):
-                return {True: 'DEPENDENCY SCANNING and '
-                        'CONTAINER SCANNING are enabled'}
-            elif (dependencyScanningEnabled and not containerScanningEnabled):
-                return {False: 'DEPENDENCY SCANNING is enabled but '
-                        'CONTAINER SCANNING is not enabled'}
-            elif (containerScanningEnabled and not dependencyScanningEnabled):
-                return {False: 'CONTAINER SCANNING is enabled '
-                        'but DEPENDENCY SCANNING is not enabled'}
-            return {False: 'CONTAINER SCANNING and DEPENDENCY SCANNING '
-                    'are not enabled'}
+            if kwargs.get('isProject'):
+                enabledScanners = \
+                    results["project"]["securityScanners"]["enabled"]
+                dependencyScanningEnabled = \
+                    "DEPENDENCY_SCANNING" in enabledScanners
+                containerScanningEnabled = \
+                    "CONTAINER_SCANNING" in enabledScanners
+                if (dependencyScanningEnabled and containerScanningEnabled):
+                    return {True: 'DEPENDENCY SCANNING and '
+                            'CONTAINER SCANNING are enabled'}
+                elif (
+                    dependencyScanningEnabled and not containerScanningEnabled
+                ):
+                    return {False: 'DEPENDENCY SCANNING is enabled but '
+                            'CONTAINER SCANNING is not enabled'}
+                elif (
+                    containerScanningEnabled and not dependencyScanningEnabled
+                ):
+                    return {False: 'CONTAINER SCANNING is enabled '
+                            'but DEPENDENCY SCANNING is not enabled'}
+                return {False: 'CONTAINER SCANNING and DEPENDENCY SCANNING '
+                        'are not enabled'}
+
+            else:
+                depFound = False
+                containerFound = False
+                for policy in (
+                    results['group']['scanExecutionPolicies']['nodes']
+                ):
+                    if policy.get('enabled') is True:
+                        policy_yaml = ci.safeLoad(policy.get('yaml', ''))
+                        for action in policy_yaml.get('actions', []):
+                            scan = action.get('scan')
+                            if scan == 'dependency_scanning':
+                                depFound = True
+                            if scan == 'container_scanning':
+                                containerFound = True
+                if depFound and containerFound:
+                    return {True: 'DEPENDENCY SCANNING and '
+                            'CONTAINER SCANNING are enforced via '
+                            'Scan Execution Policy'}
+                elif depFound and not containerFound:
+                    return {False: 'DEPENDENCY SCANNING is enforced but '
+                            'CONTAINER SCANNING is not enforced via '
+                            'Scan Execution Policy'}
+                elif containerFound and not depFound:
+                    return {False: 'CONTAINER SCANNING is enforced but '
+                            'DEPENDENCY SCANNING is not enforced via '
+                            'Scan Execution Policy'}
+                return {False: 'CONTAINER SCANNING and DEPENDENCY SCANNING '
+                        'are not enforced via Scan Execution Policy'}
 
         except (GitlabHttpError, GitlabGetError,
                 GitlabAuthenticationError) as e:
@@ -127,9 +180,6 @@
     elif kwargs.get('isInstance'):
         return {None: 'Not applicable at instance level'}
 
-    elif kwargs.get('isGroup'):
-        return {None: 'Not yet implemented for groups'}
-
 # -------------------------------------------------------------------------
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitlabcis-1.17.1/gitlabcis/benchmarks/dependencies_3/validate_packages_3_2.py
 
new/gitlabcis-1.18.0/gitlabcis/benchmarks/dependencies_3/validate_packages_3_2.py
--- 
old/gitlabcis-1.17.1/gitlabcis/benchmarks/dependencies_3/validate_packages_3_2.py
   2026-03-16 01:39:40.000000000 +0100
+++ 
new/gitlabcis-1.18.0/gitlabcis/benchmarks/dependencies_3/validate_packages_3_2.py
   2026-03-16 23:29:53.000000000 +0100
@@ -18,11 +18,12 @@
 
     from gitlabcis.utils import ci
 
-    if kwargs.get('isProject'):
+    if kwargs.get('isProject') or kwargs.get('isGroup'):
         try:
 
             variables = {
                 'fullPath': glEntity.path_with_namespace
+                if kwargs.get('isProject') else glEntity.full_path
             }
 
         except (GitlabHttpError, GitlabGetError,
@@ -41,17 +42,26 @@
         )
 
         query = gql('''
-        query GetSecurityScanners($fullPath: ID!) {
+        query GetScanExecutionPolicies($fullPath: ID!) {
             project(fullPath: $fullPath) {
                 scanExecutionPolicies {
-                nodes {
-                    name
-                    enabled
-                    yaml
+                    nodes {
+                        name
+                        enabled
+                        yaml
+                    }
                 }
             }
+            group(fullPath: $fullPath) {
+                scanExecutionPolicies {
+                    nodes {
+                        name
+                        enabled
+                        yaml
+                    }
+                }
             }
-            }
+        }
         ''')
 
         try:
@@ -66,22 +76,25 @@
             return {None: 'Insufficient permissions'}
 
         try:
-            secret_detection_policy_found = False
-            for policy in results['project']['scanExecutionPolicies']['nodes']:
+            entityType = 'project' if kwargs.get('isProject') else 'group'
+            policyFound = False
+            for policy in (
+                results[entityType]['scanExecutionPolicies']['nodes']
+            ):
                 if policy.get('enabled') is True:
                     policy_yaml = ci.safeLoad(policy.get('yaml', ''))
                     actions = policy_yaml.get('actions', [])
                     for action in actions:
                         if action.get('scan') == 'dependency_scanning':
-                            secret_detection_policy_found = True
+                            policyFound = True
 
-            if secret_detection_policy_found:
+            if policyFound:
                 return {
                     True: (
                         'Scan Execution Policy for dependency_scanning is '
                         'enabled'
-                        )
-                    }
+                    )
+                }
             else:
                 return {
                     False: (
@@ -96,9 +109,6 @@
     elif kwargs.get('isInstance'):
         return {None: 'Not applicable at instance level'}
 
-    elif kwargs.get('isGroup'):
-        return {None: 'Not yet implemented for groups'}
-
 # -------------------------------------------------------------------------
 
 
@@ -134,7 +144,19 @@
         return {None: 'Not applicable at instance level'}
 
     elif kwargs.get('isGroup'):
-        return {None: 'Not yet implemented for groups'}
+        try:
+            if glEntity.auto_devops_enabled is True:
+                return {True: 'Dependency Scanning is '
+                        'enabled via Auto DevOps at group level'}
+            return {False: 'Auto DevOps is not enabled at the group level'}
+
+        except (GitlabHttpError, GitlabGetError,
+                GitlabAuthenticationError) as e:
+            if e.response_code in [401, 403]:
+                return {None: 'Insufficient permissions'}
+
+        except AttributeError:
+            return {None: 'Feature is not enabled'}
 
 # -------------------------------------------------------------------------
 
@@ -189,7 +211,21 @@
                 return {None: 'Insufficient permissions'}
 
     elif kwargs.get('isGroup'):
-        return {None: 'Not yet implemented for groups'}
+        try:
+            if glEntity.auto_devops_enabled is True:
+                return {True: 'Dependency Scanning which is required for '
+                        'packages to be automatically scanned for license '
+                        'implications is enabled via Auto DevOps at group '
+                        'level'}
+            return {False: 'Auto DevOps is not enabled at the group level'}
+
+        except (GitlabHttpError, GitlabGetError,
+                GitlabAuthenticationError) as e:
+            if e.response_code in [401, 403]:
+                return {None: 'Insufficient permissions'}
+
+        except AttributeError:
+            return {None: 'Feature is not enabled'}
 
 # -------------------------------------------------------------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitlabcis-1.17.1/gitlabcis/tests/unit/benchmarks/dependencies_3/third_party_packages_3_1_test.py
 
new/gitlabcis-1.18.0/gitlabcis/tests/unit/benchmarks/dependencies_3/third_party_packages_3_1_test.py
--- 
old/gitlabcis-1.17.1/gitlabcis/tests/unit/benchmarks/dependencies_3/third_party_packages_3_1_test.py
        2026-03-16 01:39:40.000000000 +0100
+++ 
new/gitlabcis-1.18.0/gitlabcis/tests/unit/benchmarks/dependencies_3/third_party_packages_3_1_test.py
        2026-03-16 23:29:53.000000000 +0100
@@ -40,68 +40,136 @@
 
     test = third_party_packages_3_1.monitor_dependencies
 
-    kwargs = {
+    projectKwargs = {
         'graphQLEndpoint': 'https://example.com/graphql',
         'graphQLHeaders': {'Authorization': 'Bearer token'},
         'isProject': True
     }
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
 
     glEntity.path_with_namespace = 'test/project'
     gqlClient.return_value.execute.return_value = {
-        "project": {
-            "securityScanners": {
-                "enabled": ["DEPENDENCY_SCANNING", "CONTAINER_SCANNING"]
+        'project': {
+            'securityScanners': {
+                'enabled': ['DEPENDENCY_SCANNING', 'CONTAINER_SCANNING']
             }
         }
     }
-    run(glEntity, glObject, test, True, **kwargs)
+    run(glEntity, glObject, test, True, **projectKwargs)
 
-    glEntity.path_with_namespace = 'test/project'
     gqlClient.return_value.execute.return_value = {
-        "project": {
-            "securityScanners": {
-                "enabled": ["DEPENDENCY_SCANNING"]
+        'project': {
+            'securityScanners': {
+                'enabled': ['DEPENDENCY_SCANNING']
             }
         }
     }
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
 
-    glEntity.path_with_namespace = 'test/project'
     gqlClient.return_value.execute.return_value = {
-        "project": {
-            "securityScanners": {
-                "enabled": ["CONTAINER_SCANNING"]
+        'project': {
+            'securityScanners': {
+                'enabled': ['CONTAINER_SCANNING']
             }
         }
     }
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
 
-    glEntity.path_with_namespace = 'test/project'
     gqlClient.return_value.execute.return_value = {
-        "project": {
-            "securityScanners": {
-                "enabled": []
+        'project': {
+            'securityScanners': {
+                'enabled': []
             }
         }
     }
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
+
+    gqlClient.return_value.execute.return_value = {
+        'project': {
+            'securityScanners': {}
+        }
+    }
+    run(glEntity, glObject, test, False, **projectKwargs)
+
+    gqlClient.return_value.execute.side_effect = \
+        TransportServerError('GraphQL Error')
+    run(glEntity, glObject, test, None, **projectKwargs)
+
+    gqlClient.return_value.execute.side_effect = None
+
+    groupKwargs = {
+        'graphQLEndpoint': 'https://example.com/graphql',
+        'graphQLHeaders': {'Authorization': 'Bearer token'},
+        'isGroup': True
+    }
+    glEntity.full_path = 'test/group'
 
-    glEntity.path_with_namespace = 'test/project'
     gqlClient.return_value.execute.return_value = {
-        "project": {
-            "securityScanners": {}
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': [
+                    {
+                        'enabled': True,
+                        'yaml': (
+                            'actions:\n'
+                            '  - scan: dependency_scanning\n'
+                            '  - scan: container_scanning\n'
+                        )
+                    }
+                ]
+            }
+        }
+    }
+    run(glEntity, glObject, test, True, **groupKwargs)
+
+    gqlClient.return_value.execute.return_value = {
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': [
+                    {
+                        'enabled': True,
+                        'yaml': (
+                            'actions:\n'
+                            '  - scan: dependency_scanning\n'
+                        )
+                    }
+                ]
+            }
+        }
+    }
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    gqlClient.return_value.execute.return_value = {
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': [
+                    {
+                        'enabled': True,
+                        'yaml': (
+                            'actions:\n'
+                            '  - scan: container_scanning\n'
+                        )
+                    }
+                ]
+            }
+        }
+    }
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    gqlClient.return_value.execute.return_value = {
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': []
+            }
         }
     }
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **groupKwargs)
 
     gqlClient.return_value.execute.side_effect = \
         TransportServerError('GraphQL Error')
-    run(glEntity, glObject, test, None, **kwargs)
+    run(glEntity, glObject, test, None, **groupKwargs)
 
-    kwarg = [{'isGroup': True}, {'isInstance': True}]
-    for kwargs in kwarg:
-        run(glEntity, glObject, test, None, **kwargs)
+    run(glEntity, glObject, test, None, **{'isInstance': True})
 
 # -----------------------------------------------------------------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitlabcis-1.17.1/gitlabcis/tests/unit/benchmarks/dependencies_3/validate_packages_3_2_test.py
 
new/gitlabcis-1.18.0/gitlabcis/tests/unit/benchmarks/dependencies_3/validate_packages_3_2_test.py
--- 
old/gitlabcis-1.17.1/gitlabcis/tests/unit/benchmarks/dependencies_3/validate_packages_3_2_test.py
   2026-03-16 01:39:40.000000000 +0100
+++ 
new/gitlabcis-1.18.0/gitlabcis/tests/unit/benchmarks/dependencies_3/validate_packages_3_2_test.py
   2026-03-16 23:29:53.000000000 +0100
@@ -17,14 +17,14 @@
 
     glEntity.path_with_namespace = 'test/project'
 
-    kwargs = {
+    projectKwargs = {
         'graphQLEndpoint': 'https://gitlab.com/api/graphql',
         'graphQLHeaders': {'Authorization': 'Bearer token'},
         'isProject': True
     }
 
     gqlClient.return_value.execute.return_value = {'project': {}}
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
 
     mock_result = {
         'project': {
@@ -51,7 +51,7 @@
         }
     }
     gqlClient.return_value.execute.return_value = mock_result
-    run(glEntity, glObject, test, True, **kwargs)
+    run(glEntity, glObject, test, True, **projectKwargs)
 
     mock_result = {
         'project': {
@@ -72,19 +72,75 @@
         }
     }
     gqlClient.return_value.execute.return_value = mock_result
-    run(glEntity, glObject, test, False, **kwargs)
+    run(glEntity, glObject, test, False, **projectKwargs)
 
     gqlClient.return_value.execute.side_effect = \
         TransportServerError('GraphQL Error')
-    run(glEntity, glObject, test, None, **kwargs)
+    run(glEntity, glObject, test, None, **projectKwargs)
 
     gqlClient.return_value.execute.side_effect = \
         AttributeError()
-    run(glEntity, glObject, test, None, **kwargs)
+    run(glEntity, glObject, test, None, **projectKwargs)
 
-    kwarg = [{'isGroup': True}, {'isInstance': True}]
-    for kwargs in kwarg:
-        run(glEntity, glObject, test, None, **kwargs)
+    gqlClient.return_value.execute.side_effect = None
+
+    groupKwargs = {
+        'graphQLEndpoint': 'https://gitlab.com/api/graphql',
+        'graphQLHeaders': {'Authorization': 'Bearer token'},
+        'isGroup': True
+    }
+    glEntity.full_path = 'test/group'
+
+    gqlClient.return_value.execute.return_value = {'group': {}}
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    mock_result = {
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': [
+                    {
+                        'enabled': True,
+                        'yaml': '''
+                            actions:
+                              - scan: dependency_scanning
+                            rules:
+                              - type: pipeline
+                                branches: ['*']
+                        '''
+                    }
+                ]
+            }
+        }
+    }
+    gqlClient.return_value.execute.return_value = mock_result
+    run(glEntity, glObject, test, True, **groupKwargs)
+
+    mock_result = {
+        'group': {
+            'scanExecutionPolicies': {
+                'nodes': [
+                    {
+                        'enabled': True,
+                        'yaml': '''
+                            actions:
+                              - scan: dast
+                            rules:
+                              - type: pipeline
+                                branches: ['*']
+                        '''
+                    }
+                ]
+            }
+        }
+    }
+    gqlClient.return_value.execute.return_value = mock_result
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    gqlClient.return_value.execute.side_effect = \
+        TransportServerError('GraphQL Error')
+    run(glEntity, glObject, test, None, **groupKwargs)
+
+    run(glEntity, glObject, test, None, **{'isInstance': True})
 
 # -----------------------------------------------------------------------------
 
@@ -122,9 +178,17 @@
     glEntity.files.get.return_value = _projectFile
     run(glEntity, glObject, test, True, **kwargs)
 
-    kwarg = [{'isGroup': True}, {'isInstance': True}]
-    for kwargs in kwarg:
-        run(glEntity, glObject, test, None, **kwargs)
+    run(glEntity, glObject, test, None, **{'isInstance': True})
+
+    groupKwargs = {'isGroup': True}
+    glEntity.auto_devops_enabled = True
+    run(glEntity, glObject, test, True, **groupKwargs)
+
+    glEntity.auto_devops_enabled = False
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    del glEntity.auto_devops_enabled
+    run(glEntity, glObject, test, None, **groupKwargs)
 
 # -----------------------------------------------------------------------------
 
@@ -173,7 +237,15 @@
     glEntity.files.get.return_value = _projectFile
     run(glEntity, glObject, test, True, **kwargs)
 
-    run(glEntity, glObject, test, None, **{'isGroup': True})
+    groupKwargs = {'isGroup': True}
+    glEntity.auto_devops_enabled = True
+    run(glEntity, glObject, test, True, **groupKwargs)
+
+    glEntity.auto_devops_enabled = False
+    run(glEntity, glObject, test, False, **groupKwargs)
+
+    del glEntity.auto_devops_enabled
+    run(glEntity, glObject, test, None, **groupKwargs)
 
 # -----------------------------------------------------------------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitlabcis-1.17.1/gitlabcis.egg-info/PKG-INFO 
new/gitlabcis-1.18.0/gitlabcis.egg-info/PKG-INFO
--- old/gitlabcis-1.17.1/gitlabcis.egg-info/PKG-INFO    2026-03-16 
01:40:06.000000000 +0100
+++ new/gitlabcis-1.18.0/gitlabcis.egg-info/PKG-INFO    2026-03-16 
23:30:20.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: gitlabcis
-Version: 1.17.1
+Version: 1.18.0
 Summary: An automated tool that assesses the GitLab CIS benchmarks against a 
project.
 Author-email: Nate Rosandich <[email protected]>, Neil McDonald 
<[email protected]>, Mitra JozeNazemian 
<[email protected]>
 License: MIT License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitlabcis-1.17.1/pyproject.toml 
new/gitlabcis-1.18.0/pyproject.toml
--- old/gitlabcis-1.17.1/pyproject.toml 2026-03-16 01:39:57.000000000 +0100
+++ new/gitlabcis-1.18.0/pyproject.toml 2026-03-16 23:30:10.000000000 +0100
@@ -12,7 +12,7 @@
 
 [project]
 name = "gitlabcis"
-version = "1.17.1"
+version = "1.18.0"
 requires-python = ">=3.10"
 description = "An automated tool that assesses the GitLab CIS benchmarks 
against a project."
 authors = [

Reply via email to