python-gitlab 5.2.0__tar.gz → 5.3.1__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.
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/CHANGELOG.md +41 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/PKG-INFO +1 -1
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/protected_container_repositories.rst +7 -7
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/_version.py +1 -1
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/client.py +1 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/__init__.py +1 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/projects.py +5 -1
- python_gitlab-5.3.1/gitlab/v4/objects/registry_protection_repository_rules.py +35 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/PKG-INFO +1 -1
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/SOURCES.txt +1 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements-docs.txt +1 -1
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_registry.py +2 -2
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/.env +1 -1
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_registry_protection_rules.py +10 -10
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/AUTHORS +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/COPYING +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/MANIFEST.in +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/README.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/Makefile +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/_static/js/gitter.js +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api/gitlab.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api/gitlab.v4.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api-levels.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api-objects.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api-usage-advanced.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api-usage-graphql.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/api-usage.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/changelog.md +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/cli-examples.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/cli-objects.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/cli-usage.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/conf.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/ext/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/ext/docstrings.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/ext/manager_tmpl.j2 +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/faq.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/access_requests.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/appearance.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/applications.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/badges.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/boards.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/branches.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/bulk_imports.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/ci_lint.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/cluster_agents.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/clusters.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/commits.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/deploy_keys.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/deploy_tokens.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/deployments.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/discussions.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/draft_notes.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/emojis.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/environments.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/epics.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/events.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/features.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/geo_nodes.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/group_access_tokens.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/groups.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/invitations.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/issues.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/iterations.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/job_token_scope.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/keys.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/labels.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/merge_request_approvals.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/merge_requests.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/merge_trains.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/messages.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/milestones.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/namespaces.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/notes.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/notifications.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/packages.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/pagesdomains.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/personal_access_tokens.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/pipelines_and_jobs.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/project_access_tokens.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/projects.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/protected_branches.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/protected_environments.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/protected_packages.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/releases.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/remote_mirrors.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/repositories.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/repository_tags.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/resource_groups.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/runners.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/search.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/secure_files.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/settings.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/sidekiq.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/snippets.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/statistics.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/system_hooks.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/templates.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/todos.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/topics.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/users.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/variables.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/wikis.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/index.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/make.bat +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/release-notes.rst +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/__main__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/_backends/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/_backends/graphql.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/_backends/protocol.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/_backends/requests_backend.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/base.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/cli.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/config.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/const.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/exceptions.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/mixins.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/py.typed +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/types.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/utils.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/cli.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/access_requests.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/appearance.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/applications.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/artifacts.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/audit_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/award_emojis.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/badges.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/boards.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/branches.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/broadcast_messages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/bulk_imports.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/ci_lint.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/cluster_agents.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/clusters.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/commits.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/container_registry.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/custom_attributes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/deploy_keys.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/deploy_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/deployments.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/discussions.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/draft_notes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/environments.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/epics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/export_import.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/features.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/files.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/geo_nodes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/group_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/groups.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/hooks.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/integrations.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/invitations.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/issues.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/iterations.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/job_token_scope.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/jobs.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/keys.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/labels.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/ldap.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/members.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/merge_request_approvals.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/merge_requests.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/merge_trains.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/milestones.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/namespaces.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/notes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/notification_settings.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/package_protection_rules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/packages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/pages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/personal_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/pipelines.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/project_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/push_rules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/registry_protection_rules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/releases.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/repositories.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/resource_groups.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/reviewers.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/runners.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/secure_files.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/service_accounts.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/settings.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/sidekiq.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/snippets.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/statistics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/tags.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/templates.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/todos.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/topics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/triggers.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/users.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/variables.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/gitlab/v4/objects/wikis.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/pyproject.toml +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/dependency_links.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/entry_points.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/requires.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/python_gitlab.egg-info/top_level.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements-docker.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements-lint.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements-precommit.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements-test.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/requirements.txt +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/setup.cfg +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/conftest.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_boards.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_branches.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_bulk_imports.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_current_user.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_deploy_keys.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_deploy_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_epics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_gitlab.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_graphql.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_groups.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_import_export.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_issues.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_keys.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_lazy_objects.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_merge_requests.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_packages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_project_job_token_scope.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_projects.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_push_rules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_releases.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_repository.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_services.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_snippets.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_statistics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_topics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_users.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_variables.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/api/test_wikis.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/conftest.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_artifacts.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_packages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_projects.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_repository.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_resource_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_users.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_v4.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/cli/test_cli_variables.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/conftest.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/ee-test.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/avatar.png +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/create_license.rb +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/docker-compose.yml +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/docker.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/invalid_auth.cfg +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/invalid_version.cfg +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/fixtures/set_token.rb +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/functional/helpers.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/install/test_install.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/smoke/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/smoke/test_dists.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/_backends/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/_backends/test_requests_backend.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/base/test_rest_manager.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/base/test_rest_object.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/conftest.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/helpers.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/meta/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/meta/test_ensure_type_hints.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/meta/test_imports.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/meta/test_mro.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/mixins/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/mixins/test_meta_mixins.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/mixins/test_mixin_methods.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/mixins/test_object_mixins_attributes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/__init__.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/conftest.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_appearance.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_applications.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_audit_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_badges.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_bridges.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_bulk_imports.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_ci_lint.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_cluster_agents.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_commits.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_deploy_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_deployments.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_draft_notes.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_environments.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_group_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_groups.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_hooks.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_invitations.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_issues.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_iterations.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_job_artifacts.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_job_token_scope.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_jobs.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_keys.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_members.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_merge_request_pipelines.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_merge_requests.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_merge_trains.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_package_protection_rules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_packages.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_personal_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_pipeline_schedules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_pipelines.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_project_access_tokens.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_project_import_export.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_project_merge_request_approvals.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_project_statistics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_projects.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_registry_repositories.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_releases.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_remote_mirrors.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_repositories.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_resource_groups.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_resource_iteration_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_resource_label_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_resource_milestone_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_resource_state_events.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_runners.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_secure_files.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_services.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_snippets.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_statistics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_submodules.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_templates.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_todos.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_topics.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_users.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_variables.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_cli.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_config.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_exceptions.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_gitlab.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_gitlab_auth.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_gitlab_http_methods.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_graphql.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_retry.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_types.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/test_utils.py +0 -0
- {python_gitlab-5.2.0 → python_gitlab-5.3.1}/tox.ini +0 -0
@@ -1,6 +1,47 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
3
|
|
4
|
+
## v5.3.1 (2025-01-07)
|
5
|
+
|
6
|
+
### Bug Fixes
|
7
|
+
|
8
|
+
- **api**: Allow configuration of keep_base_url from file
|
9
|
+
([`f4f7d7a`](https://github.com/python-gitlab/python-gitlab/commit/f4f7d7a63716f072eb45db2c7f590db0435350f0))
|
10
|
+
|
11
|
+
- **registry-protection**: Fix api url
|
12
|
+
([`8c1aaa3`](https://github.com/python-gitlab/python-gitlab/commit/8c1aaa3f6a797caf7bd79a7da083eae56c6250ff))
|
13
|
+
|
14
|
+
See:
|
15
|
+
https://docs.gitlab.com/ee/api/container_repository_protection_rules.html#list-container-repository-protection-rules
|
16
|
+
|
17
|
+
### Chores
|
18
|
+
|
19
|
+
- Bump to 5.3.1
|
20
|
+
([`912e1a0`](https://github.com/python-gitlab/python-gitlab/commit/912e1a0620a96c56081ffec284c2cac871cb7626))
|
21
|
+
|
22
|
+
- **deps**: Update dependency jinja2 to v3.1.5 [security]
|
23
|
+
([`01d4194`](https://github.com/python-gitlab/python-gitlab/commit/01d41946cbb1a4e5f29752eac89239d635c2ec6f))
|
24
|
+
|
25
|
+
|
26
|
+
## v5.3.0 (2024-12-28)
|
27
|
+
|
28
|
+
### Chores
|
29
|
+
|
30
|
+
- **deps**: Update gitlab/gitlab-ee docker tag to v17.7.0-ee.0
|
31
|
+
([#3070](https://github.com/python-gitlab/python-gitlab/pull/3070),
|
32
|
+
[`62b7eb7`](https://github.com/python-gitlab/python-gitlab/commit/62b7eb7ca0adcb26912f9c0561de5c513b6ede6d))
|
33
|
+
|
34
|
+
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
|
35
|
+
|
36
|
+
- **renovate**: Update httpx and respx again
|
37
|
+
([`aa07449`](https://github.com/python-gitlab/python-gitlab/commit/aa074496bdc4390a3629f1b0964d9846fe08ad92))
|
38
|
+
|
39
|
+
### Features
|
40
|
+
|
41
|
+
- **api**: Support the new registry protection rule endpoint
|
42
|
+
([`40af1c8`](https://github.com/python-gitlab/python-gitlab/commit/40af1c8a14814cb0034dfeaaa33d8c38504fe34e))
|
43
|
+
|
44
|
+
|
4
45
|
## v5.2.0 (2024-12-17)
|
5
46
|
|
6
47
|
### Chores
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: python-gitlab
|
3
|
-
Version: 5.
|
3
|
+
Version: 5.3.1
|
4
4
|
Summary: The python wrapper for the GitLab REST and GraphQL APIs.
|
5
5
|
Author-email: Gauvain Pocentek <gauvain@pocentek.net>
|
6
6
|
Maintainer-email: John Villalovos <john@sodarock.com>, Max Wittig <max.wittig@siemens.com>, Nejc Habjan <nejc.habjan@siemens.com>, Roger Meier <r.meier@siemens.com>
|
{python_gitlab-5.2.0 → python_gitlab-5.3.1}/docs/gl_objects/protected_container_repositories.rst
RENAMED
@@ -9,22 +9,22 @@ References
|
|
9
9
|
|
10
10
|
* v4 API:
|
11
11
|
|
12
|
-
+ :class:`gitlab.v4.objects.
|
13
|
-
+ :class:`gitlab.v4.objects.
|
14
|
-
+ :attr:`gitlab.v4.objects.Project.
|
12
|
+
+ :class:`gitlab.v4.objects.ProjectRegistryRepositoryProtectionRuleRule`
|
13
|
+
+ :class:`gitlab.v4.objects.ProjectRegistryRepositoryProtectionRuleRuleManager`
|
14
|
+
+ :attr:`gitlab.v4.objects.Project.registry_protection_repository_rules`
|
15
15
|
|
16
|
-
* GitLab API: https://docs.gitlab.com/ee/api/
|
16
|
+
* GitLab API: https://docs.gitlab.com/ee/api/container_repository_protection_rules.html
|
17
17
|
|
18
18
|
Examples
|
19
19
|
--------
|
20
20
|
|
21
21
|
List the container registry protection rules for a project::
|
22
22
|
|
23
|
-
registry_rules = project.
|
23
|
+
registry_rules = project.registry_protection_repository_rules.list()
|
24
24
|
|
25
25
|
Create a container registry protection rule::
|
26
26
|
|
27
|
-
registry_rule = project.
|
27
|
+
registry_rule = project.registry_protection_repository_rules.create(
|
28
28
|
{
|
29
29
|
'repository_path_pattern': 'test/image',
|
30
30
|
'minimum_access_level_for_push': 'maintainer',
|
@@ -39,6 +39,6 @@ Update a container registry protection rule::
|
|
39
39
|
|
40
40
|
Delete a container registry protection rule::
|
41
41
|
|
42
|
-
registry_rule = project.
|
42
|
+
registry_rule = project.registry_protection_repository_rules.delete(registry_rule.id)
|
43
43
|
# or
|
44
44
|
registry_rule.delete()
|
@@ -55,6 +55,7 @@ from .pipelines import *
|
|
55
55
|
from .project_access_tokens import *
|
56
56
|
from .projects import *
|
57
57
|
from .push_rules import *
|
58
|
+
from .registry_protection_repository_rules import *
|
58
59
|
from .registry_protection_rules import *
|
59
60
|
from .releases import *
|
60
61
|
from .repositories import *
|
@@ -86,7 +86,10 @@ from .pipelines import ( # noqa: F401
|
|
86
86
|
)
|
87
87
|
from .project_access_tokens import ProjectAccessTokenManager # noqa: F401
|
88
88
|
from .push_rules import ProjectPushRulesManager # noqa: F401
|
89
|
-
from .
|
89
|
+
from .registry_protection_repository_rules import ( # noqa: F401
|
90
|
+
ProjectRegistryRepositoryProtectionRuleManager,
|
91
|
+
)
|
92
|
+
from .registry_protection_rules import ( # noqa: F401; deprecated
|
90
93
|
ProjectRegistryProtectionRuleManager,
|
91
94
|
)
|
92
95
|
from .releases import ProjectReleaseManager # noqa: F401
|
@@ -239,6 +242,7 @@ class Project(
|
|
239
242
|
protectedtags: ProjectProtectedTagManager
|
240
243
|
pushrules: ProjectPushRulesManager
|
241
244
|
registry_protection_rules: ProjectRegistryProtectionRuleManager
|
245
|
+
registry_protection_repository_rules: ProjectRegistryRepositoryProtectionRuleManager
|
242
246
|
releases: ProjectReleaseManager
|
243
247
|
resource_groups: ProjectResourceGroupManager
|
244
248
|
remote_mirrors: "ProjectRemoteMirrorManager"
|
@@ -0,0 +1,35 @@
|
|
1
|
+
from gitlab.base import RESTManager, RESTObject
|
2
|
+
from gitlab.mixins import CreateMixin, ListMixin, SaveMixin, UpdateMethod, UpdateMixin
|
3
|
+
from gitlab.types import RequiredOptional
|
4
|
+
|
5
|
+
__all__ = [
|
6
|
+
"ProjectRegistryRepositoryProtectionRule",
|
7
|
+
"ProjectRegistryRepositoryProtectionRuleManager",
|
8
|
+
]
|
9
|
+
|
10
|
+
|
11
|
+
class ProjectRegistryRepositoryProtectionRule(SaveMixin, RESTObject):
|
12
|
+
_repr_attr = "repository_path_pattern"
|
13
|
+
|
14
|
+
|
15
|
+
class ProjectRegistryRepositoryProtectionRuleManager(
|
16
|
+
ListMixin, CreateMixin, UpdateMixin, RESTManager
|
17
|
+
):
|
18
|
+
_path = "/projects/{project_id}/registry/protection/repository/rules"
|
19
|
+
_obj_cls = ProjectRegistryRepositoryProtectionRule
|
20
|
+
_from_parent_attrs = {"project_id": "id"}
|
21
|
+
_create_attrs = RequiredOptional(
|
22
|
+
required=("repository_path_pattern",),
|
23
|
+
optional=(
|
24
|
+
"minimum_access_level_for_push",
|
25
|
+
"minimum_access_level_for_delete",
|
26
|
+
),
|
27
|
+
)
|
28
|
+
_update_attrs = RequiredOptional(
|
29
|
+
optional=(
|
30
|
+
"repository_path_pattern",
|
31
|
+
"minimum_access_level_for_push",
|
32
|
+
"minimum_access_level_for_delete",
|
33
|
+
),
|
34
|
+
)
|
35
|
+
_update_method = UpdateMethod.PATCH
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: python-gitlab
|
3
|
-
Version: 5.
|
3
|
+
Version: 5.3.1
|
4
4
|
Summary: The python wrapper for the GitLab REST and GraphQL APIs.
|
5
5
|
Author-email: Gauvain Pocentek <gauvain@pocentek.net>
|
6
6
|
Maintainer-email: John Villalovos <john@sodarock.com>, Max Wittig <max.wittig@siemens.com>, Nejc Habjan <nejc.habjan@siemens.com>, Roger Meier <r.meier@siemens.com>
|
@@ -177,6 +177,7 @@ gitlab/v4/objects/pipelines.py
|
|
177
177
|
gitlab/v4/objects/project_access_tokens.py
|
178
178
|
gitlab/v4/objects/projects.py
|
179
179
|
gitlab/v4/objects/push_rules.py
|
180
|
+
gitlab/v4/objects/registry_protection_repository_rules.py
|
180
181
|
gitlab/v4/objects/registry_protection_rules.py
|
181
182
|
gitlab/v4/objects/releases.py
|
182
183
|
gitlab/v4/objects/repositories.py
|
@@ -11,10 +11,10 @@ def protected_registry_feature(gl: Gitlab):
|
|
11
11
|
|
12
12
|
@pytest.mark.skip(reason="Not released yet")
|
13
13
|
def test_project_protected_registry(project: Project):
|
14
|
-
rules = project.
|
14
|
+
rules = project.registry_protection_repository_rules.list()
|
15
15
|
assert isinstance(rules, list)
|
16
16
|
|
17
|
-
protected_registry = project.
|
17
|
+
protected_registry = project.registry_protection_repository_rules.create(
|
18
18
|
{
|
19
19
|
"repository_path_pattern": "test/image",
|
20
20
|
"minimum_access_level_for_push": "maintainer",
|
@@ -1,2 +1,2 @@
|
|
1
1
|
GITLAB_IMAGE=gitlab/gitlab-ee
|
2
|
-
GITLAB_TAG=17.
|
2
|
+
GITLAB_TAG=17.7.0-ee.0
|
{python_gitlab-5.2.0 → python_gitlab-5.3.1}/tests/unit/objects/test_registry_protection_rules.py
RENAMED
@@ -1,11 +1,11 @@
|
|
1
1
|
"""
|
2
|
-
GitLab API: https://docs.gitlab.com/ee/api/
|
2
|
+
GitLab API: https://docs.gitlab.com/ee/api/container_repository_protection_rules.html
|
3
3
|
"""
|
4
4
|
|
5
5
|
import pytest
|
6
6
|
import responses
|
7
7
|
|
8
|
-
from gitlab.v4.objects import
|
8
|
+
from gitlab.v4.objects import ProjectRegistryRepositoryProtectionRule
|
9
9
|
|
10
10
|
protected_registry_content = {
|
11
11
|
"id": 1,
|
@@ -21,7 +21,7 @@ def resp_list_protected_registries():
|
|
21
21
|
with responses.RequestsMock() as rsps:
|
22
22
|
rsps.add(
|
23
23
|
method=responses.GET,
|
24
|
-
url="http://localhost/api/v4/projects/1/registry/protection/rules",
|
24
|
+
url="http://localhost/api/v4/projects/1/registry/protection/repository/rules",
|
25
25
|
json=[protected_registry_content],
|
26
26
|
content_type="application/json",
|
27
27
|
status=200,
|
@@ -34,7 +34,7 @@ def resp_create_protected_registry():
|
|
34
34
|
with responses.RequestsMock() as rsps:
|
35
35
|
rsps.add(
|
36
36
|
method=responses.POST,
|
37
|
-
url="http://localhost/api/v4/projects/1/registry/protection/rules",
|
37
|
+
url="http://localhost/api/v4/projects/1/registry/protection/repository/rules",
|
38
38
|
json=protected_registry_content,
|
39
39
|
content_type="application/json",
|
40
40
|
status=201,
|
@@ -50,7 +50,7 @@ def resp_update_protected_registry():
|
|
50
50
|
with responses.RequestsMock() as rsps:
|
51
51
|
rsps.add(
|
52
52
|
method=responses.PATCH,
|
53
|
-
url="http://localhost/api/v4/projects/1/registry/protection/rules/1",
|
53
|
+
url="http://localhost/api/v4/projects/1/registry/protection/repository/rules/1",
|
54
54
|
json=updated_content,
|
55
55
|
content_type="application/json",
|
56
56
|
status=200,
|
@@ -59,24 +59,24 @@ def resp_update_protected_registry():
|
|
59
59
|
|
60
60
|
|
61
61
|
def test_list_project_protected_registries(project, resp_list_protected_registries):
|
62
|
-
protected_registry = project.
|
63
|
-
assert isinstance(protected_registry,
|
62
|
+
protected_registry = project.registry_protection_repository_rules.list()[0]
|
63
|
+
assert isinstance(protected_registry, ProjectRegistryRepositoryProtectionRule)
|
64
64
|
assert protected_registry.repository_path_pattern == "test/image"
|
65
65
|
|
66
66
|
|
67
67
|
def test_create_project_protected_registry(project, resp_create_protected_registry):
|
68
|
-
protected_registry = project.
|
68
|
+
protected_registry = project.registry_protection_repository_rules.create(
|
69
69
|
{
|
70
70
|
"repository_path_pattern": "test/image",
|
71
71
|
"minimum_access_level_for_push": "maintainer",
|
72
72
|
}
|
73
73
|
)
|
74
|
-
assert isinstance(protected_registry,
|
74
|
+
assert isinstance(protected_registry, ProjectRegistryRepositoryProtectionRule)
|
75
75
|
assert protected_registry.repository_path_pattern == "test/image"
|
76
76
|
|
77
77
|
|
78
78
|
def test_update_project_protected_registry(project, resp_update_protected_registry):
|
79
|
-
updated = project.
|
79
|
+
updated = project.registry_protection_repository_rules.update(
|
80
80
|
1, {"repository_path_pattern": "abc*"}
|
81
81
|
)
|
82
82
|
assert updated["repository_path_pattern"] == "abc*"
|
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
|
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
|
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
|