Compare commits

...
3 Commits
Author SHA1 Message Date
devx-ci-bot 5f08e23e09 release: v0.51.0 [skip ci] 2026-08-25 16:38:30 +00:00
emo 9fa41457f2 DEVX-157: feat: add role defaults path to create_dependency_pr search
Post-merge / detect-and-configure (push) Successful in 14s
Post-merge / release-and-maintain (push) Successful in 1m20s
Co-authored-by: emo <emo@oblachno.com>
2026-08-25 16:37:45 +00:00
gitea-actions-bot f62fe16c1b chore: update badge URLs to commit c35a676f [skip ci] 2026-08-24 22:23:22 +00:00
7 changed files with 52 additions and 21 deletions
+6
View File
@@ -2,6 +2,12 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [0.51.0] - 2026-08-25
### Features
- Add role defaults path to create_dependency_pr search
## [0.50.2] - 2026-08-24 ## [0.50.2] - 2026-08-24
### Bug Fixes ### Bug Fixes
+9 -9
View File
@@ -16,12 +16,12 @@ quality badges.
[![CI](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions/workflows/ci.yml/badge.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![CI](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions/workflows/ci.yml/badge.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![License: GPL-3.0](https://img.shields.io/badge/license-GPL--3.0-blue)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/src/branch/master/LICENSE) [![License: GPL-3.0](https://img.shields.io/badge/license-GPL--3.0-blue)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/src/branch/master/LICENSE)
[![Coverage](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/coverage.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Coverage](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/coverage.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Tests](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/tests.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Tests](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/tests.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Docs](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/docs.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/wiki) [![Docs](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/docs.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/wiki)
[![Code Quality](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/quality.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Code Quality](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/quality.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Version](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/version.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/releases) [![Version](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/version.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/releases)
[![Python](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/python.svg)](https://www.python.org/downloads/) [![Python](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/python.svg)](https://www.python.org/downloads/)
## Why devx? ## Why devx?
@@ -87,7 +87,7 @@ extra index and list devx in your dependencies:
```toml ```toml
[project] [project]
dependencies = [ dependencies = [
"devx>=0.50.2", "devx>=0.51.0",
] ]
[tool.pip] [tool.pip]
@@ -101,8 +101,8 @@ pip install -e .
``` ```
> **Note:** If your project requires a specific devx version, pin it in > **Note:** If your project requires a specific devx version, pin it in
> `dependencies` (for example, `"devx==0.50.2"`) or use a version constraint > `dependencies` (for example, `"devx==0.51.0"`) or use a version constraint
> (for example, `"devx>=0.50.2,<0.51"`). > (for example, `"devx>=0.51.0,<0.52"`).
### Optional extras ### Optional extras
+8 -8
View File
@@ -12,12 +12,12 @@ project to be reusable across all oblachno-oss repositories.
[![CI](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions/workflows/ci.yml/badge.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![CI](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions/workflows/ci.yml/badge.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![License: GPL-3.0](https://img.shields.io/badge/license-GPL--3.0-blue)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/src/branch/master/LICENSE) [![License: GPL-3.0](https://img.shields.io/badge/license-GPL--3.0-blue)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/src/branch/master/LICENSE)
[![Coverage](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/coverage.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Coverage](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/coverage.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Tests](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/tests.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Tests](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/tests.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Docs](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/docs.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/wiki) [![Docs](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/docs.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/wiki)
[![Code Quality](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/quality.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions) [![Code Quality](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/quality.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/actions)
[![Version](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/version.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/releases) [![Version](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/version.svg)](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/releases)
[![Python](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/3e50818d1724735423d2e7f1ec42050055524fc5/python.svg)](https://www.python.org/downloads/) [![Python](https://git.oblachno.oblachno.fyi/oblachno-oss/devx/raw/commit/c35a676f16439b78b79bd9ba70ca8f19bf39e4bb/python.svg)](https://www.python.org/downloads/)
## Overview ## Overview
@@ -74,14 +74,14 @@ Add devx to your `pyproject.toml` dependencies and configure the registry:
```toml ```toml
[project] [project]
dependencies = [ dependencies = [
"devx>=0.50.2", "devx>=0.51.0",
] ]
[tool.pip] [tool.pip]
extra-index-url = "https://git.oblachno.oblachno.fyi/api/packages/oblachno-oss/pypi/simple" extra-index-url = "https://git.oblachno.oblachno.fyi/api/packages/oblachno-oss/pypi/simple"
``` ```
Pin a specific version if needed: `"devx==0.50.2"` or `"devx>=0.50.2,<0.51"`. Pin a specific version if needed: `"devx==0.51.0"` or `"devx>=0.51.0,<0.52"`.
### Optional extras ### Optional extras
+24
View File
@@ -0,0 +1,24 @@
# DEVX-157: Add role defaults path to create_dependency_pr search
## Problem
`create_dependency_pr` only searches `pyproject.toml` and the infra images vars file for pinned versions. The sso-bridge role pins its version in its role defaults file via `sso_bridge_version`, which is not searched.
## Approach
Add the sso-bridge role defaults path to the search paths.
REQ-1: Add ROLE_DEFAULTS_PATH constant pointing to the sso-bridge role defaults file
REQ-2: Include ROLE_DEFAULTS_PATH in the search loop
## Test Plan
- Verify existing tests pass
- Verify find_pinned_version finds sso_bridge_version in the defaults file
## Deploy Plan
- Merge to master, auto-release new devx version
## Rollback Plan
- Revert the merge commit
## Acceptance Criteria
- [x] REQ-1: ROLE_DEFAULTS_PATH constant added
- [x] REQ-2: search loop includes ROLE_DEFAULTS_PATH
+2 -2
View File
@@ -48,12 +48,12 @@ Add devx to your `pyproject.toml`:
```toml ```toml
[project] [project]
dependencies = [ dependencies = [
"devx>=0.50.2", "devx>=0.51.0",
] ]
[project.optional-dependencies] [project.optional-dependencies]
dev = [ dev = [
"devx>=0.50.2", "devx>=0.51.0",
] ]
``` ```
+1 -1
View File
@@ -6,4 +6,4 @@ create_dependency_pr, auto_merge, release, publish), developer tooling
molecule testing helpers for Ansible projects. molecule testing helpers for Ansible projects.
""" """
__version__ = "0.50.2" __version__ = "0.51.0"
+2 -1
View File
@@ -38,6 +38,7 @@ load_dotenv()
# Where infra pins dependency versions # Where infra pins dependency versions
PYPROJECT_PATH = "pyproject.toml" PYPROJECT_PATH = "pyproject.toml"
IMAGES_YML_PATH = "ansible/group_vars/all/images.yml" IMAGES_YML_PATH = "ansible/group_vars/all/images.yml"
ROLE_DEFAULTS_PATH = "ansible/roles/sso_bridge/defaults/main.yml"
def find_pinned_version(package: str, file_path: str) -> str | None: def find_pinned_version(package: str, file_path: str) -> str | None:
@@ -130,7 +131,7 @@ def cli(
# Find current pinned version # Find current pinned version
old_version = None old_version = None
changed_file = None changed_file = None
for f in [PYPROJECT_PATH, IMAGES_YML_PATH]: for f in [PYPROJECT_PATH, IMAGES_YML_PATH, ROLE_DEFAULTS_PATH]:
old_version = find_pinned_version(package, f) old_version = find_pinned_version(package, f)
if old_version: if old_version:
changed_file = f changed_file = f