feat(resource): add container infrastructure resource types #1045

Merged
hamza.khyari merged 1 commit from feature/container-resource-types into master 2026-03-30 14:06:25 +00:00
Member

Summary

Adds 7 container infrastructure resource types per ADR-039.

Types

  • container-runtime (none, user-addable) -- Container engine
  • container-image (none, user-addable) -- Container image
  • container-mount (snapshot) -- Bind/volume mount
  • container-exec-env (snapshot) -- Exec environment
  • container-port (snapshot) -- Port mapping
  • container-volume (snapshot, user-addable) -- Named volume
  • container-network (none) -- Container network

Changes

  • 7 YAML configs, _resource_registry_container.py, updated container-instance hierarchy
  • 33 Behave scenarios + 4 Robot tests
  • Updated BUILTIN_NAMES, service docstring, CHANGELOG

ISSUES CLOSED: #831

## Summary Adds 7 container infrastructure resource types per ADR-039. ## Types - `container-runtime` (none, user-addable) -- Container engine - `container-image` (none, user-addable) -- Container image - `container-mount` (snapshot) -- Bind/volume mount - `container-exec-env` (snapshot) -- Exec environment - `container-port` (snapshot) -- Port mapping - `container-volume` (snapshot, user-addable) -- Named volume - `container-network` (none) -- Container network ## Changes - 7 YAML configs, `_resource_registry_container.py`, updated container-instance hierarchy - 33 Behave scenarios + 4 Robot tests - Updated BUILTIN_NAMES, service docstring, CHANGELOG ISSUES CLOSED: #831
hamza.khyari added this to the v3.6.0 milestone 2026-03-18 11:42:15 +00:00
freemo approved these changes 2026-03-19 04:55:46 +00:00
Dismissed
freemo left a comment

Code Review — PR #1045 feat(resource): add container infrastructure resource types

Well-structured data-driven PR. Each of the 7 resource types is defined both as a Python dict (for bootstrap) and a YAML config (for documentation/schema validation). The hierarchy (container-runtimecontainer-image / container-volume / container-network / container-instancecontainer-mount / container-exec-env / container-port) is logically sound.

33 Behave scenarios + 4 Robot tests provide thorough coverage including YAML loading, domain model, parent/child relationships, user_addable, BUILTIN_NAMES, and bootstrap.

Approved. Note: this PR and #1046 both modify _resource_registry_data.py and resource_type.py in non-overlapping sections — merging one will require a rebase of the other. Consider merging #1045 first since #1046's lsp-server type references container-instance/container-exec-env as parents.

## Code Review — PR #1045 `feat(resource): add container infrastructure resource types` Well-structured data-driven PR. Each of the 7 resource types is defined both as a Python dict (for bootstrap) and a YAML config (for documentation/schema validation). The hierarchy (`container-runtime` → `container-image` / `container-volume` / `container-network` / `container-instance` → `container-mount` / `container-exec-env` / `container-port`) is logically sound. 33 Behave scenarios + 4 Robot tests provide thorough coverage including YAML loading, domain model, parent/child relationships, user_addable, BUILTIN_NAMES, and bootstrap. **Approved.** Note: this PR and #1046 both modify `_resource_registry_data.py` and `resource_type.py` in non-overlapping sections — merging one will require a rebase of the other. Consider merging #1045 first since #1046's `lsp-server` type references `container-instance`/`container-exec-env` as parents.
Owner

Day 43 Review — Rebase Required

This PR has merge conflicts with master and cannot be merged in its current state. This is one of 9 Hamza PRs in the resource/LSP domain (v3.5.0-v3.6.0) that all have conflicts. These PRs likely share a common dependency chain and should be rebased sequentially.

@hamza.khyari: Please rebase onto current master. If multiple PRs depend on each other, start with the base PR in the chain and work upward.

Rebase priority: HIGH — these PRs represent significant feature work that is blocked by merge conflicts. Every day they remain conflicted is a day they cannot be reviewed or merged.

