gitlab-projects-settings 5.3.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.
Files changed (69) hide show
  1. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.cz.yaml +3 -3
  2. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.gitignore +4 -0
  3. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.gitlab-ci.yml +75 -2
  4. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.pre-commit-config.yaml +27 -25
  5. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/CHANGELOG.md +31 -0
  6. {gitlab_projects_settings-5.3.0/gitlab_projects_settings.egg-info → gitlab_projects_settings-5.3.1}/PKG-INFO +8 -2
  7. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/README.md +6 -1
  8. gitlab_projects_settings-5.3.1/containers/pages/Dockerfile +12 -0
  9. gitlab_projects_settings-5.3.1/docs/prepare.sh +37 -0
  10. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1/gitlab_projects_settings.egg-info}/PKG-INFO +8 -2
  11. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/gitlab_projects_settings.egg-info/SOURCES.txt +4 -0
  12. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/gitlab_projects_settings.egg-info/requires.txt +1 -0
  13. gitlab_projects_settings-5.3.1/mkdocs.yml +109 -0
  14. gitlab_projects_settings-5.3.1/requirements/pages.txt +2 -0
  15. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/runtime.txt +1 -0
  16. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/package/updates.py +2 -2
  17. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.coveragerc +0 -0
  18. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.gitattributes +0 -0
  19. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.markdownlint.json +0 -0
  20. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.style.yapf +0 -0
  21. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.vscode/extensions.json +0 -0
  22. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/.vscode/settings.json +0 -0
  23. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/LICENSE +0 -0
  24. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/config/cliff.toml +0 -0
  25. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/containers/codestyle/Dockerfile +0 -0
  26. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/containers/deploy/Dockerfile +0 -0
  27. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/containers/test-coverage-linux/Dockerfile +0 -0
  28. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/containers/test-coverage-windows/Dockerfile +0 -0
  29. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/containers/test-linux/Dockerfile +0 -0
  30. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/gitlab_projects_settings.egg-info/dependency_links.txt +0 -0
  31. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/gitlab_projects_settings.egg-info/entry_points.txt +0 -0
  32. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/gitlab_projects_settings.egg-info/top_level.txt +0 -0
  33. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/mypy.ini +0 -0
  34. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/build.txt +0 -0
  35. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/coverage.txt +0 -0
  36. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/deploy.txt +0 -0
  37. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/quality.txt +0 -0
  38. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/requirements/tests.txt +0 -0
  39. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/setup.cfg +0 -0
  40. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/setup.py +0 -0
  41. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/sonar-project.properties +0 -0
  42. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/__init__.py +0 -0
  43. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/__main__.py +0 -0
  44. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/cli/__init__.py +0 -0
  45. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/cli/entrypoint.py +0 -0
  46. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/cli/main.py +0 -0
  47. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/features/__init__.py +0 -0
  48. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/features/gitlab.py +0 -0
  49. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/package/__init__.py +0 -0
  50. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/package/bundle.py +0 -0
  51. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/package/settings.py +0 -0
  52. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/package/version.py +0 -0
  53. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/prints/__init__.py +0 -0
  54. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/prints/boxes.py +0 -0
  55. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/prints/colors.py +0 -0
  56. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/prints/themes.py +0 -0
  57. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/system/__init__.py +0 -0
  58. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/system/platform.py +0 -0
  59. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/types/__init__.py +0 -0
  60. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/types/environments.py +0 -0
  61. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/types/gitlab.py +0 -0
  62. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/types/namespaces.py +0 -0
  63. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/src/types/strings.py +0 -0
  64. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/arguments/test.sh +0 -0
  65. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/colors/test.sh +0 -0
  66. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/macos/test.sh +0 -0
  67. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/settings/test.sh +0 -0
  68. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/versions/test.sh +0 -0
  69. {gitlab_projects_settings-5.3.0 → gitlab_projects_settings-5.3.1}/tests/windows/test.sh +0 -0
@@ -133,18 +133,18 @@ commitizen:
133
133
  - type: input
134
134
  name: scope
135
135
  message: 'Scope of the change :'
136
- filter: 'lambda text: commitizen.cz.utils.required_validator(text, msg="! Error: Scope is required")'
136
+ filter: 'required_validator_scope'
137
137
  default: ''
138
138
  - type: input
139
139
  name: subject
140
140
  message: 'Title of the commit (starting in lower case and without period) :'
