Skip to content

The Openshift console plugin for Node Healthcheck and Self Node Remediation

Notifications You must be signed in to change notification settings

medik8s/node-remediation-console

Repository files navigation

Node Remediation Console Plugin

Provides a user friendly UI for the form, list and details view of the NodeHealthCheck CRD. The NodeHealthCheck Operator should be installed for the UI to be exposed.

Local development

In one terminal window, run:

  1. yarn install
  2. yarn run start

In another terminal window, run:

  1. oc login (requires oc and an OpenShift cluster)
  2. yarn run start-console (requires Docker or podman 3.2.0+)

This will run the OpenShift console in a container connected to the cluster you've logged into. The plugin HTTP server runs on port 9001 with CORS enabled. Navigate to http://localhost:9000/ and click on Compute -> NodeHealthChecks to see the running plugin.

Deployment on cluster

Docker image

Before you can deploy your plugin on a cluster, you must build an image and push it to an image registry.

  1. Build the image:
    docker build -t quay.io/my-repositroy/node-remediation-console:latest .
  2. Run the image:
    docker run -it --rm -d -p 9001:80 quay.io/my-repository/node-remediation-console:latest
  3. Push the image:
    docker push quay.io/my-repository/node-remediation-console:latest

NOTE: If you have a Mac with Apple silicon, you will need to add the flag --platform=linux/amd64 when building the image to target the correct platform to run in-cluster.

Deployment on cluster

After pushing an image with your changes to a registry, you can deploy the plugin to a cluster by instantiating the provided OpenShift template. It will run a light-weight nginx HTTP server to serve your plugin's assets.

oc process -f template.yaml \
  -p PLUGIN_NAME=node-remediation-console-plugin \
  -p NAMESPACE=node-remediation-console-plugin \
  -p IMAGE=quay.io/my-repository/node-remediation-console-plugin:latest \
  | oc create -f -

Tests

Currently the tests run on development environment

  1. Setup Local development
  2. On a new terminal run oc login and yarn test