**Day 43 Review — Rebase Required** This PR has merge conflicts with `master` and cannot be merged in its current state. This is one of 9 Hamza PRs in the resource/LSP domain (v3.5.0-v3.6.0) that all have conflicts. These PRs likely share a common dependency chain and should be rebased sequentially. @hamza.khyari: Please rebase onto current `master`. If multiple PRs depend on each other, start with the base PR in the chain and work upward. **Rebase priority**: HIGH — these PRs represent significant feature work that is blocked by merge conflicts. Every day they remain conflicted is a day they cannot be reviewed or merged.
hamza.khyari force-pushed feature/container-resource-types from 3c61c8b59c
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 17s
CI / quality (pull_request) Successful in 25s
CI / build (pull_request) Successful in 26s
CI / typecheck (pull_request) Successful in 45s
CI / security (pull_request) Successful in 1m37s
CI / unit_tests (pull_request) Failing after 3m11s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 4m36s
CI / integration_tests (pull_request) Successful in 6m18s
CI / coverage (pull_request) Successful in 6m30s
CI / benchmark-regression (pull_request) Successful in 38m30s
to 2de702c4f0
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 1m16s
CI / lint (pull_request) Successful in 3m19s
CI / build (pull_request) Successful in 17s
CI / helm (pull_request) Successful in 22s
CI / security (pull_request) Successful in 4m16s
CI / quality (pull_request) Successful in 4m9s
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
2026-03-30 10:37:45 +00:00
Compare
hamza.khyari dismissed freemo's review 2026-03-30 10:37:45 +00:00
Reason:

New commits pushed, approval review dismissed automatically according to repository settings

