Skip to content

It installs the Nexus EDP Component on a cluster to store/manage artifacts of codebases. It also exposes configuration that allows Nexus to perform with other EDP components

License

Notifications You must be signed in to change notification settings

epam/edp-nexus-operator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

codecov

Nexus Operator

❗ Please refer to KubeRocketCI documentation to get the notion of the main concepts and guidelines.

Get acquainted with the Nexus Operator and the installation process as well as the local development, and architecture scheme.

Overview

Nexus Operator is a KubeRocketCI operator that is responsible for configuring Nexus.

NOTE: Operator is platform-independent, that is why there is a unified instruction for deploying.

Prerequisites

  1. Linux machine or Windows Subsystem for Linux instance with Helm 3 installed;
  2. Cluster admin access to the cluster;

Installation

In order to install the Nexus operator, follow the steps below:

  1. To add the Helm EPAMEDP Charts for local client, run "helm repo add":

    helm repo add epamedp https://epam.github.io/edp-helm-charts/stable
  2. Choose available Helm chart version:

    helm search repo epamedp/nexus-operator -l
    NAME                        CHART VERSION   APP VERSION     DESCRIPTION
    epamedp/nexus-operator      3.2.0           3.2.0           A Helm chart for KRCI Nexus Operator

    NOTE: It is highly recommended to use the latest released version.

  3. Full chart parameters available in deploy-templates/README.md.

  4. Install operator in the nexus-operator namespace with the helm command; find below the installation command example:

    helm install nexus-operator epamedp/nexus-operator --version <chart_version> --namespace nexus
  5. Check the nexus-operator namespace that should contain operator deployment with your operator in a running status.

Quick Start

  1. Login into Nexus and create user. Attach permissions to user such as scripts, rules, blobs etc. Insert user credentials into Kubernetes secret.

    apiVersion: v1
    kind: Secret
    metadata:
      name: nexus-admin-password
    data:
      password: cGFzcw==  # base64-encoded value of "pass"
      user:     dXNlcg==  # base64-encoded value of "user"
  2. Create Custom Resource kind: Nexus with Nexus instance URL and secret created on the previous step:

    apiVersion: edp.epam.com/v1alpha1
    kind: Nexus
    metadata:
      name: nexus
    spec:
      secret: nexus-admin-password
      url: http://nexus.example.com

    Wait for the .status field with status.connected: true

  3. Create Role using Custom Resources NexusRole:

    apiVersion: edp.epam.com/v1alpha1
    kind: NexusRole
    metadata:
      name: edp-admin
    spec:
      description: Read and write access to all repos and scripts
      id: edp-admin
      name: edp-admin
      nexusRef:
        kind: Nexus
        name: nexus
      privileges:
        - nx-apikey-all
        - nx-repository-view-*-*-add
        - nx-repository-view-*-*-browse
        - nx-repository-view-*-*-edit
        - nx-repository-view-*-*-read
        - nx-script-*-add
        - nx-script-*-delete
        - nx-script-*-run
        - nx-search-read

    Inspect CR templates folder for more examples.

Local Development

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.

Related Articles

About

It installs the Nexus EDP Component on a cluster to store/manage artifacts of codebases. It also exposes configuration that allows Nexus to perform with other EDP components

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages