continuous-delivery-scripts 3.4.1__tar.gz → 3.5.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.
- {continuous_delivery_scripts-3.4.1/continuous_delivery_scripts.egg-info → continuous_delivery_scripts-3.5.0}/PKG-INFO +1 -1
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/_version.py +4 -4
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/golang.py +76 -15
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/git_helpers.py +1 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0/continuous_delivery_scripts.egg-info}/PKG-INFO +1 -1
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/LICENSE +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/MANIFEST.in +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/README.md +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/assert_news.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/create_news_file.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/detect_secrets.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/generate_docs.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/generate_news.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/get_config.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/get_version.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/language_specifics.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/license_files.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/BASIC.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/CI.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/GITHUB_ACTIONS.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/GOLAND.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/NOOP.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/PYTHON.MD +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/basic.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/ci.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/docker.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/github_actions.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/noop.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/plugins/python.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/report_third_party_ip.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_dependency.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_document.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_file.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_package.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_project.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/spdx_summary.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/templates/third_party_IP_report.csv.jinja2 +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/templates/third_party_IP_report.html.jinja2 +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/spdx_report/templates/third_party_IP_report.txt.jinja2 +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/tag_and_release.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/update_secrets_registry.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/aws_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/configuration.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/definitions.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/filesystem_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/hash_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/language_specifics_base.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/logging.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/news_file.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/noop/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/noop/package_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/package_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/python/__init__.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/python/package_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/python/python_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/string_helpers.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/third_party_licences.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts/utils/versioning.py +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts.egg-info/SOURCES.txt +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts.egg-info/dependency_links.txt +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts.egg-info/entry_points.txt +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts.egg-info/requires.txt +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/continuous_delivery_scripts.egg-info/top_level.txt +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/pyproject.toml +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/setup.cfg +0 -0
- {continuous_delivery_scripts-3.4.1 → continuous_delivery_scripts-3.5.0}/setup.py +0 -0
|
@@ -11,8 +11,8 @@ References
|
|
|
11
11
|
This file is autogenerated, do not modify by hand.
|
|
12
12
|
"""
|
|
13
13
|
|
|
14
|
-
__version__ = "3.
|
|
15
|
-
COMMIT = "
|
|
14
|
+
__version__ = "3.5.0"
|
|
15
|
+
COMMIT = "c8bbe64d754ac6d58403d50c46679ccebc5e1ef8"
|
|
16
16
|
MAJOR = 3
|
|
17
|
-
MINOR =
|
|
18
|
-
PATCH =
|
|
17
|
+
MINOR = 5
|
|
18
|
+
PATCH = 0
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
#
|
|
5
5
|
"""Plugin for Golang projects."""
|
|
6
6
|
|
|
7
|
+
import json
|
|
7
8
|
import logging
|
|
8
9
|
import os
|
|
9
10
|
import shutil
|
|
@@ -143,24 +144,85 @@ def _call_goreleaser_check(version: str) -> None:
|
|
|
143
144
|
check_call(_generate_goreleaser_check_command_list(), cwd=ROOT_DIR, env=env)
|
|
144
145
|
|
|
145
146
|
|
|
146
|
-
def
|
|
147
|
-
"""Determines go module for tagging.
|
|
148
|
-
|
|
149
|
-
See https://golang.org/ref/mod#vcs-version.
|
|
150
|
-
and https://github.com/golang/go/wiki/Modules#should-i-have-multiple-modules-in-a-single-repository.
|
|
151
|
-
"""
|
|
152
|
-
module = ""
|
|
147
|
+
def _determine_go_module_tag_for_directory(module_directory: Path, version: str) -> Optional[str]:
|
|
153
148
|
try:
|
|
154
|
-
module =
|
|
149
|
+
module = module_directory.relative_to(ROOT_DIR)
|
|
155
150
|
except ValueError:
|
|
156
151
|
try:
|
|
157
|
-
module =
|
|
152
|
+
module = ROOT_DIR.relative_to(module_directory)
|
|
158
153
|
except ValueError as exception:
|
|
159
154
|
logger.warning(exception)
|
|
160
|
-
|
|
155
|
+
return None
|
|
156
|
+
module_as_posix = module.as_posix().rstrip("/")
|
|
157
|
+
if module_as_posix == "." or len(module_as_posix) == 0:
|
|
161
158
|
return None
|
|
162
|
-
|
|
163
|
-
|
|
159
|
+
return f"{module_as_posix}/{version}"
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
def _find_go_work_files() -> List[Path]:
|
|
163
|
+
go_work_files: List[Path] = []
|
|
164
|
+
for go_work_file in [SRC_DIR.joinpath("go.work"), ROOT_DIR.joinpath("go.work")]:
|
|
165
|
+
if go_work_file.exists() and go_work_file not in go_work_files:
|
|
166
|
+
go_work_files.append(go_work_file)
|
|
167
|
+
return go_work_files
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
def _determine_go_work_module_directories_from_json(go_work_file: Path) -> List[Path]:
|
|
171
|
+
"""Determine module directories from `go work edit -json` output.
|
|
172
|
+
|
|
173
|
+
`go.work` lists all workspace modules that should be released together.
|
|
174
|
+
See https://go.dev/ref/mod#workspaces and https://pkg.go.dev/cmd/go#hdr-Edit_workspace_file.
|
|
175
|
+
"""
|
|
176
|
+
go_work_root = go_work_file.parent
|
|
177
|
+
go_work = json.loads(check_output(["go", "work", "edit", "-json"], cwd=go_work_root, encoding="utf8"))
|
|
178
|
+
module_directories: List[Path] = []
|
|
179
|
+
for use_definition in go_work.get("Use", []):
|
|
180
|
+
disk_path = use_definition.get("DiskPath") or use_definition.get("Path")
|
|
181
|
+
if not disk_path:
|
|
182
|
+
continue
|
|
183
|
+
module_directory = Path(str(disk_path))
|
|
184
|
+
module_directories.append(
|
|
185
|
+
module_directory if module_directory.is_absolute() else go_work_root.joinpath(module_directory)
|
|
186
|
+
)
|
|
187
|
+
return module_directories
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
def _determine_go_work_module_directories() -> List[Path]:
|
|
191
|
+
"""Determine module directories declared in `go.work`.
|
|
192
|
+
|
|
193
|
+
`go.work` lists all workspace modules that should be released together.
|
|
194
|
+
See https://go.dev/ref/mod#workspaces.
|
|
195
|
+
"""
|
|
196
|
+
module_directories: List[Path] = []
|
|
197
|
+
for go_work_file in _find_go_work_files():
|
|
198
|
+
module_directories.extend(_determine_go_work_module_directories_from_json(go_work_file))
|
|
199
|
+
return list(dict.fromkeys(module_directories))
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
def _determine_go_subproject_directories() -> List[Path]:
|
|
203
|
+
if not SRC_DIR.exists():
|
|
204
|
+
return []
|
|
205
|
+
return sorted((go_mod_file.parent for go_mod_file in SRC_DIR.rglob("go.mod")), key=lambda path: str(path))
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
def _determine_go_module_tag(version: str) -> List[str]:
|
|
209
|
+
"""Determine all go module tags for release.
|
|
210
|
+
|
|
211
|
+
See https://golang.org/ref/mod#vcs-version,
|
|
212
|
+
https://go.dev/ref/mod#workspaces, and
|
|
213
|
+
https://github.com/golang/go/wiki/Modules/a549b3e4b7ad6be6e7d11c37ef247bb2279c8146#faqs--multi-module-repositories.
|
|
214
|
+
"""
|
|
215
|
+
module_directories = [SRC_DIR]
|
|
216
|
+
go_work_module_directories = _determine_go_work_module_directories()
|
|
217
|
+
if go_work_module_directories:
|
|
218
|
+
module_directories.extend(go_work_module_directories)
|
|
219
|
+
else:
|
|
220
|
+
module_directories.extend(_determine_go_subproject_directories())
|
|
221
|
+
|
|
222
|
+
tags = [
|
|
223
|
+
_determine_go_module_tag_for_directory(module_directory, version) for module_directory in module_directories
|
|
224
|
+
]
|
|
225
|
+
return list(dict.fromkeys([tag for tag in tags if tag]))
|
|
164
226
|
|
|
165
227
|
|
|
166
228
|
class Go(BaseLanguage):
|
|
@@ -209,7 +271,7 @@ class Go(BaseLanguage):
|
|
|
209
271
|
r".*go\.sum$",
|
|
210
272
|
r"^\.circleci[\\/].*",
|
|
211
273
|
r"^workflows/.*",
|
|
212
|
-
r"^\.github[\\/]workflows[\\/].*",
|
|
274
|
+
(r"^\.github[\\/]workflows[\\/].*"),
|
|
213
275
|
]
|
|
214
276
|
|
|
215
277
|
def get_current_spdx_project(self) -> Optional["SpdxProject"]:
|
|
@@ -224,8 +286,7 @@ class Go(BaseLanguage):
|
|
|
224
286
|
def tag_release(self, git: GitWrapper, version: str, shortcuts: Dict[str, bool]) -> None:
|
|
225
287
|
"""Tags release commit."""
|
|
226
288
|
super().tag_release(git, version, shortcuts)
|
|
227
|
-
go_tag
|
|
228
|
-
if go_tag:
|
|
289
|
+
for go_tag in _determine_go_module_tag(self.get_version_tag(version)):
|
|
229
290
|
git.create_tag(go_tag, message=f"Golang module release: {go_tag}")
|
|
230
291
|
|
|
231
292
|
def _call_goreleaser_release(self, version: str) -> None:
|
|
@@ -808,6 +808,7 @@ class GitTempClone:
|
|
|
808
808
|
Tempfiles objects on Windows are holding references to open files until
|
|
809
809
|
they are collected by the garbage collector, thus preventing deletion.
|
|
810
810
|
"""
|
|
811
|
+
self._clone.repo.close()
|
|
811
812
|
self._repo.repo.close()
|
|
812
813
|
self._temporary_dir.cleanup()
|
|
813
814
|
|
|
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
|