LaunchPad Integration into the opensource repository#367
Merged
Conversation
Introduce composite GitHub Actions that wrap the Create-a-Container API (create, get, delete, wait-for-job) and a README documenting usage and versioning. Also tweak NetBox integration: update create-container log text, make findClusterId return null when not found, resolve both cluster and site IDs in createVirtualMachine, require at least one of cluster or site (fail loudly if neither), and emit cluster/site fields only when present. These changes improve CI ergonomics and make NetBox handling more robust for site-only configurations.
NetBox stores VM disk sizes in megabytes (and displays them by dividing by 1000), so convert gigabyte values to MB before sending. Add MB_PER_GB = 1000 and multiply diskGb by this constant in createVirtualMachine and updateVirtualMachine to ensure correct disk sizing in NetBox.
runleveldev
reviewed
Jun 19, 2026
runleveldev
approved these changes
Jun 19, 2026
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.
This pull request introduces a set of reusable composite GitHub Actions for interacting with the Create-a-Container API, along with improvements to the NetBox integration logic to better handle cluster/site lookups and disk size units. The new actions standardize API calls in CI workflows and provide clear, maintainable interfaces for container lifecycle operations. Additionally, the NetBox utility functions are enhanced for better compatibility and error handling.
GitHub Actions: Container API wrappers
.github/actions:create-container: Creates a container via the API, returning job and container IDs, and handles synchronous/asynchronous creation logic.get-container: Fetches container details by hostname, exposing key properties as outputs.delete-container: Deletes a container by ID, with output indicating success.wait-for-job: Polls a job until completion, failure, or timeout, with configurable polling..github/actions/README.mdexplaining the purpose, usage, and versioning strategy for these actions.NetBox integration improvements
nullinstead of throwing when a cluster is not found, improving flexibility in site/cluster resolution.Documentation and clarity
These changes provide a robust foundation for CI/CD workflows that interact with the container API and ensure the NetBox integration is resilient and standards-compliant.