gitlab-projects-settings 5.4.0__tar.gz → 6.0.0__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.
Files changed (80) hide show
  1. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.gitignore +1 -0
  2. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.gitlab-ci.yml +25 -3
  3. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/CHANGELOG.md +49 -0
  4. {gitlab_projects_settings-5.4.0/gitlab_projects_settings.egg-info → gitlab_projects_settings-6.0.0}/PKG-INFO +63 -51
  5. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/README.md +62 -50
  6. gitlab_projects_settings-5.4.0/docs/.pages → gitlab_projects_settings-6.0.0/docs/.pages.in +1 -1
  7. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/assets/stylesheets/custom.css +1 -1
  8. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/assets/stylesheets/pdf.scss +105 -11
  9. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/prepare.sh +6 -1
  10. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/templates/covers/back.html.j2 +0 -1
  11. gitlab_projects_settings-6.0.0/docs/templates/covers/front.html.j2 +29 -0
  12. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0/gitlab_projects_settings.egg-info}/PKG-INFO +63 -51
  13. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/gitlab_projects_settings.egg-info/SOURCES.txt +1 -1
  14. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/mkdocs.yml +4 -6
  15. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/cli/entrypoint.py +87 -20
  16. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/cli/main.py +44 -2
  17. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/features/gitlab.py +147 -6
  18. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/types/gitlab.py +42 -0
  19. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/versions/test.sh +2 -1
  20. gitlab_projects_settings-5.4.0/docs/templates/covers/front.html.j2 +0 -27
  21. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.coveragerc +0 -0
  22. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.cz.yaml +0 -0
  23. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.gitattributes +0 -0
  24. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.markdownlint.json +0 -0
  25. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.pre-commit-config.yaml +0 -0
  26. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.style.yapf +0 -0
  27. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.vscode/extensions.json +0 -0
  28. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/.vscode/settings.json +0 -0
  29. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/LICENSE +0 -0
  30. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/config/cliff.toml +0 -0
  31. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/build/Dockerfile +0 -0
  32. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/codestyle/Dockerfile +0 -0
  33. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/deploy/Dockerfile +0 -0
  34. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/pages/Dockerfile +0 -0
  35. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/rehost/images.txt +0 -0
  36. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/test-coverage-linux/Dockerfile +0 -0
  37. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/test-coverage-windows/Dockerfile +0 -0
  38. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/containers/test-linux/Dockerfile +0 -0
  39. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/assets/images/favicon.png +0 -0
  40. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/assets/scripts/mkdocs-exporter.js +0 -0
  41. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/docs/robots.txt +0 -0
  42. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/gitlab_projects_settings.egg-info/dependency_links.txt +0 -0
  43. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/gitlab_projects_settings.egg-info/entry_points.txt +0 -0
  44. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/gitlab_projects_settings.egg-info/requires.txt +0 -0
  45. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/gitlab_projects_settings.egg-info/top_level.txt +0 -0
  46. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/mypy.ini +0 -0
  47. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/build.txt +0 -0
  48. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/coverage.txt +0 -0
  49. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/deploy.txt +0 -0
  50. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/pages.txt +0 -0
  51. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/quality.txt +0 -0
  52. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/runtime.txt +0 -0
  53. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/requirements/tests.txt +0 -0
  54. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/setup.cfg +0 -0
  55. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/setup.py +0 -0
  56. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/sonar-project.properties +0 -0
  57. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/__init__.py +0 -0
  58. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/__main__.py +0 -0
  59. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/cli/__init__.py +0 -0
  60. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/features/__init__.py +0 -0
  61. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/package/__init__.py +0 -0
  62. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/package/bundle.py +0 -0
  63. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/package/settings.py +0 -0
  64. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/package/updates.py +0 -0
  65. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/package/version.py +0 -0
  66. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/prints/__init__.py +0 -0
  67. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/prints/boxes.py +0 -0
  68. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/prints/colors.py +0 -0
  69. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/prints/themes.py +0 -0
  70. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/system/__init__.py +0 -0
  71. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/system/platform.py +0 -0
  72. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/types/__init__.py +0 -0
  73. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/types/environments.py +0 -0
  74. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/types/namespaces.py +0 -0
  75. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/src/types/strings.py +0 -0
  76. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/arguments/test.sh +0 -0
  77. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/colors/test.sh +0 -0
  78. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/macos/test.sh +0 -0
  79. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/settings/test.sh +0 -0
  80. {gitlab_projects_settings-5.4.0 → gitlab_projects_settings-6.0.0}/tests/windows/test.sh +0 -0
@@ -14,6 +14,7 @@ coverage-reports/
14
14
  dist/
15
15
 
16
16
  # Documentation intermediates
17
+ /docs/.pages
17
18
  /docs/.serve.pid
18
19
  /docs/about
19
20
  /docs/assets/stylesheets/variables.scss
@@ -1,5 +1,5 @@
1
1
  include:
2
- - component: gitlab.com/RadianDevCore/tools/pre-commit-crocodile/commits@3.0.0
2
+ - component: gitlab.com/RadianDevCore/tools/pre-commit-crocodile/commits@4.0.0
3
3
  inputs:
4
4
  stage: prepare
5
5
 
@@ -19,6 +19,7 @@ variables:
19
19
 
20
20
  .local:
21
21
  engine: docker,auto
22
+ no_regex: true
22
23
  real_paths: true
23
24
  sockets: true
24
25
  version: 11.0
@@ -66,7 +67,7 @@ changelog:
66
67
  sed -i "s#raw/[^/]*/docs#raw/${tag}/docs#g" ./README.md
67
68
  git add -v ./CHANGELOG.md ./README.md
68
69
  echo ' '
69
- git commit -m "docs(changelog): regenerate release tag changes history" -s
70
+ git commit -m "docs(changelog): release version ${tag} and refresh changes history" -s
70
71
  echo ' '
71
72
  # Create release tag
72
73
  - git tag -f -m "${tag}" "${tag}"
@@ -851,12 +852,32 @@ pages:
851
852
  variables:
852
853
  CI_LOCAL_NETWORK: 'host'
853
854
  MKDOCS_EXPORTER_PDF_ENABLED: 'true'
855
+ MKDOCS_EXPORTER_PDF_OUTPUT: 'gitlab-projects-settings'
854
856
  script:
855
857
  # Fetch all tags
856
858
  - |
857
859
  if [ -z "${CI_LOCAL:-}" ]; then
858
860
  git fetch --tags --unshallow || true
859
861
  fi
862
+ # Set PDF output version
863
+ - export MKDOCS_EXPORTER_PDF_OUTPUT="${MKDOCS_EXPORTER_PDF_OUTPUT%.pdf}-$(git describe --abbrev=7 --always --tags).pdf"
864
+ # Run locally without PDF
865
+ - |
866
+ if [ ! -z "${CI_LOCAL:-}" ] && [ ! "${CI_JOB_NAME:-}" = 'pdf' ]; then
867
+ export MKDOCS_EXPORTER_PDF_ENABLED='false'
868
+ fi
869
+ # Validate network interfaces
870
+ - |
871
+ if [ ! -z "${CI_LOCAL:-}" ] && hostname -I | tr ' ' '\n' | grep '.' | wc -l | grep -q '^0$\|^1$'; then
872
+ set +x
873
+ echo ' '
874
+ echo -n ' [INFO] Network addresses: '
875
+ hostname -I
876
+ echo ' '
877
+ echo ' [ERROR] Incompatible local CI version detected or missing host network interfaces...'
878
+ echo ' '
879
+ exit 1
880
+ fi
860
881
  # Prepare documentation
861
882
  - |
862
883
  if [ ! -z "${CI_LOCAL:-}" ]; then
@@ -890,6 +911,7 @@ pages:
890
911
  changes: !reference [.pages, rules, changes]
891
912
  - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_PROTECTED
892
913
  changes: !reference [.pages, rules, changes]
914
+ allow_failure: true
893
915
  when: manual
894
916
 
895
917
  pdf:
@@ -899,7 +921,7 @@ pdf:
899
921
  artifacts:
900
922
  expire_in: 1 hour
901
923
  paths:
902
- - public/documentation.pdf
924
+ - public/$MKDOCS_EXPORTER_PDF_OUTPUT*.pdf
903
925
  rules:
904
926
  - if: $CI_COMMIT_TAG
905
927
  - if: $CI_COMMIT_BRANCH
@@ -1,5 +1,54 @@
1
1
  # Changelog
2
2
 
3
+ <a name="6.0.0"></a>
4
+ ## [6.0.0](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/compare/5.4.0...6.0.0) (2025-01-01)
5
+
6
+ ### ✨ Features
7
+
8
+ - **cli:** implement '--{get,set}-project-issues-boards' features ([0a88810](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/0a88810784efeb97f4f3cd1bdd22741bfb482288))
9
+ - **cli, gitlab:** implement '--set-roles-create-{projects,subgroups}' ([56f7aba](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/56f7aba1a74ac1fde1c1d5c96ecc733683a94762))
10
+ - **entrypoint:** show projects description after '# ...' ([fbd6678](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/fbd6678ce14808d0b5a7b000e9f503ccf6829d44))
11
+ - **entrypoint:** allow empty description and custom indent in 'confirm' ([03fb17c](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/03fb17c49957a5377edc572ef161a45e5df2cad1))
12
+ - **entrypoint:** use '...' quotes in 'confirm' function ([6e77117](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/6e77117320ea2949c56308039fba0682f80d56b9))
13
+
14
+ ### 🐛 Bug Fixes
15
+
16
+ - **cli:** use package name for 'Updates' checks ([06d795e](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/06d795e0e870d2992cf20f4761c230267d4978bf))
17
+ - **entrypoint:** show '# /' if no description is set ([fbf2a28](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/fbf2a2807fdd49f957da676ba16030a733be8505))
18
+ - **gitlab:** support GitLab Premium delayed project/group deletions ([0ebc2c1](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/0ebc2c1117a119366515399b95cc7c1bcde78d02))
19
+
20
+ ### 📚 Documentation
21
+
22
+ - **mkdocs:** minor '(prefers-color-scheme...)' syntax improvements ([3964c8f](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/3964c8f53df20d048e848634da08c7498fd0c1d2))
23
+ - **mkdocs:** remove 'preview.py' and 'template.svg' files exclusions ([8caccf0](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/8caccf0ca0ce828343c2c433df4eeeb2b3142553))
24
+ - **mkdocs, pages:** use 'MKDOCS_EXPORTER_PDF_OUTPUT' for PDF file ([e05833d](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/e05833d94647f9827b66eebea1c3eceacdf7b124))
25
+ - **pages:** rename PDF link title to 'Export as PDF' ([f0b2b58](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/f0b2b5804debdc4c0289dffb717d8ac8dd313c21))
26
+ - **pdf:** avoid header / footer lines on front / back pages ([84ed713](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/84ed713b6b690c4d2900634f4e97a376b04b65a4))
27
+ - **pdf:** minor stylesheets codestyle improvements ([7373bd6](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/7373bd62de55a70375bcf9f4a6d812c82bbc7280))
28
+ - **pdf:** reverse PDF front / back cover pages colors for printers ([7505256](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/7505256812186297b3f85f98a496f10730771b88))
29
+ - **prepare:** use 'mkdocs.yml' to get project name value ([837d15b](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/837d15b1f345249da3620ed7debc1ce916e634b7))
30
+ - **readme:** add missing '--' separator after '--reset-features' ([bd038df](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/bd038df4d21894a844489f5462ebd5e282566d96))
31
+ - **stylesheets:** resolve lines and arrows visibility in dark mode ([89b16f6](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/89b16f6dec671af4be1f15f749f45b283088f53c))
32
+ - **templates:** add 'Author' and 'Description' to PDF front page ([eff3014](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/eff3014e2fd7f229fcd548ddaebd180951a101ed))
33
+ - **templates:** add 'Date' detail on PDF front page ([f1042d9](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/f1042d9463ee3cc1389608ce7a2016d1e5c1eb89))
34
+ - **templates:** use Git commit SHA1 as version if no Git tag found ([37e1080](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/37e108093449c531bb579b4c057708079c4cff19))
35
+
36
+ ### 🧪 Test
37
+
38
+ - **test:** fix daily updates coverage test syntax ([0eac0ac](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/0eac0acdab4b14add861e507c214cf9178a2bca4))
39
+
40
+ ### 🚀 CI
41
+
42
+ - **gitlab-ci:** avoid PDF slow generation locally outside 'pdf' job ([77fc8e8](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/77fc8e88c8090133f10c27974037e99b075ee74e))
43
+ - **gitlab-ci:** validate host network interfaces support ([d706e44](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/d706e44166c72cbae17fb8ca989bd5a0bc93e9f5))
44
+ - **gitlab-ci:** enable '.local: no_regex' feature ([9235ece](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/9235ece9a5d326e4faa45715f79cea75a478cbd6))
45
+ - **gitlab-ci:** append Git version to PDF output file name ([6e8cd69](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/6e8cd693ec6fefe56da07e3793f839d3e1bccb00))
46
+ - **gitlab-ci:** rename PDF to 'gitlab-projects-settings' ([63344bd](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/63344bd3bf582ed9a893602e68e7f581dde46f4e))
47
+ - **gitlab-ci:** migrate to 'pre-commit-crocodile/commits@4.0.0' ([708acf7](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/708acf7a548f54790f7e4e1e83016019811b74d9))
48
+ - **gitlab-ci:** ensure 'pages' job does not block pipeline if manual ([077e41f](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/077e41f1c25e8c609df86104e2b1a1339e9f9b4e))
49
+ - **gitlab-ci:** change release title to include tag version ([51b8089](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/51b80895a57f7bc7c1429dfd27ac44c0a210633f))
50
+
51
+
3
52
  <a name="5.4.0"></a>
4
53
  ## [5.4.0](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/compare/5.3.1...5.4.0) (2024-10-28)
5
54
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gitlab-projects-settings
3
- Version: 5.4.0
3
+ Version: 6.0.0
4
4
  Summary: Configure GitLab groups and projects settings automatically
5
5
  Home-page: https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings
6
6
  Author: Adrian DC
@@ -91,7 +91,7 @@ gitlab-projects-settings --protect-tags -- 'https://gitlab.com/group'
91
91
  gitlab-projects-settings --set-avatar ./avatar.png --update-description 'https://gitlab.com/group'
92
92
 
93
93
  # Automatically detect and reset features of projects based on usage
94
- gitlab-projects-settings --reset-features 'https://gitlab.com/group/project'
94
+ gitlab-projects-settings --reset-features -- 'https://gitlab.com/group/project'
95
95
  ```
96
96
 
97
97
  <!-- prettier-ignore-end -->
@@ -109,86 +109,98 @@ usage: gitlab-projects-settings [-h] [--version] [--no-color] [--update-check] [
109
109
  [--exclude-projects] [--available-features] [--reset-features [KEEP_FEATURES]]
110
110
  [--disable-features FEATURES] [--enable-features FEATURES] [--reset-members]
111
111
  [--set-avatar FILE] [--set-description TEXT] [--update-descriptions]
112
+ [--set-roles-create-projects [ROLE]] [--set-roles-create-subgroups [ROLE]]
112
113
  [--run-housekeeping] [--prune-unreachable-objects]
113
114
  [--archive-projects | --unarchive-projects] [--delete-groups] [--delete-projects]
114
115
  [--protect-branches] [--protect-tags [LEVEL]] [--set-merge-method [METHOD]]
115
116
  [--set-merge-squash [SQUASH]] [--set-merge-pipelines [CHECK]]
116
117
  [--set-merge-skipped [CHECK]] [--set-merge-resolved [CHECK]]
117
- [--erase-jobs-artifacts | --erase-jobs-contents]
118
- [--get-group-labels | --set-group-labels JSON]
118
+ [--add-jobs-token-allowlist PATH] [--remove-jobs-token-allowlist PATH]
119
+ [--erase-jobs-artifacts | --erase-jobs-contents] [--get-project-issues-boards]
120
+ [--set-project-issues-boards JSON] [--get-group-labels | --set-group-labels JSON]
119
121
  [--get-project-labels | --set-project-labels JSON] [--]
120
122
  [url_path]
121
123
 
122
124
  gitlab-projects-settings: Configure GitLab groups and projects settings automatically
123
125
 
124
126
  internal arguments:
125
- -h, --help # Show this help message
126
- --version # Show the current version
127
- --no-color # Disable colors outputs with 'NO_COLOR=1'
128
- # (or default settings: [themes] > no_color)
129
- --update-check # Check for newer package updates
130
- --settings # Show the current settings path and contents
131
- --set GROUP KEY VAL # Set settings specific 'VAL' value to [GROUP] > KEY
132
- # or unset by using 'UNSET' as 'VAL'
127
+ -h, --help # Show this help message
128
+ --version # Show the current version
129
+ --no-color # Disable colors outputs with 'NO_COLOR=1'
130
+ # (or default settings: [themes] > no_color)
131
+ --update-check # Check for newer package updates
132
+ --settings # Show the current settings path and contents
133
+ --set GROUP KEY VAL # Set settings specific 'VAL' value to [GROUP] > KEY
134
+ # or unset by using 'UNSET' as 'VAL'
133
135
 
134
136
  credentials arguments:
135
- -c FILES, --config FILES # Python GitLab configuration files (default: PYTHON_GITLAB_CFG environment)
137
+ -c FILES, --config FILES # Python GitLab configuration files (default: PYTHON_GITLAB_CFG environment)
136
138
 
137
139
  common settings arguments:
138
- --confirm # Automatically confirm all removal and contents warnings
139
- --dry-run # Enable dry run mode to check without saving
140
- --dump # Dump Python objects of groups and projects
141
- --exclude-group # Exclude parent group settings
142
- --exclude-subgroups # Exclude children subgroups settings
143
- --exclude-projects # Exclude children projects settings
140
+ --confirm # Automatically confirm all removal and contents warnings
141
+ --dry-run # Enable dry run mode to check without saving
142
+ --dump # Dump Python objects of groups and projects
143
+ --exclude-group # Exclude parent group settings
144
+ --exclude-subgroups # Exclude children subgroups settings
145
+ --exclude-projects # Exclude children projects settings
144
146
 
145
147
  general settings arguments:
146
- --available-features # List the available GitLab project features known by the tool
147
- --reset-features [KEEP_FEATURES] # Reset features of GitLab projects based on usage
148
- # (Optionally keep features separated by ",")
149
- --disable-features FEATURES # List of features to disable separated by ","
150
- --enable-features FEATURES # List of features to enable separated by ","
151
- --reset-members # Reset members of GitLab projects and groups
152
- --set-avatar FILE # Set avatar of GitLab projects and groups
153
- --set-description TEXT # Set description of GitLab projects and groups
154
- --update-descriptions # Update description of GitLab projects and groups automatically
148
+ --available-features # List the available GitLab project features known by the tool
149
+ --reset-features [KEEP_FEATURES] # Reset features of GitLab projects based on usage
150
+ # (Optionally keep features separated by ",")
151
+ --disable-features FEATURES # List of features to disable separated by ","
152
+ --enable-features FEATURES # List of features to enable separated by ","
153
+ --reset-members # Reset members of GitLab projects and groups
154
+ --set-avatar FILE # Set avatar of GitLab projects and groups
155
+ --set-description TEXT # Set description of GitLab projects and groups
156
+ --update-descriptions # Update description of GitLab projects and groups automatically
157
+
158
+ group settings arguments:
159
+ --set-roles-create-projects [ROLE] # Set roles allowed to create projects [noone,owner,maintainer,developer,administrator] (default: developer)
160
+ --set-roles-create-subgroups [ROLE] # Set roles allowed to create subgroups [owner,maintainer] (default: maintainer)
155
161
 
156
162
  advanced settings arguments:
157
- --run-housekeeping # Run housekeeping of GitLab project or projects in groups
158
- --prune-unreachable-objects # Prune unreachable objects of GitLab project or projects in groups
159
- --archive-projects # Archive project or projects in GitLab groups
160
- --unarchive-projects # Unarchive project or projects in GitLab groups
161
- --delete-groups # Delete group or groups in GitLab groups
162
- --delete-projects # Delete project or projects in GitLab groups
163
+ --run-housekeeping # Run housekeeping of GitLab project or projects in groups
164
+ --prune-unreachable-objects # Prune unreachable objects of GitLab project or projects in groups
165
+ --archive-projects # Archive project or projects in GitLab groups
166
+ --unarchive-projects # Unarchive project or projects in GitLab groups
167
+ --delete-groups # Delete group or groups in GitLab groups
168
+ --delete-projects # Delete project or projects in GitLab groups
163
169
 
164
170
  repository settings arguments:
165
- --protect-branches # Protect branches with default master/main, develop and staging
166
- --protect-tags [LEVEL] # Protect tags at level [no-one,admins,maintainers,developers] (default: no-one)
171
+ --protect-branches # Protect branches with default master/main, develop and staging
172
+ --protect-tags [LEVEL] # Protect tags at level [no-one,admins,maintainers,developers] (default: no-one)
167
173
 
168
174
  merge requests settings arguments:
169
- --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward)
170
- --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow)
171
- --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True)
172
- --set-merge-skipped [CHECK] # Set project merge requests check for skipped pipelines (true, false, default: True)
173
- --set-merge-resolved [CHECK] # Set project merge requests check for resolved threads (true, false, default: True)
175
+ --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward)
176
+ --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow)
177
+ --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True)
178
+ --set-merge-skipped [CHECK] # Set project merge requests check for skipped pipelines (true, false, default: True)
179
+ --set-merge-resolved [CHECK] # Set project merge requests check for resolved threads (true, false, default: True)
174
180
 
175
181
  ci/cd settings arguments:
176
- --erase-jobs-artifacts # Erase all CI/CD jobs artifacts
177
- --erase-jobs-contents # Erase all CI/CD jobs artifacts and traces
182
+ --add-jobs-token-allowlist PATH # Add a group or project to CI/CD job token allowlist
183
+ --remove-jobs-token-allowlist PATH # Remove a group or project from CI/CD job token allowlist
184
+ --erase-jobs-artifacts # Erase all CI/CD jobs artifacts
185
+ --erase-jobs-contents # Erase all CI/CD jobs artifacts and traces
186
+
187
+ issues arguments:
188
+ --get-project-issues-boards # Get the GitLab project issues boards in JSON format
189
+ --set-project-issues-boards JSON # Set the GitLab project issues boards from JSON format
178
190
 
179
191
  labels arguments:
180
- --get-group-labels # Get the GitLab group labels in JSON format
181
- --set-group-labels JSON # Set the GitLab group labels from JSON format
182
- --get-project-labels # Get the GitLab project labels in JSON format
183
- --set-project-labels JSON # Set the GitLab project labels from JSON format
192
+ --get-group-labels # Get the GitLab group labels in JSON format
193
+ --set-group-labels JSON # Set the GitLab group labels from JSON format
194
+ --get-project-labels # Get the GitLab project labels in JSON format
195
+ --set-project-labels JSON # Set the GitLab project labels from JSON format
184
196
 
185
197
  positional arguments:
186
- -- # Positional arguments separator (recommended)
187
- url_path # GitLab group or project path URL
198
+ -- # Positional arguments separator (recommended)
199
+ url_path # GitLab group or project path URL
188
200
 
189
201
  environment variables:
190
- GITLAB_TOKEN # GitLab API token environment variable
191
- CI_JOB_TOKEN # GitLab CI job token environment variable (CI only)
202
+ GITLAB_TOKEN # GitLab API token environment variable
203
+ CI_JOB_TOKEN # GitLab CI job token environment variable (CI only)
192
204
  ```
193
205
 
194
206
  <!-- readme-help-stop -->
@@ -55,7 +55,7 @@ gitlab-projects-settings --protect-tags -- 'https://gitlab.com/group'
55
55
  gitlab-projects-settings --set-avatar ./avatar.png --update-description 'https://gitlab.com/group'
56
56
 
57
57
  # Automatically detect and reset features of projects based on usage
58
- gitlab-projects-settings --reset-features 'https://gitlab.com/group/project'
58
+ gitlab-projects-settings --reset-features -- 'https://gitlab.com/group/project'
59
59
  ```
60
60
 
61
61
  <!-- prettier-ignore-end -->
@@ -73,86 +73,98 @@ usage: gitlab-projects-settings [-h] [--version] [--no-color] [--update-check] [
73
73
  [--exclude-projects] [--available-features] [--reset-features [KEEP_FEATURES]]
74
74
  [--disable-features FEATURES] [--enable-features FEATURES] [--reset-members]
75
75
  [--set-avatar FILE] [--set-description TEXT] [--update-descriptions]
76
+ [--set-roles-create-projects [ROLE]] [--set-roles-create-subgroups [ROLE]]
76
77
  [--run-housekeeping] [--prune-unreachable-objects]
77
78
  [--archive-projects | --unarchive-projects] [--delete-groups] [--delete-projects]
78
79
  [--protect-branches] [--protect-tags [LEVEL]] [--set-merge-method [METHOD]]
79
80
  [--set-merge-squash [SQUASH]] [--set-merge-pipelines [CHECK]]
80
81
  [--set-merge-skipped [CHECK]] [--set-merge-resolved [CHECK]]
81
- [--erase-jobs-artifacts | --erase-jobs-contents]
82
- [--get-group-labels | --set-group-labels JSON]
82
+ [--add-jobs-token-allowlist PATH] [--remove-jobs-token-allowlist PATH]
83
+ [--erase-jobs-artifacts | --erase-jobs-contents] [--get-project-issues-boards]
84
+ [--set-project-issues-boards JSON] [--get-group-labels | --set-group-labels JSON]
83
85
  [--get-project-labels | --set-project-labels JSON] [--]
84
86
  [url_path]
85
87
 
86
88
  gitlab-projects-settings: Configure GitLab groups and projects settings automatically
87
89
 
88
90
  internal arguments:
89
- -h, --help # Show this help message
90
- --version # Show the current version
91
- --no-color # Disable colors outputs with 'NO_COLOR=1'
92
- # (or default settings: [themes] > no_color)
93
- --update-check # Check for newer package updates
94
- --settings # Show the current settings path and contents
95
- --set GROUP KEY VAL # Set settings specific 'VAL' value to [GROUP] > KEY
96
- # or unset by using 'UNSET' as 'VAL'
91
+ -h, --help # Show this help message
92
+ --version # Show the current version
93
+ --no-color # Disable colors outputs with 'NO_COLOR=1'
94
+ # (or default settings: [themes] > no_color)
95
+ --update-check # Check for newer package updates
96
+ --settings # Show the current settings path and contents
97
+ --set GROUP KEY VAL # Set settings specific 'VAL' value to [GROUP] > KEY
98
+ # or unset by using 'UNSET' as 'VAL'
97
99
 
98
100
  credentials arguments:
99
- -c FILES, --config FILES # Python GitLab configuration files (default: PYTHON_GITLAB_CFG environment)
101
+ -c FILES, --config FILES # Python GitLab configuration files (default: PYTHON_GITLAB_CFG environment)
100
102
 
101
103
  common settings arguments:
102
- --confirm # Automatically confirm all removal and contents warnings
103
- --dry-run # Enable dry run mode to check without saving
104
- --dump # Dump Python objects of groups and projects
105
- --exclude-group # Exclude parent group settings
106
- --exclude-subgroups # Exclude children subgroups settings
107
- --exclude-projects # Exclude children projects settings
104
+ --confirm # Automatically confirm all removal and contents warnings
105
+ --dry-run # Enable dry run mode to check without saving
106
+ --dump # Dump Python objects of groups and projects
107
+ --exclude-group # Exclude parent group settings
108
+ --exclude-subgroups # Exclude children subgroups settings
109
+ --exclude-projects # Exclude children projects settings
108
110
 
109
111
  general settings arguments:
110
- --available-features # List the available GitLab project features known by the tool
111
- --reset-features [KEEP_FEATURES] # Reset features of GitLab projects based on usage
112
- # (Optionally keep features separated by ",")
113
- --disable-features FEATURES # List of features to disable separated by ","
114
- --enable-features FEATURES # List of features to enable separated by ","
115
- --reset-members # Reset members of GitLab projects and groups
116
- --set-avatar FILE # Set avatar of GitLab projects and groups
117
- --set-description TEXT # Set description of GitLab projects and groups
118
- --update-descriptions # Update description of GitLab projects and groups automatically
112
+ --available-features # List the available GitLab project features known by the tool
113
+ --reset-features [KEEP_FEATURES] # Reset features of GitLab projects based on usage
114
+ # (Optionally keep features separated by ",")
115
+ --disable-features FEATURES # List of features to disable separated by ","
116
+ --enable-features FEATURES # List of features to enable separated by ","
117
+ --reset-members # Reset members of GitLab projects and groups
118
+ --set-avatar FILE # Set avatar of GitLab projects and groups
119
+ --set-description TEXT # Set description of GitLab projects and groups
120
+ --update-descriptions # Update description of GitLab projects and groups automatically
121
+
122
+ group settings arguments:
123
+ --set-roles-create-projects [ROLE] # Set roles allowed to create projects [noone,owner,maintainer,developer,administrator] (default: developer)
124
+ --set-roles-create-subgroups [ROLE] # Set roles allowed to create subgroups [owner,maintainer] (default: maintainer)
119
125
 
120
126
  advanced settings arguments:
121
- --run-housekeeping # Run housekeeping of GitLab project or projects in groups
122
- --prune-unreachable-objects # Prune unreachable objects of GitLab project or projects in groups
123
- --archive-projects # Archive project or projects in GitLab groups
124
- --unarchive-projects # Unarchive project or projects in GitLab groups
125
- --delete-groups # Delete group or groups in GitLab groups
126
- --delete-projects # Delete project or projects in GitLab groups
127
+ --run-housekeeping # Run housekeeping of GitLab project or projects in groups
128
+ --prune-unreachable-objects # Prune unreachable objects of GitLab project or projects in groups
129
+ --archive-projects # Archive project or projects in GitLab groups
130
+ --unarchive-projects # Unarchive project or projects in GitLab groups
131
+ --delete-groups # Delete group or groups in GitLab groups
132
+ --delete-projects # Delete project or projects in GitLab groups
127
133
 
128
134
  repository settings arguments:
129
- --protect-branches # Protect branches with default master/main, develop and staging
130
- --protect-tags [LEVEL] # Protect tags at level [no-one,admins,maintainers,developers] (default: no-one)
135
+ --protect-branches # Protect branches with default master/main, develop and staging
136
+ --protect-tags [LEVEL] # Protect tags at level [no-one,admins,maintainers,developers] (default: no-one)
131
137
 
132
138
  merge requests settings arguments:
133
- --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward)
134
- --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow)
135
- --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True)
136
- --set-merge-skipped [CHECK] # Set project merge requests check for skipped pipelines (true, false, default: True)
137
- --set-merge-resolved [CHECK] # Set project merge requests check for resolved threads (true, false, default: True)
139
+ --set-merge-method [METHOD] # Set project merge requests method (Merge, Semi-linear, Fast-forward, default: Fast-forward)
140
+ --set-merge-squash [SQUASH] # Set project merge requests squashing (Do not allow, Allow, Encourage, Require, default: Allow)
141
+ --set-merge-pipelines [CHECK] # Set project merge requests check for successful pipelines (true, false, default: True)
142
+ --set-merge-skipped [CHECK] # Set project merge requests check for skipped pipelines (true, false, default: True)
143
+ --set-merge-resolved [CHECK] # Set project merge requests check for resolved threads (true, false, default: True)
138
144
 
139
145
  ci/cd settings arguments:
140
- --erase-jobs-artifacts # Erase all CI/CD jobs artifacts
141
- --erase-jobs-contents # Erase all CI/CD jobs artifacts and traces
146
+ --add-jobs-token-allowlist PATH # Add a group or project to CI/CD job token allowlist
147
+ --remove-jobs-token-allowlist PATH # Remove a group or project from CI/CD job token allowlist
148
+ --erase-jobs-artifacts # Erase all CI/CD jobs artifacts
149
+ --erase-jobs-contents # Erase all CI/CD jobs artifacts and traces
150
+
151
+ issues arguments:
152
+ --get-project-issues-boards # Get the GitLab project issues boards in JSON format
153
+ --set-project-issues-boards JSON # Set the GitLab project issues boards from JSON format
142
154
 
143
155
  labels arguments:
144
- --get-group-labels # Get the GitLab group labels in JSON format
145
- --set-group-labels JSON # Set the GitLab group labels from JSON format
146
- --get-project-labels # Get the GitLab project labels in JSON format
147
- --set-project-labels JSON # Set the GitLab project labels from JSON format
156
+ --get-group-labels # Get the GitLab group labels in JSON format
157
+ --set-group-labels JSON # Set the GitLab group labels from JSON format
158
+ --get-project-labels # Get the GitLab project labels in JSON format
159
+ --set-project-labels JSON # Set the GitLab project labels from JSON format
148
160
 
149
161
  positional arguments:
150
- -- # Positional arguments separator (recommended)
151
- url_path # GitLab group or project path URL
162
+ -- # Positional arguments separator (recommended)
163
+ url_path # GitLab group or project path URL
152
164
 
153
165
  environment variables:
154
- GITLAB_TOKEN # GitLab API token environment variable
155
- CI_JOB_TOKEN # GitLab CI job token environment variable (CI only)
166
+ GITLAB_TOKEN # GitLab API token environment variable
167
+ CI_JOB_TOKEN # GitLab CI job token environment variable (CI only)
156
168
  ```
157
169
 
158
170
  <!-- readme-help-stop -->
@@ -4,6 +4,6 @@ nav:
4
4
  - ‣ Usage: index.md
5
5
  - About:
6
6
  - ‣ Changelog: about/changelog/
7
- - ‣ Documentation: documentation.pdf
8
7
  - ‣ License: about/license/
9
8
  - ‣ Quality: about/quality/
9
+ - ‣ Export as PDF: %MKDOCS_EXPORTER_PDF_OUTPUT%
@@ -36,7 +36,7 @@
36
36
  --md-mermaid-custom-secondaryTextColor: #ffffff;
37
37
  --md-mermaid-custom-tertiaryColor: #e2f0ff;
38
38
  --md-mermaid-custom-tertiaryBordColor: #00000000;
39
- --md-mermaid-custom-tertiaryTextColor: #222222;
39
+ --md-mermaid-custom-tertiaryTextColor: #004f77;
40
40
 
41
41
  --md-mermaid-edge-color: var(--md-mermaid-custom-tertiaryTextColor);
42
42
  --md-mermaid-node-bg-color: var(--md-mermaid-custom-primaryColor);