You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: rename os-image-composer to ICT across entire codebase (open-edge-platform#523)
* refactor: rename os-image-composer to ict across entire codebase
- Update Go module path from os-image-composer to ict
- Rename cmd/os-image-composer/ to cmd/ict/
- Update CLI binary name, help text, and completion scripts
- Update config search paths (ict.yml, /etc/ict/, etc.)
- Update system paths (/var/cache/ict, /tmp/ict)
- Rename schema file to ict-config.schema.json
- Update Earthfile build targets and paths
- Update all documentation (.md) references
- Update GitHub Actions workflows and CODEOWNERS
- Update shell scripts and image template comments
- Rename architecture doc files to ict-* prefix
No logic or behavior changes - only names and string literals.
* refactor: rename ict to image-composer-tool per review feedback
- Replace all 'ict' references with 'image-composer-tool' across codebase
- Update Go module path to github.com/open-edge-platform/image-composer-tool
- Rename cmd/ict/ to cmd/image-composer-tool/
- Rename config/schema/doc files to image-composer-tool-* prefix
- Update Toolname from 'Image-Composer-dev' to 'Image-Composer-Tool-dev'
- Fix relative path in secure-boot doc (./tmp -> /tmp)
- Update README heading to 'Image Composer Tool (ICT)' per review
- Update CODEOWNERS team name to image-composer-tool-maintain
- Update all system paths, config paths, CLI references
Addresses PR review comments:
- copilot: Toolname default updated to match CLI branding
- copilot: secure-boot doc path fixed to absolute /tmp/...
- sgolebiewski-intel: README heading updated
* Fix lint and unit test
Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
* refactor: replace OIC references with ICT, update version Toolname
- Replace OIC_CDROM ISO label with ICT_CDROM
- Replace OIC_AI_PROVIDER env var with ICT_AI_PROVIDER
- Update Debian package description to use ICT instead of OIC
- Update Toolname default to Image-Composer-Tool-dev
* fix: update SVG title from OS Image Composer to ICT
---------
Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
Co-authored-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+15-15Lines changed: 15 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,8 @@
1
-
# Copilot Instructions for os-image-composer
1
+
# Copilot Instructions for image-composer-tool
2
2
3
3
## Architecture Overview
4
4
5
-
OS Image Composer builds custom Linux images from pre-built packages. Key components:
5
+
ICT builds custom Linux images from pre-built packages. Key components:
6
6
7
7
-**Provider** (`internal/provider/`) - Orchestrates builds per OS (azl, elxr, emt, rcd, ubuntu). Implements `Provider` interface with `Name`, `Init`, `PreProcess`, `BuildImage`, `PostProcess` methods. Each provider exports an `OsName` constant and a `Register()` function
-**Imports**: stdlib → third-party → local (blank line separated)
79
79
-**Struct-based design over globals** — prefer dependency injection
80
80
-**Interface naming**: should end with `-er` when possible (e.g., `PackageInstaller`, `ConfigReader`)
81
-
-**Named returns + defer for cleanup** — the standard cleanup pattern (not "goto fail"); see [coding style Section 4.3](../docs/architecture/os-image-composer-coding-style.md)
81
+
-**Named returns + defer for cleanup** — the standard cleanup pattern (not "goto fail"); see [coding style Section 4.3](../docs/architecture/image-composer-tool-coding-style.md)
82
82
-**Linters** (`earthly +lint`): `govet`, `gofmt`, `errcheck`, `staticcheck`, `unused`, `gosimple` — all errors must be handled (`errcheck` is enforced)
83
83
- Shell scripts: `set -euo pipefail`
84
-
- See `docs/architecture/os-image-composer-coding-style.md` for the full guide
84
+
- See `docs/architecture/image-composer-tool-coding-style.md` for the full guide
85
85
86
86
## Security
87
87
88
88
-**HTTP clients**: Always use `network.NewSecureHTTPClient()` or the singleton `network.GetSecureHTTPClient()` from `internal/utils/network/` — enforces TLS 1.2+ with approved cipher suites. Never use `http.DefaultClient`
89
89
-**Command execution**: Use the `internal/utils/shell/` package which maintains an allowlist of approved system commands. Never use raw `exec.Command()`
90
90
-**Input validation**: Sanitize user-provided filenames and paths; use `filepath.Clean()` on paths
91
-
-**Template validation**: Templates are validated against JSON schema (`os-image-template.schema.json`) via `os-image-composer validate`
91
+
-**Template validation**: Templates are validated against JSON schema (`os-image-template.schema.json`) via `image-composer-tool validate`
92
92
-**File permissions**: `0700` for chroot dirs, `0755` for general dirs, `0644` for data files, `0640` for log files
93
93
- CI runs **Trivy** (dependency vulnerability scanning — fails on HIGH/CRITICAL), **Gitleaks** (secret detection), and **Zizmor** (GitHub Actions security auditing)
94
94
@@ -100,16 +100,16 @@ Before opening a PR, check whether your changes affect any of these and update a
100
100
101
101
| What changed | Docs to update |
102
102
|---|---|
103
-
| CLI flags or commands |`docs/architecture/os-image-composer-cli-specification.md`, `docs/tutorial/usage-guide.md`|
103
+
| CLI flags or commands |`docs/architecture/image-composer-tool-cli-specification.md`, `docs/tutorial/usage-guide.md`|
104
104
| Build process or Earthfile targets |`docs/tutorial/usage-guide.md`, this file's **Build and Test** section |
0 commit comments