itw-python-builder 0.1.50__tar.gz → 0.1.52__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.
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/PKG-INFO +1 -1
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/tasks.py +17 -6
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/PKG-INFO +1 -1
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/pyproject.toml +1 -1
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/LICENSE +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/README.md +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/.pylintrc +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/__init__.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/cli.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/notify.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/ssr_tasks.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/templates/new_version_email.html +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/templates/server.sitemap.snippet.ts +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/templates/sitemap.routes.ts +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/utils.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder/version.py +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/SOURCES.txt +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/dependency_links.txt +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/entry_points.txt +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/requires.txt +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/top_level.txt +0 -0
- {itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/setup.cfg +0 -0
|
@@ -17,6 +17,7 @@ from itw_python_builder.utils import (
|
|
|
17
17
|
_parse_gitlab_remote,
|
|
18
18
|
install_sigint_guard,
|
|
19
19
|
step,
|
|
20
|
+
abort_if_interrupted,
|
|
20
21
|
safe_remove,
|
|
21
22
|
ensure_gitignored,
|
|
22
23
|
gitignore_touched_this_run,
|
|
@@ -253,7 +254,17 @@ def tag_build_push(ctx: Context, version: Version, skip_pipeline: bool = False,
|
|
|
253
254
|
branch = get_current_branch(ctx)
|
|
254
255
|
if ensure_gitignored('dist.tar.gz'):
|
|
255
256
|
print('[itw] Added "dist.tar.gz" to .gitignore.')
|
|
256
|
-
|
|
257
|
+
pkg_path = Path(os.getcwd()) / 'package.json'
|
|
258
|
+
original_pkg = pkg_path.read_text(encoding='utf-8')
|
|
259
|
+
save_version(version)
|
|
260
|
+
print(f'[itw] Bumped package.json to {version.bare_semver()} before build.')
|
|
261
|
+
try:
|
|
262
|
+
build_frontend(ctx, branch, ssr=ssr)
|
|
263
|
+
except BaseException:
|
|
264
|
+
pkg_path.write_text(original_pkg, encoding='utf-8')
|
|
265
|
+
print('[itw] Build failed — reverted package.json to previous version.')
|
|
266
|
+
raise
|
|
267
|
+
abort_if_interrupted('build')
|
|
257
268
|
step('package', package_dist, ctx)
|
|
258
269
|
step('upload', upload_dist, ctx, version)
|
|
259
270
|
if safe_remove('dist.tar.gz'):
|
|
@@ -367,14 +378,14 @@ def release(ctx: Context, skip_pipeline=False, ssr=False) -> None:
|
|
|
367
378
|
|
|
368
379
|
|
|
369
380
|
@task
|
|
370
|
-
def test(ctx: Context, settings='backend.test_settings'):
|
|
371
|
-
"""Run tests with coverage
|
|
381
|
+
def test(ctx: Context, settings='backend.test_settings', warn=False):
|
|
382
|
+
"""Run tests with coverage. --warn lets the pipeline continue and print coverage on failure."""
|
|
372
383
|
if detect_project_type() == 'frontend':
|
|
373
|
-
ctx.run('npx ng test --no-watch --code-coverage --browsers=ChromeHeadlessNoSandbox')
|
|
384
|
+
ctx.run('npx ng test --no-watch --code-coverage --browsers=ChromeHeadlessNoSandbox', warn=warn)
|
|
374
385
|
print("✓ Tests completed")
|
|
375
386
|
return
|
|
376
387
|
detect_and_activate_venv()
|
|
377
|
-
ctx.run(f'python -m coverage run manage.py test --settings={settings} --noinput -v 2')
|
|
388
|
+
ctx.run(f'python -m coverage run manage.py test --settings={settings} --noinput -v 2', warn=warn)
|
|
378
389
|
ctx.run('python -m coverage report -m')
|
|
379
390
|
ctx.run('python -m coverage xml -o coverage.xml')
|
|
380
391
|
print("✓ Tests completed")
|
|
@@ -468,7 +479,7 @@ def pipelinelocal(ctx: Context, settings='backend.test_settings', pylintrc=None)
|
|
|
468
479
|
print("\n" + "=" * 60)
|
|
469
480
|
print(f"Step {'2' if project_type == 'backend' else '1'}: Running tests...")
|
|
470
481
|
print("=" * 60)
|
|
471
|
-
step('tests', test, ctx, settings)
|
|
482
|
+
step('tests', test, ctx, settings, warn=True)
|
|
472
483
|
|
|
473
484
|
print("\n" + "=" * 60)
|
|
474
485
|
print(f"Step {'3' if project_type == 'backend' else '2'}: Running SonarQube analysis...")
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "itw_python_builder"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.52"
|
|
8
8
|
description = "Standardized Django deployment pipeline with Docker, testing, and SonarQube integration"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
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
|
{itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/requires.txt
RENAMED
|
File without changes
|
{itw_python_builder-0.1.50 → itw_python_builder-0.1.52}/itw_python_builder.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|