Skip to main content

azldev-remove-component

Read this before deleting or dropping a component; there is no azldev remove command, so doing it wrong leaves dangling state. Explains the manual removal workflow for deleting component metadata, cleaning references, and validating any related output-affecting changes. Triggers include remove component, delete package, drop component, prune dependency.

Informações da origem

Repositório
microsoft/azurelinux
Última atividade na origem
14 de outubro de 2026 às 20:54
Idioma detectado do SKILL.md
inglês
Estrelas
5.353
Forks
710

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
azldev-remove-component
description
Read this before deleting or dropping a component; there is no azldev remove command, so doing it wrong leaves dangling state. Explains the manual removal workflow for deleting component metadata, cleaning references, and validating any related output-affecting changes. Triggers include remove component, delete package, drop component, prune dependency.
# Remove a component There is **no `azldev` command to remove a component** — it is a manual edit. A deletion-only change needs no package build, but changes to dependents, package/image configuration, or other built inputs must follow the repository's normal validation requirements. The steps below delete the component's definition, lock, and rendered spec, then clean up references. ## Before you start Confirm the component exists and inspect its resolved configuration: ```sh azldev comp list -p <name> -q -O json ``` Check for **reverse dependencies** first: if other components `BuildRequires` or `Requires` this one, removing it breaks their builds. Search the tree for the component name. Identify its binary subpackage names from the rendered output under `specs/<first-char>/<name>/`, then search for those names too. `azldev comp query` currently supports local spec sources only, not the usual upstream spec source. ## Steps 1. **Remove the definition.** Delete the component's dedicated `<name>/<name>.comp.toml` directory, or remove its inline `[components.<name>]` entry from whichever included TOML defines it. 2. **Remove publish / package config references.** If your project configures publish channels or package groups, drop any references to the component or to its binary subpackages. Publishing is component-scoped; per-binary exceptions are binary-RPM-scoped — search for both. 3. **Remove the lock.** There is no azldev command for this: ```sh rm locks/<name>.lock ``` 4. **Remove the rendered spec.** Let azldev prune orphaned spec directories: ```sh azldev comp render -a --clean-stale ``` `--clean-stale` (only valid with `-a`) removes rendered-spec directories that no longer correspond to a configured component. It re-renders everything, so it is slow; for a targeted removal you can instead delete the component's rendered spec under `specs/` by hand. 5. **Check other references.** Grep for the component (and its binary names) in image definitions and any `*.kiwi` / package-list files, and remove or replace them — an image that installs a now-removed package will not build. ## Verify ```sh azldev comp list -p <name> -q -O json # should report the component is not found ``` Also confirm the lock and rendered spec directory are gone and that no image or package configuration still references the component. If the removal required changes to dependents or package/image configuration, build and test the affected outputs according to the repository's normal validation policy. ## Notes - **Dependents with manual release.** If removing this component forces a change in a *dependent* (e.g. dropping a `BuildRequires`), and that dependent sets `release.calculation = "manual"`, bump its release counter yourself in the same change. Components with automatic release calculation (`auto`, `autorelease`, `static`) are handled by the normal commit/render/amend cycle. - **Remove exclusive dependencies together.** If a package is only needed by the component you are dropping, remove it in the same change to keep the tree consistent. Generated by `azldev docs agent`; do not hand-edit.
Ver no GitHub