hamza.khyari force-pushed feature/container-resource-types from 2de702c4f0
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 1m16s
CI / lint (pull_request) Successful in 3m19s
CI / build (pull_request) Successful in 17s
CI / helm (pull_request) Successful in 22s
CI / security (pull_request) Successful in 4m16s
CI / quality (pull_request) Successful in 4m9s
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
to f78fa48fc0
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 19s
CI / typecheck (pull_request) Successful in 43s
CI / quality (pull_request) Successful in 31s
CI / build (pull_request) Successful in 15s
CI / helm (pull_request) Successful in 40s
CI / security (pull_request) Successful in 4m29s
CI / integration_tests (pull_request) Failing after 3m52s
CI / unit_tests (pull_request) Failing after 4m45s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 5m46s
CI / coverage (pull_request) Failing after 11m13s
CI / benchmark-regression (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
2026-03-30 10:46:00 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from f78fa48fc0
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 19s
CI / typecheck (pull_request) Successful in 43s
CI / quality (pull_request) Successful in 31s
CI / build (pull_request) Successful in 15s
CI / helm (pull_request) Successful in 40s
CI / security (pull_request) Successful in 4m29s
CI / integration_tests (pull_request) Failing after 3m52s
CI / unit_tests (pull_request) Failing after 4m45s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 5m46s
CI / coverage (pull_request) Failing after 11m13s
CI / benchmark-regression (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
to 6498fec16e
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 16s
CI / helm (pull_request) Successful in 23s
CI / lint (pull_request) Successful in 3m41s
CI / integration_tests (pull_request) Failing after 3m54s
CI / typecheck (pull_request) Successful in 4m15s
CI / security (pull_request) Successful in 4m8s
CI / quality (pull_request) Successful in 4m9s
CI / unit_tests (pull_request) Failing after 4m16s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 4m51s
CI / coverage (pull_request) Failing after 8m55s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-regression (pull_request) Has been cancelled
2026-03-30 11:15:59 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from 6498fec16e
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 16s
CI / helm (pull_request) Successful in 23s
CI / lint (pull_request) Successful in 3m41s
CI / integration_tests (pull_request) Failing after 3m54s
CI / typecheck (pull_request) Successful in 4m15s
CI / security (pull_request) Successful in 4m8s
CI / quality (pull_request) Successful in 4m9s
CI / unit_tests (pull_request) Failing after 4m16s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 4m51s
CI / coverage (pull_request) Failing after 8m55s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-regression (pull_request) Has been cancelled
to e989088437 2026-03-30 12:13:32 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from e989088437 to 1707a43adf
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / quality (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / benchmark-publish (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / security (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
2026-03-30 12:13:34 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from 1707a43adf
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / quality (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / benchmark-publish (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / security (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
to 7a6dcfc791
All checks were successful
CI / lint (pull_request) Successful in 19s
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 21s
CI / build (pull_request) Successful in 23s
CI / quality (pull_request) Successful in 3m51s
CI / security (pull_request) Successful in 4m14s
CI / integration_tests (pull_request) Successful in 7m12s
CI / unit_tests (pull_request) Successful in 7m27s
CI / docker (pull_request) Successful in 1m55s
CI / coverage (pull_request) Successful in 9m1s
CI / e2e_tests (pull_request) Successful in 19m26s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 58m8s
2026-03-30 12:13:45 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from 7a6dcfc791
All checks were successful
CI / lint (pull_request) Successful in 19s
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 21s
CI / build (pull_request) Successful in 23s
CI / quality (pull_request) Successful in 3m51s
CI / security (pull_request) Successful in 4m14s
CI / integration_tests (pull_request) Successful in 7m12s
CI / unit_tests (pull_request) Successful in 7m27s
CI / docker (pull_request) Successful in 1m55s
CI / coverage (pull_request) Successful in 9m1s
CI / e2e_tests (pull_request) Successful in 19m26s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 58m8s
to 77782deff4
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 17s
CI / lint (pull_request) Successful in 22s
CI / helm (pull_request) Successful in 22s
CI / typecheck (pull_request) Successful in 1m3s
CI / integration_tests (pull_request) Successful in 3m45s
CI / quality (pull_request) Successful in 3m47s
CI / security (pull_request) Successful in 4m9s
CI / unit_tests (pull_request) Successful in 7m24s
CI / docker (pull_request) Successful in 1m22s
CI / coverage (pull_request) Successful in 8m53s
CI / e2e_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
2026-03-30 13:24:35 +00:00
Compare
hamza.khyari scheduled this pull request to auto merge when all checks succeed 2026-03-30 13:28:31 +00:00
hamza.khyari force-pushed feature/container-resource-types from 77782deff4
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 17s
CI / lint (pull_request) Successful in 22s
CI / helm (pull_request) Successful in 22s
CI / typecheck (pull_request) Successful in 1m3s
CI / integration_tests (pull_request) Successful in 3m45s
CI / quality (pull_request) Successful in 3m47s
CI / security (pull_request) Successful in 4m9s
CI / unit_tests (pull_request) Successful in 7m24s
CI / docker (pull_request) Successful in 1m22s
CI / coverage (pull_request) Successful in 8m53s
CI / e2e_tests (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
to 8be4508cd7
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 19s
CI / build (pull_request) Successful in 18s
CI / helm (pull_request) Successful in 23s
CI / quality (pull_request) Successful in 42s
CI / typecheck (pull_request) Successful in 45s
CI / security (pull_request) Successful in 59s
CI / benchmark-regression (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
2026-03-30 13:36:31 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from 8be4508cd7
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 19s
CI / build (pull_request) Successful in 18s
CI / helm (pull_request) Successful in 23s
CI / quality (pull_request) Successful in 42s
CI / typecheck (pull_request) Successful in 45s
CI / security (pull_request) Successful in 59s
CI / benchmark-regression (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
to f6a7faa4ce
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 23s
CI / build (pull_request) Successful in 29s
CI / lint (pull_request) Successful in 3m19s
CI / quality (pull_request) Successful in 3m45s
CI / typecheck (pull_request) Successful in 3m59s
CI / security (pull_request) Successful in 4m10s
CI / integration_tests (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
2026-03-30 13:39:21 +00:00
Compare
hamza.khyari force-pushed feature/container-resource-types from f6a7faa4ce
Some checks failed
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 23s
CI / build (pull_request) Successful in 29s
CI / lint (pull_request) Successful in 3m19s
CI / quality (pull_request) Successful in 3m45s
CI / typecheck (pull_request) Successful in 3m59s
CI / security (pull_request) Successful in 4m10s
CI / integration_tests (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
to 2370e19da8
All checks were successful
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 21s
CI / lint (pull_request) Successful in 27s
CI / helm (pull_request) Successful in 31s
CI / typecheck (pull_request) Successful in 1m9s
CI / quality (pull_request) Successful in 3m43s
CI / security (pull_request) Successful in 4m6s
CI / integration_tests (pull_request) Successful in 6m12s
CI / unit_tests (pull_request) Successful in 7m14s
CI / docker (pull_request) Successful in 2m7s
CI / coverage (pull_request) Successful in 11m52s
CI / e2e_tests (pull_request) Successful in 21m28s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 56m15s
2026-03-30 13:44:55 +00:00
Compare
hamza.khyari deleted branch feature/container-resource-types 2026-03-30 14:06:57 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core!1045
No description provided.