The console provides the user interface for Red Hat Advanced Cluster Management (ACM) for Kubernetes and Red Hat MultiCluster Engine (MCE).
Go to the Contributing guide to learn how to get involved.
- Node.js 14
- NPM 6
The same codebase is used to build images for Red Hat Advanced Cluster Management for Kubernetes (from release-* branches) and multicluster engine for Kubernetes (from backplane-* branches). The build system fast-forwards between branches to keep the content in sync. Pull requests should only be opened against the first branch in each line listed below. The arrow represents an automatic fast-forwarding of commits from one branch to the next.
main → release-2.7 → backplane-2.2
release-2.6 → backplane-2.1
release-2.5
backplane-2.0 // cherry-pick from PRs against release-2.5
release-2.4
A number of the core NPM package dependencies are published from other repositories. To allow development of new features in these projects, branches are created each time a new release is started.
| console branch | patternfly-labs/react-form-wizard | stolostron/react-data-view | stolostron/ui-components | stolostron/temptifly |
|---|---|---|---|---|
| main release-2.7 backplane-2.2 |
main | main | N/A | N/A |
| release-2.6 backplane-2.1 |
v1.8.z | v1.0.z | N/A | N/A |
| release-2.5 backplane-2.0 |
v1.7.z | N/A | v1.69.z | 2.5 |
| release-2.4 | N/A | N/A | v1.25.z | 2.4 |
| release-2.3 | N/A | N/A | v0.180.z | 2.3 |
| release-2.2 | N/A | N/A | No branch; uses 0.1.214 | 2.2 |
-
Clone repository
-
Install dependencies
npm ci -
Setup environment
You need:
- to be connected to a OpenShift 4.x.x cluster
- to have Advanced Cluster Management installed on the cluster
npm run setupThis will create a
.envfile in the backend directory containing environment variables. -
Start the development services
npm startThis will start the frontend and the backend in parallel. (It may take up to 30 seconds for the UI to appear)
See Dynamic Plugins - Development
See ARCHITECTURE.md
To develop with self signed certificates goto chrome://flags/and enable
- Allow invalid certificates for resources loaded from localhost.
- Insecure origins treated as secure.
Frontend has a cookie acm-access-token-cookie that contains the user's token.
If the backend responds with a 401 Unauthorized the frontend starts an OAuth flow to authorize with the cluster.
- Frontend redirects to the backend
/loginendpoint. - Backend redirects to the cluster
/authorizeendpoint. - Cluster OAuth redirects back to the backend
/login/callbackendpoint. - Backend redirects to the frontend and sets the
acm-access-token-cookie.
In some cases there are development preview (Dev Preview) features or technical preview (Tech Preview) features that can optionally be enabled and used in the product. These features are enabled by updating the console-config configmap in the installation namepsace (default: open-cluster-management). The following features are available:
Enabling this feature will allow the user to create a cluster that only contains a single control plane node. This option is only available for providers AWS, Azure, GCP, OpenStack and VMware when the OpenShift release image is version 4.8 or higher.
console is an add-on for the open-cluster-management community. For more information, visit: open-cluster-management.io