Labsco
Labsco/Plugins/openshift/hypershift
PLUGIN / OPENSHIFT

HyperShift Development Workflow

For people changing HyperShift itself rather than running it: the plugin brings only the project's commit-message rules. Its build-and-test skills for Amazon's cloud and its expert agents work only in a cloned copy of the code.

OFFICIAL★ 527 GitHub starsApache-2.0Read the official docs ↗

Labsco Summary

ShowHide
Installs HyperShift's house style for commits; its build skills, test-cluster skills and expert agents run only from your cloned copy.

Written for contributors, not cluster operators.

Everything here is for someone about to change the code in this repository, and for nobody else. Almost none of it helps you run a hosted OpenShift cluster; it helps you change the thing that creates one.

Installed as a plugin, it brings one skill: HyperShift's rules for a commit message. Those are a first line that names the kind of change, a Signed-off-by line on every commit, and the project's limits on line length. The rules are written for this project alone.

The other skills need the repository itself.

The repository's other skills are contributor and CI tools, and this install leaves them out. They load only when the assistant starts in your own cloned copy. Between them they cover checking an edit:

  • packaging a changed component as an image and pushing it
  • a throwaway test cluster on Amazon's cloud, removed afterwards with everything it created
  • running the end-to-end suite, and reading why it failed
  • the project's Go style, and its one-working-copy-per-change routine

The test-cluster and end-to-end ones need a real AWS account, because they create and destroy live cloud infrastructure.

So do the five expert agents.

Five expert agents are kept back the same way, and need that cloned copy too. Each one takes a single area of the project:

  • the design of the project's API: the hostedCluster, hostedControlPlane and nodePool definitions
  • code for one cloud: Amazon, Azure, Google or IBM
  • the central side that runs each hosted cluster's control plane
  • node pools and their machines
  • changes that cross all of these, judged against the project's architecture rules

Each answers with recommendations and the reasons for them, a diagram, the code change, and tests for it.