141
- filter: 'lambda text: commitizen.cz.utils.required_validator(text.strip(".").strip(), msg="! Error: Title is required")'
141
+ filter: 'required_validator_title_strip'
142
142
  default: ''
143
143
  - type: input
144
144
  name: body
145
145
  message: 'Additional contextual message (Empty to skip) :'
146
146
  default: 'Issue: #...'
147
- filter: 'commitizen.cz.utils.multiple_line_breaker'
147
+ filter: 'multiple_line_breaker'
148
148
  - type: input
149
149
  name: footer
150
150
  message: 'Footer information and references (Empty to skip) :'
@@ -13,6 +13,10 @@ coverage-reports/
13
13
  *.egg-info/
14
14
  dist/
15
15
 
16
+ # Documentation intermediates
17
+ /docs/.cache
18
+ /public
19
+
16
20
  # SonarQube files
17
21
  .scannerwork/
18
22
  .sonar/
@@ -1,5 +1,5 @@
1
1
  include:
2
- - component: gitlab.com/RadianDevCore/tools/pre-commit-crocodile/commits@2.0.0
2
+ - component: gitlab.com/RadianDevCore/tools/pre-commit-crocodile/commits@3.0.0
3
3
  inputs:
4
4
  stage: prepare
5
5
 
@@ -127,6 +127,7 @@ images:
127
127
  'build | python:3.12-alpine | build' \
128
128
  'codestyle | python:3.12-alpine | codestyle' \
129
129
  'deploy | python:3.12-alpine | deploy' \
130
+ 'pages | python:3.12-alpine | pages' \
130
131
  'test-coverage-linux | python:3.12 | test-coverage-linux' \
131
132
  'test-coverage-windows | tobix/pywine:3.10 | test-coverage-windows' \
132
133
  'test-oldest | python:3.8 | test-linux' \
@@ -159,6 +160,33 @@ images:
159
160
  rules:
160
161
  - if: $CI_LOCAL
161
162
 
163
+ serve:
164
+ stage: development
165
+ image: local
166
+ needs: []
167
+ before_script:
168
+ # Install dependencies
169
+ - pipx install mkdocs
170
+ - pipx inject mkdocs mkdocs-material
171
+ script:
172
+ # Prepare documentation
173
+ - |
174
+ mkdir -p ./docs/.cache/
175
+ ls -1 ./docs/* ./mkdocs.yml ./README.md | entr sh ./docs/prepare.sh &
176
+ echo -n "${!}" >./docs/.cache/.serve.pid
177
+ sleep 2
178
+ # Generate documentation
179
+ - |
180
+ network_ip=$(hostname -I | cut -d' ' -f1)
181
+ mkdocs serve --dev-addr "${network_ip}:8001" --clean --config-file ./mkdocs.yml --verbose || true
182
+ after_script:
183
+ # Cleanup documentation
184
+ - cat ./docs/.cache/.serve.pid | xargs -r kill >/dev/null 2>&1 || true
185
+ - rm -rf ./docs/.cache
186
+ rules:
187
+ - if: $CI_LOCAL
188
+ allow_failure: true
189
+
162
190
  # =============================================================================
163
191
  # Stage: prepare
164
192
 
@@ -169,7 +197,10 @@ codestyle:
169
197
  script:
170
198
  - yapf -i ./src/*.py ./src/*/*.py ./setup.py
171
199
  - echo '' && git diff --name-status
172
- - git diff --quiet
200
+ - |
201
+ if [ -z "${CI_LOCAL:-}" ] || [ ! -z "${PRE_COMMIT}" ]; then
202
+ git diff --quiet
203
+ fi
173
204
  rules:
174
205
  - if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
175
206
  changes:
@@ -564,3 +595,45 @@ deploy:trial:
564
595
  rules:
565
596
  - if: $CI_LOCAL
566
597
  when: manual
598
+
599
+ pages:
600
+ stage: deploy
601
+ image: registry.gitlab.com/radiandevcore/tools/gitlab-projects-settings/gitlab-projects-settings:pages
602
+ needs:
603
+ - job: build
604
+ artifacts: false
605
+ optional: true
606
+ - job: coverage:linux
607
+ artifacts: false
608
+ optional: true
609
+ - job: coverage:windows
610
+ artifacts: false
611
+ optional: true
612
+ - job: py3.8
613
+ artifacts: false
614
+ optional: true
615
+ - job: py3.12
616
+ artifacts: false
617
+ optional: true
618
+ script:
619
+ # Prepare documentation
620
+ - sh ./docs/prepare.sh
621
+ # Generate documentation
622
+ - mkdocs build --clean --config-file ./mkdocs.yml --verbose
623
+ after_script:
624
+ # Cleanup documentation
625
+ - rm -rf ./docs/.cache
626
+ artifacts:
627
+ expire_in: 1 hour
628
+ paths:
629
+ - public
630
+ rules:
631
+ - if: $CI_COMMIT_REF_NAME == 'main'
632
+ changes:
633
+ - '.gitlab-ci.yml'
634
+ - 'CHANGELOG.md'
635
+ - 'mkdocs.yml'
636
+ - 'LICENSE'
637
+ - 'README.md'
638
+ - 'docs/**/*'
639
+ - 'requirements/**/*'
@@ -12,7 +12,9 @@ minimum_pre_commit_version: 3.8.0
12
12
  # pre-commit exclusions
13
13
  exclude: >
