Add greengrassComponentName — the deployment system's one underivable fact - #7
Merged
Merged
Conversation
…fact A deployment targeting Greengrass must name each component exactly as it is published - and that name is NOT derivable from the catalog `name`: `opcua-adapter` publishes as `OpcUaAdapter`, `ethernet-ip-adapter` as `EthernetIpAdapter`. The registry is the canonical home (it already carries the sibling `library` packaging coordinate); `deployment lock` resolves it from here and commits it into the lock, after which a definition no longer has to carry an override. The 9 values are harvested from each component's own recipe.yaml ComponentName - the source of truth - not hand-typed. The two entries without one (ec-uns-cmd, ec-secrets) publish no Greengrass component, which the schema states is a legitimate omission. Note: components.json has two PRE-EXISTING schema violations unrelated to this change (ec-uns-cmd and ec-secrets use category "tool", which the schema enum does not allow). This change adds no new violations; the error set is identical before and after. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsX7cWVGLszurNYMVwMJGo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A deployment targeting Greengrass must name each component exactly as published, and that name is not derivable from the catalog
name:opcua-adapterpublishes asOpcUaAdapter,ethernet-ip-adapterasEthernetIpAdapter.The registry is the canonical home (it already carries the sibling
librarypackaging coordinate).deployment lockwill resolve it from here into the lock file, after which a definition no longer needs anartifact.greengrassNameoverride.The 9 values are harvested from each component's own
recipe.yamlComponentName— the source of truth — not hand-typed.ec-uns-cmdandec-secretspublish no Greengrass component; the schema states that omission is legitimate.components.jsonalready fails its own schema —ec-uns-cmdandec-secretsusecategory: "tool", which the enum does not allow. This PR adds no new violations (identical error set before and after). Happy to fix separately: either addtoolto the enum or recategorise those two.Companion to edgecommons/edgecommons#63 (the Greengrass renderer).
🤖 Generated with Claude Code
https://claude.ai/code/session_01LsX7cWVGLszurNYMVwMJGo