Closed bgklika closed 1 year ago
When check the original issue found another: OTF use case sensetive parsing of recipe files. For example it use string "URI" as key for Artifacts URIs. It matched to AWS IoT Greengrass component recipe reference.
But when open Greengrass/Components on IoT Core and view JSON or YAML format of recipe of existing component - for example EMQX we can see "Uri" instead of "URI". That means recipes from IoT Core can't be directly used in OTF scenarios.
Describe the bug When we create (or use existing component) recipe for component run on Linux and Windows we can't use Platform due to Artifacts does not found. Looks like OTF code searching only for global but not inside Platform Artifacts/URL.
Priority Critical due to now component can't provide different artifacts for Linux and Windows
To Reproduce Create multi-platform component in local-store and try to deploy it. Simplest way just take existing multi-platform component and adapt URLs to point to local-store artifacts.
Expected behavior Correct recipe should be processed and platform-specific artifacts used.
Actual behavior Code can't found artifact URLs in recipe and failed on next steps with exception:
Environment
Additional context Untested workaround: provide artifacts for all Platform outside Platform array. But that mean we need to add in uber jar large artifacts for another platform.