Skip to content

Feature branch sync - pub/rhel10.2 to pub/build_stream - #5377

Closed
abhishek-sa1 wants to merge 18 commits into
pub/build_streamfrom
pub/rhel10.2
Closed

abhishek-sa1 wants to merge 18 commits into
pub/build_streamfrom
pub/rhel10.2

Conversation

@abhishek-sa1

Copy link
Copy Markdown
Collaborator

PR Title

Description of the Solution

Related Issue

  • Fixes #

Changes

Component (path/to/files)

  • Change description

Files Changed

File Change Type Description
path/to/file Added / Modified / Deleted Brief description

Testing

  • Test or verification result

Backward Compatibility

  • Compatibility notes

Suggested Reviewers

Reviewer Review Focus
@reviewer-or-team Component, domain, security, test, or compatibility focus

SOWJANYAJAGADISH123 and others added 14 commits September 24, 2026 18:53
* feat(image_build_manager): add global image dictionary

Implement dictionary-aware catalog image reuse, catalog-versioned artifacts and status contracts, exact cleanup pruning, and BuildStream differential or lockstep execution integration.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(image_build_manager): use one rebuild control

Use build_image.force_rebuild as the single rebuild control for direct and BuildStream catalog builds, and align catalog schema version handling to an integer.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* test(image_build_manager): cover catalog dictionary workflows

Add isolated catalog reuse and rebuild scenarios, focused dictionary unit coverage, and enforce the latest project-level plus catalog-versioned build-status contracts.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(build_stream): remove duplicate rebuild mode

Use image_build_manager build_image.force_rebuild as the only rebuild control and remove the obsolete differential/lockstep configuration surface and tests.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* docs(image_build_manager): document catalog reuse commands

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix: address global dictionary review comments

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

---------

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>
#5348)

Add sequential RHEL minor-version contexts, version-qualified status endpoints, verified shared artifact reuse, container platform validation, and RPM repository recovery checkpoints.\n\nPreserve existing public tags, logs, status tables, and Pulp naming while documenting rerun, resync, cleanup, and policy behavior.
…R-BSM-002-cadence-polling-build) (#5345) (#5349)

* Implement cadence polling for BuildStream



* Fix CI failures



* Address review comments



---------

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
…false

fix(orchestrator): prevent silent cleanup failures and stale slurm node entries during reprovision
…hon3 fix (#5353)

* Add per-version base image package support and improve cleanup

- Add base_image_packages_by_version to support different package lists
  for RHEL 10.0 and 10.2 base images
- Update parse_catalog.py to handle version-specific base packages
- Change base image builds from sequential to parallel (max_parallel)
- Update build templates to use version-specific package lists
- Make cleanup_build_output version-aware to preserve other RHEL versions
  - Add cleanup_build_output_scope parameter (current/all)
  - Default: current (safe, preserves other versions)
  - all: destructive, removes all outputs (requires explicit opt-in)
- Add cleanup_hash_cache.yml to remove package hash cache files
- Update fetch_repo_manager_repos.yml for improved repo handling
- Remove version pin checks from base image builds (orchestrator handles failures)

This enables building base images for multiple RHEL versions (10.0, 10.2)
with appropriate package lists per version, and allows selective cleanup
without destroying historical build outputs.

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Add RHEL 10.0 and 10.2 catalog with python3 version fix

- Add catalog_rhel_10_0_rhel_10_2_x86.json for multi-version RHEL support
- Remove version pin from python3 packages to allow dnf to resolve
  correct version per RHEL release (3.12.9 for 10.0, 3.12.14 for 10.2)
- Update python3_3_12_9 to use unversioned python3 package
- Update service_k8s_cluster_group and service_kube_control_plane_group
  to use python3 instead of python3_3_12_9

This fixes the python3-devel version conflict where python3-devel-3.12.14
required python3 >= 3.12.14 but the catalog pinned python3-3.12.9 for both
RHEL 10.0 and 10.2.

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Simplify cleanup tags - use --tags cleanup without special tags

- Remove individual tags (minio, registry, output, s3cmd, etc.) from cleanup tasks
- All cleanup tasks now run with single --tags cleanup
- Simplify usage: ansible-playbook image_build_manager.yml --tags cleanup
- Update documentation to reflect simplified tag usage
- Keep cleanup_build_output_scope parameter for selective cleanup

This makes cleanup simpler and more intuitive without needing to remember
multiple tag names. Users can still selectively clean with:
  --tags cleanup -e cleanup_build_output_scope=all

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Simplify cleanup - remove all build outputs by default

- Remove cleanup_build_output_scope parameter
- Cleanup now deletes entire output_project_dir by default
- Simplify cleanup_build_output.yml to remove all status files
- Since images are deleted, there's no need to preserve status files
- Cleanup is now straightforward: --tags cleanup removes everything

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Update main.yml

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Delete src/main/samples/catalog_rhel_10_0_rhel_10_2_x86.json

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

---------

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>
* test(orchestrator): redesign validation automation

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* test(orchestrator): organize post-boot validation suites

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Co-authored-by: Sujit Jadhav <sujit.jadhav@dell.com>
…#5346)

* feat(orchestrator): persist node identity in SMD

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): make SMD identity vendor neutral

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): harden metadata and PXE reconciliation

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): align documentation suite

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): retain supported compatibility notes

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): document 2.2 to 2.3 changes

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): use Omnia metadata ownership label

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Signed-off-by: balajikumaran.cs <balajikumaran.cs@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
…5366)

