Skip to content

Project bootstrap#33

Merged
addyess merged 12 commits intomainfrom
project-bootstrap
Mar 5, 2026
Merged

Project bootstrap#33
addyess merged 12 commits intomainfrom
project-bootstrap

Conversation

@addyess
Copy link
Contributor

@addyess addyess commented Mar 5, 2026

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

  • Added .github/workflows/test-baseline-clusters.yml to automate multi-version Kubernetes cluster setup and testing using manifest-driven matrix jobs, with advanced failure handling, debug log collection, and issue creation.
  • Added .github/workflows/lint.yml for linting Python code and enforcing inclusive naming checks via Canonical's workflow.
  • Added .github/workflows/test.yml for running unit tests with pytest and tox on all pushes and pull requests.

Documentation & Developer Guidance

  • Added .github/copilot-instructions.md containing thorough documentation of project architecture, manifest structure, CLI commands, CI/CD patterns, error handling, and best practices for contributing and debugging.
  • Added .github/agents/python.md defining a Copilot custom agent for Python development, outlining expertise, approach, guidelines, and advanced capabilities for building robust Python applications.

addyess and others added 12 commits February 12, 2026 23:24
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
Copilot AI review requested due to automatic review settings March 5, 2026 18:34
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@addyess addyess merged commit 545699f into main Mar 5, 2026
7 checks passed
@addyess addyess deleted the project-bootstrap branch March 5, 2026 18:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants