Merged
Conversation
Scaffold out the project to create kubeadm clusters on PRs and verify their installation. * Missing custom installation of kubernetes container services * Missing implementation of spread tests
* Understand why gh runners don't need cni-plugins * Create component for cni-plugins * Remove early debug * handle all installation methods * Address review comments
* Begin to implement image pull * Adjust hooks to not need arch passed * Bind kubeadm bootstrap to pre-pulled images defined by the manifest * Address review comments * Dynamic hook execution * Update src/kube_galaxy/pkg/components/kubeadm.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Address review comments * Golf --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Tidy up more of the components * Review comment
* First shots deploying with a calico CNI * Validate manifest applications * Validate kube-system is deployed * Update tests/unit/components/test_container_manifest.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply review comments --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Prepare for testing with spread * Ready CNCF validation * Prepared a Sonobouy component * Kubeadm bootstraps with no node taints * Review comments * Single out the kube-galaxy tasks from each component's spread suite.
* Rollup kubectl commands to a common library * Apply review comments * Additional unit tests * Apply review comments
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 comprehensive CI/CD automation and documentation for the Kubernetes Galaxy Test project. It adds three new GitHub Actions workflows for linting, unit testing, and baseline cluster testing, as well as detailed instructions for project architecture, workflows, and best practices. Additionally, it provides a custom agent definition for Python expertise. These changes collectively enable robust, multiarch Kubernetes testing with automated validation, error handling, and developer guidance.
CI/CD Workflows
.github/workflows/test-baseline-clusters.ymlto automate multi-version Kubernetes cluster setup and testing using manifest-driven matrix jobs, with advanced failure handling, debug log collection, and issue creation..github/workflows/lint.ymlfor linting Python code and enforcing inclusive naming checks via Canonical's workflow..github/workflows/test.ymlfor running unit tests with pytest and tox on all pushes and pull requests.Documentation & Developer Guidance
.github/copilot-instructions.mdcontaining thorough documentation of project architecture, manifest structure, CLI commands, CI/CD patterns, error handling, and best practices for contributing and debugging..github/agents/python.mddefining a Copilot custom agent for Python development, outlining expertise, approach, guidelines, and advanced capabilities for building robust Python applications.