* feat(repo_manager): support multi-version RHEL artifact reconciliation

Add sequential RHEL minor-version contexts, version-qualified status endpoints, verified shared artifact reuse, container platform validation, and RPM repository recovery checkpoints.\n\nPreserve existing public tags, logs, status tables, and Pulp naming while documenting rerun, resync, cleanup, and policy behavior.

* feat(repo_manager): support secure RHEL 10.0 and 10.2 reconciliation

Signed-off-by: Narthan_S <narthan.s@dell.com>

* Delete src/repo_manager/scripts directory

Signed-off-by: snarthan <narthan.s@dell.com>

---------

Signed-off-by: Narthan_S <narthan.s@dell.com>
Signed-off-by: snarthan <narthan.s@dell.com>
…dcoded values (#5370)

- Update discovery test framework to read OMNIA_DATA_PATH and
  OMNIA_PROJECT_NAME from target host environment variables
- Add DISCOVERY_DATA_PATH support for domain-specific override
- Remove hardcoded project_name and shared_path from test_config.yml
- Update validation to match image_build_manager pattern
- Use resolve_domain_input_path() and read_remote_env() from omnia_auto
- Align with other domains (image_build_manager, telemetry, utils)

This fixes test failures when OMNIA_DATA_PATH is not /opt/omnia
or OMNIA_PROJECT_NAME is not project_default.



Generated with [Devin](https://devin.ai)

Signed-off-by: esaifudheen <esaifudheen@dell.com>
Co-authored-by: esaifudheen <esaifudheen@dell.com>
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
* Fix NFT lifecycle baseline test and apptainer timeout

- Add NFT lifecycle test (test_lifecycle.py) to prove complete fresh-install
  lifecycle from verified clean baseline, addressing OMN-DEF #850
- Increase apptainer image download timeout from 1200s to 1800s to handle
  larger image downloads
- Fix OpenCHAMI cleanup pause task causing ENOTTY error on non-interactive
  execution by replacing ansible.builtin.pause with ansible.builtin.wait_for
- Preserve credentials during lifecycle baseline cleanup to avoid interactive
  password prompts in subsequent prepare phase
- Improve NFT error messages to show concise failure details instead of
  generic HOW TO FIX boilerplate
- Add lifecycle marker to domain configuration and conftest

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

* Add lifecycle provision verification and fix Slurm cleanup for re-provision

- Add check_lifecycle_provision_verify to run FVT provision checks after lifecycle
- Fix load_runtime_context to handle missing pxeboot_status.yml gracefully
- Fix check_node_cloud_init to use direct SSH probe when pxeboot_status.yml is missing
- Add Slurm control node service stop during cleanup to prevent reconfigure failures
- Register lifecycle_provision_verify test case and add test_lifecycle_provision_verify

This enables verification of provision state after the fresh-install lifecycle
and fixes issues where Slurm reconfigure fails when nodes are powered on.

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

* Added the same logic as of 2.2 for 2.3 slurmctld reconfigure

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

---------

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
…documentation (#5373)

* Add build_stream pipeline with prepare_base stage and cleanup_build_stream

- Added .gitlab-ci-build-stream.yml with build_stream pipeline support
- Added cleanup_build_stream stage to both build-stream and cluster pipelines
- Added prepare_base stage to build-stream pipeline (combines repo_manager, image_build_manager, orchestrator setup)
- Removed individual deploy stages (repo_manager, image_build_manager, orchestrator) from build-stream
- Updated test stages to depend on prepare_base instead of individual deploy stages
- Updated summary stage to reflect new pipeline structure
- Updated documentation for build_stream pipeline changes
- Updated setup_gitlab_project.py for build_stream support

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* fixed variable name

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* updated build_stream pipeline

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Add comprehensive build_stream pipeline support to setup scripts and documentation

This commit adds full build_stream pipeline support across the Omnia CI/CD pipeline:

**setup_gitlab_project.py changes:**
- Fixed load_pipeline_config() to read build_stream_enable from pipeline_config.yml
- Fixed generate_cluster_build_stream_trigger_job() to include BUILD_STREAM_TAGS variable
- Fixed cmd_create() config-file mode to set BUILD_STREAM_ENABLE global default
- Ensured all build_stream input files and test configs are collected and committed

**pipeline_config.yml changes:**
- Added global.build_stream_enable setting to enable build_stream pipeline mode
- Added deploy_tags.build_stream for ansible tags configuration
- Added test_commands.build_stream with default test command
- Updated domains documentation to mention build_stream as valid domain
- Updated skip_stages documentation to include build_stream

**Documentation additions:**
- Created comprehensive BUILD_STREAM_PIPELINE.md guide covering:
  * Overview and key differences from cluster pipeline
  * Pipeline stages and conditional execution
  * prepare_base stage explanation
  * Configuration reference for all variables
  * Real-world deployment examples
  * Input files and credentials setup
  * Troubleshooting guide
- Updated docs/README.md to reference BUILD_STREAM_PIPELINE.md
- Added build_stream links to common tasks and getting started sections

**Pipeline YAML changes:**
- .gitlab-ci-build-stream.yml: Added TEST_BUILD_STREAM_CMD fallback logic
- .gitlab-ci-cluster.yml: Added TEST_CMD fallback logic for all test stages
- .gitlab-ci-utils.yml: Added TEST_UTILS_CMD fallback logic
- .gitlab-ci.yml: Already includes build_stream trigger job generation

**Test command fallback mechanism:**
All test stages now use bash parameter expansion to fall back to defaults if CI/CD
variables are empty or unset, preventing empty command execution.

**Report naming:**
Summary stages now rename downloaded test reports to include pipeline ID for
unique identification across multiple pipeline runs.

**Test Execution Summary:**
Email notifications now show all domains with appropriate status:
- Counts for domains with report data
- "No Report" for executed tests without report files
- "Not Executed" for test stages that didn't run

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

---------

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
* fix(orchestrator): use Omnia metadata ownership label

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): harden PXE lifecycle and OpenCHAMI trust

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
* Merge pull request #5347 from SAYUK09/fix/remove-blanket-failed-when-false

fix(orchestrator): prevent silent cleanup failures and stale slurm node entries during reprovision

* test(orchestrator): redesign validation automation (#5341)

* test(orchestrator): redesign validation automation

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* test(orchestrator): organize post-boot validation suites

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Co-authored-by: Sujit Jadhav <sujit.jadhav@dell.com>

* fix(test): correct report run identifier handling (#5359)

* feat(orchestrator): persist hardware identity and harden provisioning (#5346)

* feat(orchestrator): persist node identity in SMD

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): make SMD identity vendor neutral

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): harden metadata and PXE reconciliation

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): align documentation suite

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): retain supported compatibility notes

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* docs(orchestrator): document 2.2 to 2.3 changes

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): use Omnia metadata ownership label

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Signed-off-by: balajikumaran.cs <balajikumaran.cs@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>

* test(discovery): read paths from environment variables instead of hardcoded values (#5370)

- Update discovery test framework to read OMNIA_DATA_PATH and
  OMNIA_PROJECT_NAME from target host environment variables
- Add DISCOVERY_DATA_PATH support for domain-specific override
- Remove hardcoded project_name and shared_path from test_config.yml
- Update validation to match image_build_manager pattern
- Use resolve_domain_input_path() and read_remote_env() from omnia_auto
- Align with other domains (image_build_manager, telemetry, utils)

This fixes test failures when OMNIA_DATA_PATH is not /opt/omnia
or OMNIA_PROJECT_NAME is not project_default.



Generated with [Devin](https://devin.ai)

Signed-off-by: esaifudheen <esaifudheen@dell.com>
Co-authored-by: esaifudheen <esaifudheen@dell.com>
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>

* Fix NFT lifecycle baseline test and apptainer timeout (#5364)

* Fix NFT lifecycle baseline test and apptainer timeout

- Add NFT lifecycle test (test_lifecycle.py) to prove complete fresh-install
  lifecycle from verified clean baseline, addressing OMN-DEF #850
- Increase apptainer image download timeout from 1200s to 1800s to handle
  larger image downloads
- Fix OpenCHAMI cleanup pause task causing ENOTTY error on non-interactive
  execution by replacing ansible.builtin.pause with ansible.builtin.wait_for
- Preserve credentials during lifecycle baseline cleanup to avoid interactive
  password prompts in subsequent prepare phase
- Improve NFT error messages to show concise failure details instead of
  generic HOW TO FIX boilerplate
- Add lifecycle marker to domain configuration and conftest

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

* Add lifecycle provision verification and fix Slurm cleanup for re-provision

- Add check_lifecycle_provision_verify to run FVT provision checks after lifecycle
- Fix load_runtime_context to handle missing pxeboot_status.yml gracefully
- Fix check_node_cloud_init to use direct SSH probe when pxeboot_status.yml is missing
- Add Slurm control node service stop during cleanup to prevent reconfigure failures
- Register lifecycle_provision_verify test case and add test_lifecycle_provision_verify

This enables verification of provision state after the fresh-install lifecycle
and fixes issues where Slurm reconfigure fails when nodes are powered on.

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

* Added the same logic as of 2.2 for 2.3 slurmctld reconfigure

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>

---------

Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>

* Add comprehensive build_stream pipeline support to setup scripts and documentation (#5373)

* Add build_stream pipeline with prepare_base stage and cleanup_build_stream

- Added .gitlab-ci-build-stream.yml with build_stream pipeline support
- Added cleanup_build_stream stage to both build-stream and cluster pipelines
- Added prepare_base stage to build-stream pipeline (combines repo_manager, image_build_manager, orchestrator setup)
- Removed individual deploy stages (repo_manager, image_build_manager, orchestrator) from build-stream
- Updated test stages to depend on prepare_base instead of individual deploy stages
- Updated summary stage to reflect new pipeline structure
- Updated documentation for build_stream pipeline changes
- Updated setup_gitlab_project.py for build_stream support

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* fixed variable name

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* updated build_stream pipeline

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

* Add comprehensive build_stream pipeline support to setup scripts and documentation

This commit adds full build_stream pipeline support across the Omnia CI/CD pipeline:

**setup_gitlab_project.py changes:**
- Fixed load_pipeline_config() to read build_stream_enable from pipeline_config.yml
- Fixed generate_cluster_build_stream_trigger_job() to include BUILD_STREAM_TAGS variable
- Fixed cmd_create() config-file mode to set BUILD_STREAM_ENABLE global default
- Ensured all build_stream input files and test configs are collected and committed

**pipeline_config.yml changes:**
- Added global.build_stream_enable setting to enable build_stream pipeline mode
- Added deploy_tags.build_stream for ansible tags configuration
- Added test_commands.build_stream with default test command
- Updated domains documentation to mention build_stream as valid domain
- Updated skip_stages documentation to include build_stream

**Documentation additions:**
- Created comprehensive BUILD_STREAM_PIPELINE.md guide covering:
  * Overview and key differences from cluster pipeline
  * Pipeline stages and conditional execution
  * prepare_base stage explanation
  * Configuration reference for all variables
  * Real-world deployment examples
  * Input files and credentials setup
  * Troubleshooting guide
- Updated docs/README.md to reference BUILD_STREAM_PIPELINE.md
- Added build_stream links to common tasks and getting started sections

**Pipeline YAML changes:**
- .gitlab-ci-build-stream.yml: Added TEST_BUILD_STREAM_CMD fallback logic
- .gitlab-ci-cluster.yml: Added TEST_CMD fallback logic for all test stages
- .gitlab-ci-utils.yml: Added TEST_UTILS_CMD fallback logic
- .gitlab-ci.yml: Already includes build_stream trigger job generation

**Test command fallback mechanism:**
All test stages now use bash parameter expansion to fall back to defaults if CI/CD
variables are empty or unset, preventing empty command execution.

**Report naming:**
Summary stages now rename downloaded test reports to include pipeline ID for
unique identification across multiple pipeline runs.

**Test Execution Summary:**
Email notifications now show all domains with appropriate status:
- Counts for domains with report data
- "No Report" for executed tests without report files
- "Not Executed" for test stages that didn't run

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>

---------

Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>

* fix(orchestrator): harden PXE lifecycle and OpenCHAMI trust (#5369)

* fix(orchestrator): use Omnia metadata ownership label

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

* fix(orchestrator): harden PXE lifecycle and OpenCHAMI trust

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>

---------

Signed-off-by: balajikumaran-c-s <balajikumaran.cs@dell.com>
Signed-off-by: balajikumaran.cs <balajikumaran.cs@dell.com>
Signed-off-by: esaifudheen <esaifudheen@dell.com>
Signed-off-by: SujalS27 <sujal.sooryavamshi@dell.com>
Signed-off-by: Rohith Ravut <rohith.ravut@dellteam.com>
Co-authored-by: Sayuri Kamble <68416000+SAYUK09@users.noreply.github.com>
Co-authored-by: balajikumaran.cs <balajikumaran.cs@dell.com>
Co-authored-by: Sujit Jadhav <sujit.jadhav@dell.com>
Co-authored-by: saifudheene <Saifudheen.E@dell.com>
Co-authored-by: esaifudheen <esaifudheen@dell.com>
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: SujalS27 <Sujal.Sooryavamshi@dell.com>
Co-authored-by: Rohith Ravut <rohith.ravut@dellteam.com>
provisioners = {str(item.get("provisioner", "")) for item in storage_classes}
nfs_present = any("nfs" in value for value in provisioners)
csi_enabled = bool(config.get("enable_powerscale_csi", False))
csi_present = "csi-isilon.dellemc.com" in provisioners
@abhishek-sa1 abhishek-sa1 changed the title Pub/rhel10.2 Feature branch sync - pub/rhel10.2 to pub/build_stream Sep 28, 2026
Rajeshkumar-s2 and others added 4 commits September 29, 2026 11:32
* feat(build_stream): implement cadence polling and unified pipeline (ER-BSM-002-cadence-polling-build) (#5345)

* Implement cadence polling for BuildStream

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Fix CI failures

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Address review comments

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

---------

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Merge pub/rhel10.2 to pub/build_stream (#5352)

* feat(repo_manager): support multi-version RHEL artifact reconciliation (#5348)

Add sequential RHEL minor-version contexts, version-qualified status endpoints, verified shared artifact reuse, container platform validation, and RPM repository recovery checkpoints.\n\nPreserve existing public tags, logs, status tables, and Pulp naming while documenting rerun, resync, cleanup, and policy behavior.

* feat(image_build_manager): add global image dictionary (#5334)

* feat(image_build_manager): add global image dictionary

Implement dictionary-aware catalog image reuse, catalog-versioned artifacts and status contracts, exact cleanup pruning, and BuildStream differential or lockstep execution integration.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(image_build_manager): use one rebuild control

Use build_image.force_rebuild as the single rebuild control for direct and BuildStream catalog builds, and align catalog schema version handling to an integer.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* test(image_build_manager): cover catalog dictionary workflows

Add isolated catalog reuse and rebuild scenarios, focused dictionary unit coverage, and enforce the latest project-level plus catalog-versioned build-status contracts.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(build_stream): remove duplicate rebuild mode

Use image_build_manager build_image.force_rebuild as the only rebuild control and remove the obsolete differential/lockstep configuration surface and tests.

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* docs(image_build_manager): document catalog reuse commands

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix: address global dictionary review comments

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

---------

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

---------

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>
Co-authored-by: snarthan <narthan.s@dell.com>
Co-authored-by: SOWJANYAJAGADISH123 <Sowjanya.Jagadish@dell.com>

* refactor(build_stream): remove deprecated catalog_roles and generate_input_files APIs (#5354)

Remove deprecated APIs and infrastructure retired in Omnia 2.3 to simplify
the architecture and consolidate build stages. Each domain now consumes
the catalog directly instead of relying on intermediate API layers.

Key Changes:
- Remove /api/v1/catalog_roles API (deprecated in Omnia 2.3)
- Remove /api/v1/generate_input_files API (deprecated in Omnia 2.3)
- Remove GenerateInputFilesUseCase and related commands
- Remove nfs_build_image_inventory_repository (SQL repository is active)
- Consolidate build-image-x86_64 and build-image-aarch64 stages into unified build-image stage
- Simplify image_build_manager.yml entry point for all architectures
- Remove architecture-specific validation logic (364 lines)
- Clean up dependency injection container configuration
- Update documentation to reflect API retirement and stage consolidation
- Remove tests for deleted code (13 test files, ~3,600 lines)

Impact:
- No functional impact - all removed code was deprecated in Omnia 2.3
- Domains (repo_manager, image_build_manager) now consume catalog directly
- Simplified architecture with reduced code duplication
- Single build-image stage handles all architectures via playbook dispatch

Net Change: -5,666 lines (5,825 deletions, 159 additions)

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* feat(ER-BSM-002): complete catalog identity and repository reconciliation (#5355)

* fix(build_stream): persist catalog artifact identity

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* feat(repo_manager): add catalog exact-mirror reconciliation

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(repo_manager): harden repository metadata validation

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

---------

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* fix(build_stream): skip remote cleanup without GitLab host (#5357)

Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>

* Integration Issues and fixes found during testing  (#5371)

* refactor(build_stream): remove deprecated catalog_roles and generate_input_files APIs

Remove deprecated APIs and infrastructure retired in Omnia 2.3 to simplify
the architecture and consolidate build stages. Each domain now consumes
the catalog directly instead of relying on intermediate API layers.

Key Changes:
- Remove /api/v1/catalog_roles API (deprecated in Omnia 2.3)
- Remove /api/v1/generate_input_files API (deprecated in Omnia 2.3)
- Remove GenerateInputFilesUseCase and related commands
- Remove nfs_build_image_inventory_repository (SQL repository is active)
- Consolidate build-image-x86_64 and build-image-aarch64 stages into unified build-image stage
- Simplify image_build_manager.yml entry point for all architectures
- Remove architecture-specific validation logic (364 lines)
- Clean up dependency injection container configuration
- Update documentation to reflect API retirement and stage consolidation
- Remove tests for deleted code (13 test files, ~3,600 lines)

Impact:
- No functional impact - all removed code was deprecated in Omnia 2.3
- Domains (repo_manager, image_build_manager) now consume catalog directly
- Simplified architecture with reduced code duplication
- Single build-image stage handles all architectures via playbook dispatch

Net Change: -5,666 lines (5,825 deletions, 159 additions)

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Integration Issues and fixes found during testing

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Fix CI issues: add requests dependency and suppress Bandit B501

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

* Fix the failing UTs

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

---------

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>

---------

Signed-off-by: Rajeshkumar S <rajeshkumar.s2@dell.com>
Signed-off-by: SOWJANYAJAGADISH123 <sowjanya.jagadish@dell.com>
Co-authored-by: Abhishek S A <abhishek.sa3@dell.com>
Co-authored-by: snarthan <narthan.s@dell.com>
Co-authored-by: SOWJANYAJAGADISH123 <Sowjanya.Jagadish@dell.com>
Signed-off-by: Nagachandan-P <Nagachandan.p@dell.com>
#5389)

* feat(repo_manager): support secure RHEL 10.0 and 10.2 minor fixed on the repo_status.yml

Signed-off-by: Narthan_S <narthan.s@dell.com>

* feat(repo_manager): support secure RHEL 10.0 and 10.2 minor versions fixed on the repo_status.yml

Signed-off-by: Narthan_S <narthan.s@dell.com>

---------

Signed-off-by: Narthan_S <narthan.s@dell.com>
…diff/changelog skills (#5393)

Implements a comprehensive suite of AI skills for catalog management under ER-BSM-001, including master reference file, catalog generation, impact/compatibility analysis, catalog editing with pre-edit gate, and reversible diff/changelog engine. Adds Python tooling for catalog diff/patch operations and fixes schema validation issues.

Signed-off-by: venu <236371043+Venu-p1@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.