14
14
  (?x)(
15
+ \.patch$|
15
16
  \.svg$|
17
+ eicar\..*$|
16
18
  CHANGELOG.md$|
17
19
  COPYING.*$|
18
20
  LICENSE.*$|
@@ -43,13 +45,21 @@ repos:
43
45
  - id: check-yaml
44
46
  args: ['--unsafe']
45
47
  - id: destroyed-symlinks
46
- - id: detect-private-key
48
+ stages: [commit, push, manual] # Issue: https://github.com/pre-commit/pre-commit-hooks/pull/1085
49
+ # - id: detect-private-key
47
50
  - id: double-quote-string-fixer
48
51
  - id: end-of-file-fixer
49
52
  - id: mixed-line-ending
50
53
  - id: trailing-whitespace
51
54
  args: ['--markdown-linebreak-ext=md']
52
55
 
56
+ # Repository: pre-commit-hooks
57
+ - repo: https://github.com/pre-commit/pygrep-hooks
58
+ rev: v1.10.0
59
+ hooks:
60
+ - id: python-check-blanket-type-ignore
61
+ - id: python-no-eval
62
+
53
63
  # Repository: commitizen
54
64
  - repo: https://github.com/commitizen-tools/commitizen
55
65
  rev: v3.29.0
@@ -63,34 +73,26 @@ repos:
63
73
 
64
74
  # Repository: pre-commit-crocodile
65
75
  - repo: https://gitlab.com/RadianDevCore/tools/pre-commit-crocodile
66
- rev: 2.0.1
76
+ rev: 3.0.0
67
77
  hooks:
68
78
  - id: prepare-commit-message
69
79
 
70
- # Repository: local-gcil
71
- - repo: local
80
+ # Repository: gcil
81
+ - repo: https://gitlab.com/RadianDevCore/tools/gcil
82
+ rev: 9db7ca21
72
83
  hooks:
73
- - id: local-gcil-codestyle
74
- name: check codestyle job with gcil
84
+ - id: run-gcil-push
85
+ name: Run GitLab CI job with gcil (codestyle)
75
86
  description: Automatically run GitLab CI job with gcil (codestyle)
76
- stages:
77
- - pre-push
78
- entry: gcil
79
- args: ['codestyle']
80
- language: system
81
- - id: local-gcil-lint
82
- name: check lint job with gcil
87
+ args:
88
+ - 'codestyle'
89
+ - id: run-gcil-push
90
+ name: Run GitLab CI job with gcil (lint)
83
91
  description: Automatically run GitLab CI job with gcil (lint)
84
- stages:
85
- - pre-push
86
- entry: gcil
87
- args: ['lint']
88
- language: system
89
- - id: local-gcil-typings
90
- name: check typings job with gcil
92
+ args:
93
+ - 'lint'
94
+ - id: run-gcil-push
95
+ name: Run GitLab CI job with gcil (typings)
91
96
  description: Automatically run GitLab CI job with gcil (typings)
92
- stages:
93
- - pre-push
94
- entry: gcil
95
- args: ['typings']
96
- language: system
97
+ args:
98
+ - 'typings'
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ <a name="5.3.1"></a>
4
+ ## [5.3.1](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/compare/5.3.0...5.3.1) (2024-08-25)
5
+
6
+ ### ✨ Features
7
+
8
+ - **updates:** migrate from deprecated 'pkg_resources' to 'packaging' ([103ef37](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/103ef37f4bc54fe32705e3fab92b01ca617a0126))
9
+
10
+ ### 📚 Documentation
11
+
12
+ - **mkdocs:** implement GitLab Pages initial documentation and jobs ([8643bbc](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/8643bbccc427afeac233050d3718d5e229658558))
13
+ - **readme:** link against 'gcil' documentation pages ([022f572](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/022f572b65930b824f63365220cb0921dabb505f))
14
+
15
+ ### ⚙️ Cleanups
16
+
17
+ - **commitizen:** migrate to new 'filter' syntax (commitizen#1207) ([fddd134](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/fddd1344e9c8097279661f0d2d66c6c167efbad8))
18
+ - **pre-commit:** add 'python-check-blanket-type-ignore' and 'python-no-eval' ([5dc3e17](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/5dc3e17f6eaee57a80699b747c22a19659a0a427))
19
+ - **pre-commit:** fail 'gcil' jobs if 'PRE_COMMIT' is defined ([5b508ba](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/5b508baf43e57ca8e77dc0e951b521c8e19549f2))
20
+ - **pre-commit:** simplify and unify 'local-gcil' hooks syntax ([f1b7c10](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/f1b7c10d642a08f6af9fcacbe67ae50956a806b4))
21
+ - **pre-commit:** improve syntax for 'args' arguments ([29ed782](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/29ed7822a526b3163d2888401b511e0c94bb50db))
22
+ - **pre-commit:** migrate to 'run-gcil-*' template 'gcil' hooks ([1242370](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/1242370ce0a7f0f6132805a6f8472a181687c297))
23
+ - **pre-commit:** update against 'run-gcil-push' hook template ([28e3bc8](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/28e3bc8a7f28db2e55d2123beaaf1ea29f25812b))
24
+ - **pre-commit:** migrate to 'pre-commit-crocodile' 3.0.0 ([0167d46](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/0167d46b49395ce8e0a4444e91e37fe57f6005ab))
25
+
26
+ ### 🚀 CI
27
+
28
+ - **containers:** implement ':pages' image with 'mkdocs-material' ([ab8bdde](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/ab8bdde24678fb91d2ca053a82da43de3efc1ced))
29
+ - **gitlab-ci:** avoid failures of 'codestyle' upon local launches ([62f9d86](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/62f9d865170ab3ac90f41194bd02757be96a568b))
30
+ - **gitlab-ci:** migrate to 'pre-commit-crocodile/commits@2.1.0' component ([46515c9](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/46515c90ec5a762256bbd168e9ed82a2a903c5cc))
31
+ - **gitlab-ci:** migrate to 'pre-commit-crocodile/commits@3.0.0' component ([412f468](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/commit/412f468335739af7f9b6b3fe64f45969ac416562))
32
+
33
+
3
34
  <a name="5.3.0"></a>
4
35
  ## [5.3.0](https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings/compare/5.2.1...5.3.0) (2024-08-21)
5
36
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gitlab-projects-settings
3
- Version: 5.3.0
3
+ Version: 5.3.1
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
@@ -28,6 +28,7 @@ Requires-Python: >=3,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3
28
28
  Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: colored>=1.4.2
31
+ Requires-Dist: packaging>=24.0
31
32
  Requires-Dist: python-gitlab>=4.4.0
32
33
  Requires-Dist: questionary>=2.0.1
33
34
  Requires-Dist: setuptools>=45.1.0
@@ -49,6 +50,9 @@ Requires-Dist: update_checker>=0.18.0
49
50
 
50
51
  Configure GitLab groups and projects settings automatically
51
52
 
53
+ **Documentation:** <https://radiandevcore.gitlab.io/tools/gitlab-projects-settings>
54
+ **Package:** <https://pypi.org/project/gitlab-projects-settings/>
55
+
52
56
  ---
53
57
 
54
58
  ## Purpose
@@ -260,7 +264,9 @@ an environment variable `NO_COLOR=1` can be defined to disable colors.
260
264
  - [commitizen](https://pypi.org/project/commitizen/): Simple commit conventions for internet citizens
261
265
  - [git-cliff](https://github.com/orhun/git-cliff): CHANGELOG generator
262
266
  - [gitlab-release](https://pypi.org/project/gitlab-release/): Utility for publishing on GitLab
263
- - [gcil](https://pypi.org/project/gitlabci-local/): Launch .gitlab-ci.yml jobs locally
267
+ - [gcil](https://radiandevcore.gitlab.io/tools/gcil): Launch .gitlab-ci.yml jobs locally
268
+ - [mkdocs](https://www.mkdocs.org/): Project documentation with Markdown
269
+ - [mkdocs-material](https://squidfunk.github.io/mkdocs-material/): Material theme for mkdocs documentation
264
270
  - [mypy](https://pypi.org/project/mypy/): Optional static typing for Python
265
271
  - [pre-commit](https://pre-commit.com/): A framework for managing and maintaining pre-commit hooks
266
272
  - [pre-commit-crocodile](https://radiandevcore.gitlab.io/tools/pre-commit-crocodile): Git hooks intended for developers using pre-commit
@@ -14,6 +14,9 @@
14
14
 
15
15
  Configure GitLab groups and projects settings automatically
16
16
 
17
+ **Documentation:** <https://radiandevcore.gitlab.io/tools/gitlab-projects-settings>
18
+ **Package:** <https://pypi.org/project/gitlab-projects-settings/>
19
+
17
20
  ---
18
21
 
19
22
  ## Purpose
@@ -225,7 +228,9 @@ an environment variable `NO_COLOR=1` can be defined to disable colors.
225
228
  - [commitizen](https://pypi.org/project/commitizen/): Simple commit conventions for internet citizens
226
229
  - [git-cliff](https://github.com/orhun/git-cliff): CHANGELOG generator
227
230
  - [gitlab-release](https://pypi.org/project/gitlab-release/): Utility for publishing on GitLab
228
- - [gcil](https://pypi.org/project/gitlabci-local/): Launch .gitlab-ci.yml jobs locally
231
+ - [gcil](https://radiandevcore.gitlab.io/tools/gcil): Launch .gitlab-ci.yml jobs locally
232
+ - [mkdocs](https://www.mkdocs.org/): Project documentation with Markdown
233
+ - [mkdocs-material](https://squidfunk.github.io/mkdocs-material/): Material theme for mkdocs documentation
229
234
  - [mypy](https://pypi.org/project/mypy/): Optional static typing for Python
230
235
  - [pre-commit](https://pre-commit.com/): A framework for managing and maintaining pre-commit hooks
231
236
  - [pre-commit-crocodile](https://radiandevcore.gitlab.io/tools/pre-commit-crocodile): Git hooks intended for developers using pre-commit
@@ -0,0 +1,12 @@
1
+ ARG IMAGE_BASE=python:3-alpine
2
+ FROM $IMAGE_BASE
3
+
4
+ # Install dependencies
5
+ RUN apk add -q \
6
+ git
7
+
8
+ # Install requirements
9
+ COPY --from='requirements' ./pages.txt /tmp/
10
+ RUN export PIP_DISABLE_PIP_VERSION_CHECK=1 \
11
+ && pip3 install -q -r /tmp/pages.txt --no-cache-dir --upgrade \
12
+ && rm -f /tmp/pages.txt
@@ -0,0 +1,37 @@
1
+ #!/bin/sh
2
+
3
+ # Configurations
4
+ set -e
5
+
6
+ # Variables
7
+ docs_path=$(cd "$(dirname "${BASH_SOURCE:-${0}}")" && pwd -P)
8
+ root_path="${docs_path%/*}"
9
+
10
+ # Prepare cache
11
+ rm -f "${docs_path}/.cache/*.md"
12
+ mkdir -p "${docs_path}/.cache/"
13
+
14
+ # Export assets
15
+ rm -rf "${docs_path}/.cache/assets/images"
16
+ mkdir -p "${docs_path}/.cache/assets/images/"
17
+
18
+ # Export usage
19
+ cp -f "${root_path}/README.md" "${docs_path}/.cache/index.md"
20
+
21
+ # Export about/changelog
22
+ mkdir -p "${docs_path}/.cache/about/"
23
+ cp -f "${root_path}/CHANGELOG.md" "${docs_path}/.cache/about/changelog.md"
24
+
25
+ # Export about/license
26
+ {
27
+ echo '# License'
28
+ echo ''
29
+ echo '---'
30
+ echo ''
31
+ cat "${root_path}/LICENSE"
32
+ } >"${docs_path}/.cache/about/license.md"
33
+
34
+ # Show cache
35
+ echo ' '
36
+ ls -laR "${docs_path}/.cache/"
37
+ echo ' '
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gitlab-projects-settings
3
- Version: 5.3.0
3
+ Version: 5.3.1
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
@@ -28,6 +28,7 @@ Requires-Python: >=3,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3
28
28
  Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: colored>=1.4.2
31
+ Requires-Dist: packaging>=24.0
31
32
  Requires-Dist: python-gitlab>=4.4.0
32
33
  Requires-Dist: questionary>=2.0.1
33
34
  Requires-Dist: setuptools>=45.1.0
@@ -49,6 +50,9 @@ Requires-Dist: update_checker>=0.18.0
49
50
 
50
51
  Configure GitLab groups and projects settings automatically
51
52
 
53
+ **Documentation:** <https://radiandevcore.gitlab.io/tools/gitlab-projects-settings>
54
+ **Package:** <https://pypi.org/project/gitlab-projects-settings/>
55
+
52
56
  ---
53
57
 
54
58
  ## Purpose
@@ -260,7 +264,9 @@ an environment variable `NO_COLOR=1` can be defined to disable colors.
260
264
  - [commitizen](https://pypi.org/project/commitizen/): Simple commit conventions for internet citizens
261
265
  - [git-cliff](https://github.com/orhun/git-cliff): CHANGELOG generator
262
266
  - [gitlab-release](https://pypi.org/project/gitlab-release/): Utility for publishing on GitLab
263
- - [gcil](https://pypi.org/project/gitlabci-local/): Launch .gitlab-ci.yml jobs locally
267
+ - [gcil](https://radiandevcore.gitlab.io/tools/gcil): Launch .gitlab-ci.yml jobs locally
268
+ - [mkdocs](https://www.mkdocs.org/): Project documentation with Markdown
269
+ - [mkdocs-material](https://squidfunk.github.io/mkdocs-material/): Material theme for mkdocs documentation
264
270
  - [mypy](https://pypi.org/project/mypy/): Optional static typing for Python
265
271
  - [pre-commit](https://pre-commit.com/): A framework for managing and maintaining pre-commit hooks
266
272
  - [pre-commit-crocodile](https://radiandevcore.gitlab.io/tools/pre-commit-crocodile): Git hooks intended for developers using pre-commit
@@ -9,6 +9,7 @@
9
9
  CHANGELOG.md
10
10
  LICENSE
11
11
  README.md
12
+ mkdocs.yml
12
13
  mypy.ini
13
14
  setup.py
14
15
  sonar-project.properties
@@ -17,9 +18,11 @@ sonar-project.properties
17
18
  config/cliff.toml
18
19
  containers/codestyle/Dockerfile
19
20
  containers/deploy/Dockerfile
21
+ containers/pages/Dockerfile
20
22
  containers/test-coverage-linux/Dockerfile
21
23
  containers/test-coverage-windows/Dockerfile
22
24
  containers/test-linux/Dockerfile
25
+ docs/prepare.sh
23
26
  gitlab_projects_settings.egg-info/PKG-INFO
24
27
  gitlab_projects_settings.egg-info/SOURCES.txt
25
28
  gitlab_projects_settings.egg-info/dependency_links.txt
@@ -29,6 +32,7 @@ gitlab_projects_settings.egg-info/top_level.txt
29
32
  requirements/build.txt
30
33
  requirements/coverage.txt
31
34
  requirements/deploy.txt
35
+ requirements/pages.txt
32
36
  requirements/quality.txt
33
37
  requirements/runtime.txt
34
38
  requirements/tests.txt
@@ -1,4 +1,5 @@
1
1
  colored>=1.4.2
2
+ packaging>=24.0
2
3
  python-gitlab>=4.4.0
3
4
  questionary>=2.0.1
4
5
  setuptools>=45.1.0
@@ -0,0 +1,109 @@
1
+ # Build configurations
2
+ strict: true
3
+
4
+ # Build folders
5
+ docs_dir: docs/.cache
6
+ site_dir: public
7
+
8
+ # Project information
9
+ site_author: Adrian DC
10
+ site_description: Configure GitLab groups and projects settings automatically
11
+
12
+ # Project repository
13
+ repo_name: RadianDevCore/tools
14
+ repo_url: https://gitlab.com/RadianDevCore/tools/gitlab-projects-settings
15
+ edit_uri: edit/main/docs/
16
+
17
+ # Pages information
18
+ site_name: gitlab-projects-settings
19
+ site_url: https://radiandevcore.gitlab.io/tools/gitlab-projects-settings
20
+
21
+ # Project copyright
22
+ copyright: Copyright &copy; 2024 - <a href="https://gitlab.com/AdrianDC">Adrian DC</a>
23
+
24
+ # Additional configuration
25
+ extra:
26
+ status:
27
+ new: Recently added
28
+ deprecated: Deprecated
29
+ social:
30
+ - icon: fontawesome/brands/gitlab
31
+ link: https://gitlab.com/AdrianDC/
32
+ - icon: fontawesome/brands/github
33
+ link: https://github.com/AdrianDC
34
+ - icon: fontawesome/brands/python
35
+ link: https://pypi.org/user/adriandc/
36
+
37
+ # Pages extensions
38
+ markdown_extensions:
39
+ - pymdownx.highlight:
40
+ anchor_linenums: true
41
+ line_spans: __span
42
+ pygments_lang_class: true
43
+ - pymdownx.inlinehilite
44
+ - pymdownx.snippets
45
+ - pymdownx.superfences
46
+ - toc:
47
+ toc_depth: 2
48
+
49
+ # Pages navigation
50
+ nav:
51
+ - Usage:
52
+ - ‣ gitlab-projects-settings: index.md
53
+ - About:
54
+ - ‣ Changelog: about/changelog.md
55
+ - ‣ License: about/license.md
56
+
57
+ # Pages theme
58
+ theme:
59
+ name: material
60
+ features:
61
+ # - content.action.edit
62
+ # - content.action.view
63
+ - content.code.annotate
64
+ - content.code.copy
65
+ - content.code.select
66
+ - content.tooltips
67
+ - navigation.expand
68
+ - navigation.footer
69
+ - navigation.indexes
70
+ - navigation.instant
71
+ - navigation.instant.prefetch
72
+ - navigation.instant.progress
73
+ - navigation.instant.preview
74
+ # - navigation.path
75
+ # - navigation.prune
76
+ - navigation.sections
77
+ # - navigation.tabs
78
+ # - navigation.tabs.sticky
79
+ - navigation.top
80
+ - navigation.tracking
81
+ - search.highlight
82
+ - search.share
83
+ - search.suggest
84
+ - toc.follow
85
+ # - toc.integrate
86
+ palette:
87
+ - media: "(prefers-color-scheme)"
88
+ toggle:
89
+ icon: material/link
90
+ name: Switch to light mode
91
+ - media: "(prefers-color-scheme: light)"
92
+ scheme: default
93
+ primary: blue grey
94
+ accent: blue grey
95
+ toggle:
96
+ icon: material/toggle-switch
97
+ name: Switch to dark mode
98
+ - media: "(prefers-color-scheme: dark)"
99
+ scheme: slate
100
+ primary: black
101
+ accent: blue grey
102
+ toggle:
103
+ icon: material/toggle-switch-off
104
+ name: Switch to system preference
105
+ font:
106
+ text: Roboto
107
+ code: Roboto Mono
108
+ icon:
109
+ repo: fontawesome/brands/gitlab
@@ -0,0 +1,2 @@
1
+ mkdocs>=1.6.0
2
+ mkdocs-material>=9.5.32
@@ -1,4 +1,5 @@
1
1
  colored>=1.4.2
2
+ packaging>=24.0
2
3
  python-gitlab>=4.4.0
3
4
  questionary>=2.0.1
4
5
  setuptools>=45.1.0
@@ -7,7 +7,7 @@ from time import localtime, strftime, time
7
7
  from typing import Optional
8
8
 
9
9
  # Modules libraries
10
- from pkg_resources import parse_version
10
+ from packaging.version import Version as PackageVersion
11
11
 
12
12
  # Components
13
13
  from ..prints.boxes import Boxes
@@ -72,7 +72,7 @@ class Updates:
72
72
  # Fake test updates
73
73
  if Bundle.ENV_DEBUG_UPDATES_FAKE in environ:
74
74
  available = environ[Bundle.ENV_DEBUG_UPDATES_FAKE]
75
- if parse_version(available) >= parse_version(version):
75
+ if PackageVersion(available) >= PackageVersion(version):
76
76
 
77
77
  # Show updates message
78
78
  release_date = datetime.utcfromtimestamp(Bundle.RELEASE_FIRST_TIMESTAMP)