PERF Operator is responsible for integration with the Project Performance Board (PERF board), maintenance, and creation of the data source in the delivery metrics
![]() |
---|
Get acquainted with the PERF Operator and the installation process as well as the local development, and architecture scheme.
PERF Operator is an EDP operator that is responsible for for integration with the Project Performance Board (PERF board), maintenance, and creation of the data source in the delivery metrics. Operator installation can be applied on two container orchestration platforms: OpenShift and Kubernetes.
NOTE: Operator is platform-independent, that is why there is a unified instruction for deploying.
In order to install the PERF Operator, follow the steps below:
helm repo add epamedp https://epam.github.io/edp-helm-charts/stable
Choose available Helm chart version:
helm search repo epamedp/perf-operator -l
NAME CHART VERSION APP VERSION DESCRIPTION
epamedp/perf-operator 2.12.0 2.12.0 A Helm chart for EDP Perf Operator
epamedp/perf-operator 2.11.0 2.11.0 A Helm chart for EDP Perf Operator
NOTE: It is highly recommended to use the latest released version.
Create manually the corresponding secrets:
3.1 OpenShift:
oc -n <edp-project> create secret generic <perf.credentialName> --from-literal=username=<username_to_perf> --from-literal=password=<password_to_perf>
oc -n <edp-project> create secret generic <perf.luminate.credentialName> --from-literal=username=<username_to_luminate> --from-literal=password=<password_to_luminate>
3.2 Kubernetes:
kubectl -n <edp-project> create secret generic <perf.credentialName> --from-literal=username=<username_to_perf> --from-literal=password=<password_to_perf>
kubectl -n <edp-project> create secret generic <perf.luminate.credentialName> --from-literal=username=<username_to_luminate> --from-literal=password=<password_to_luminate>
INFO: The
<perf.credentialName>
and<perf.luminate.credentialName>
parameters are described below.
IMPORTANT: Pay attention that at this point, the PERF integration works only on the top of Luminate service so it is required to create the Luminate secret.
Create config map with luminate data:
4.1 OpenShift:
oc -n <edp-project> create configmap luminatesec-conf --from-literal=apiUrl=<api_url_to_get_luminate_token> --from-literal=credentialName=<perf.luminate.credentialName>
4.2 Kubernetes:
kubectl -n <edp-project> create configmap luminatesec-conf --from-literal=apiUrl=<api_url_to_get_luminate_token> --from-literal=credentialName=<perf.luminate.credentialName>
Create PerfServer CR:
apiVersion: v2.edp.epam.com/v1
kind: PerfServer
metadata:
name: <perf_cr_name>
namespace: <namespace>
spec:
apiUrl: '<perf.apiUrl>'
credentialName: '<perf.credentialName>'
projectName: '<perf.projectName>'
rootUrl: '<perf.rootUrl>'
NOTE: As soon as the connection is established, the following information will be displayed in the status parameter:
status:
available: true
detailed_message: connected
Create secrets with administrative rights to integrate the PERF data source with services (e.g. Jenkins, Sonar, GitLab):
6.1 OpenShift:
oc -n <edp-project> create secret generic gitlab-admin-password --from-literal=username=<username_to_gitlab> --from-literal=password=<password_to_gitlab>
oc -n <edp-project> create secret generic jenkins-admin-token --from-literal=username=<username_to_jenkins> --from-literal=password=<password_to_jenkins>
oc -n <edp-project> create secret generic sonar-admin-password --from-literal=username=<username_to_sonar> --from-literal=password=<password_to_sonar>
6.2 Kubernetes:
kubectl -n <edp-project> create secret generic gitlab-admin-password --from-literal=username=<username_to_gitlab> --from-literal=password=<password_to_gitlab>
kubectl -n <edp-project> create secret generic jenkins-admin-token --from-literal=username=<username_to_jenkins> --from-literal=password=<password_to_jenkins>
kubectl -n <edp-project> create secret generic sonar-admin-password --from-literal=username=<username_to_sonar> --from-literal=password=<password_to_sonar>
Full chart parameters available in deploy-templates/README.md.
Install operator in the
helm install perf-operator epamedp/perf-operator --version <chart_version> --namespace <edp-project> \
--set name=perf-operator \
--set global.edpName=<edp-project> \
--set global.platform=openshift \
--set perf.integration=true \
--set perf.name=<perf_server_name> \
--set perf.apiUrl=<api_url> \
--set perf.rootUrl=<URL_to_project_in_perf> \
--set perf.credentialName=<credential_name> \
--set perf.projectName=<project_name_in_perf> \
--set perf.luminate.enabled=true \
--set perf.luminate.apiUrl=<api_url> \
--set perf.luminate.credentialName=<credential_name> \
In order to develop the operator, first set up a local environment. For details, please refer to the Local Development page.
Development versions are also available, please refer to the snapshot helm chart repository page.