-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update connector packaging to support Inline Binary definitions (#182)
# Update connector packaging to support multi-platform CLI binaries This PR updates our GitHub Actions workflow to support building and packaging CLI binaries for multiple platforms while following the latest connector packaging specification. The changes introduce a more robust approach to creating platform-specific CLI binaries and generating the corresponding metadata for the Hasura CLI plugin system. ## Key Changes ### Multi-Platform Binary Support The build workflow now creates platform-specific binaries for: - Linux (x86_64 and ARM64) - macOS (x86_64 and ARM64) - Windows (x86_64) ### Enhanced Build and Packaging Process Each binary is properly named and packaged following Hasura's conventions, with SHA256 checksums generated for verification. The binaries are combined into a single tarball (cli.tar.gz) that gets attached to GitHub releases. ### Updated CLI Initialization The CLI initialization command has been enhanced to support the new binary CLI manifest format. This manifest contains platform-specific information including download URLs, SHA256 checksums, and binary paths. When initializing a new connector configuration, the CLI can now embed this manifest into the connector metadata, enabling the Hasura CLI to automatically download and use the correct binary for the user's platform. ### Modernized Metadata Generation The connector metadata generation has been updated to align with the latest specification from the packaging RFC. Notable changes include: - Added support for version field in metadata - Enhanced environment variable definitions to include required flag - Updated command definitions to support more flexible command types (string, dockerized, shell script) - Implemented the new BinaryInline CLI plugin definition format - Added support for native toolchain definitions and documentation links ## Impact These changes make our connector more portable across different platforms while maintaining security through checksum verification. The updated metadata format provides better integration with the Hasura ecosystem and improved user experience through platform-specific binary selection. ## Testing - Verified binary builds for all supported platforms - Tested metadata generation with the new CLI manifest - Confirmed tarball creation and manifest combination - Validated GitHub release artifacts ## Related - RFC: https://github.com/hasura/ndc-hub/blob/main/rfcs/0011-cli-and-connector-packaging.md
- Loading branch information
1 parent
06f0593
commit 95fffd5
Showing
3 changed files
with
219 additions
and
33 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
Oops, something went wrong.