Skip to content

Latest commit

 

History

History
98 lines (75 loc) · 3.32 KB

File metadata and controls

98 lines (75 loc) · 3.32 KB

JobSet Operator

The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.

Tests

This repository is compatible with the OpenShift Tests Extension (OTE) framework.

Building the test binary

make build

Running test suites and tests

# Run a specific test suite or test
./jobset-operator-tests-ext run-suite openshift/jobset-operator/operator/serial
./jobset-operator-tests-ext run-test "test-name"

# To run serial suites cases serially, use the following command:
./jobset-operator-tests-ext run-suite openshift/jobset-operator/operator/serial -c 1

# Run with JUnit output
./jobset-operator-tests-ext run-suite openshift/jobset-operator/operator/serial --junit-path=/tmp/junit.xml
./jobset-operator-tests-ext run-test "test-name" --junit-path=/tmp/junit.xml

Listing available tests and suites

# List all test suites
./jobset-operator-tests-ext list suites

# List tests in a suite
./jobset-operator-tests-ext list tests --suite=openshift/jobset-operator/operator/serial

For more information about the OTE framework, see the openshift-tests-extension documentation.

Releases

jobset operator version jobset version ocp version k8s version golang
0.1.0 0.9.1 4.18-4.20 1.33 1.24
1.0.0 0.11.0 4.18-4.23, 5.0 1.36 1.26

Deploy the Operator

Quick Development

  1. Build and push the operator image to a registry:
    export QUAY_USER=${your_quay_user_id}
    export IMAGE_TAG=${your_image_tag}
    podman build -f Dockerfile.ci -t quay.io/${QUAY_USER}/jobset-operator:${IMAGE_TAG} .
    podman login quay.io -u ${QUAY_USER}
    podman push quay.io/${QUAY_USER}/jobset-operator:${IMAGE_TAG}
  2. Update the image spec under .spec.template.spec.containers[0].image field in the deploy/12_deployment.yaml Deployment to point to the newly built image
  3. Build and push the operand image to a registry:
    mkdir -p $HOME/go/src/sigs.k8s.io
    cd $HOME/go/src/sigs.k8s.io
    git clone https://github.com/openshift/kubernetes-sigs-jobset
    cd $HOME/go/src/sigs.k8s.io/kubernetes-sigs-jobset
    export QUAY_USER=${your_quay_user_id}
    export IMAGE_TAG=${your_image_tag}
    podman build -t quay.io/${QUAY_USER}/jobset:${IMAGE_TAG} .
    podman login quay.io -u ${QUAY_USER}
    podman push quay.io/${QUAY_USER}/jobset:${IMAGE_TAG}
  4. Update the image spec under .spec.template.spec.containers[0].env[2].value (.name == "OPERAND_IMAGE") field in the deploy/12_deployment.yaml Deployment to point to the newly built image.
  5. Make sure cert-manager is installed.
  6. Apply the manifests from deploy directory:
    oc apply -f deploy/ --server-side

E2E Test

Set kubeconfig to point to a OCP cluster

Set OPERATOR_IMAGE to point to your operator image

Set RELATED_IMAGE_OPERAND_IMAGE to point to your jobset image you want to test

[Optional] Set ARTIFACT_DIR to /path/to/dir for junit_report.xml

Run operator e2e test

make test-e2e

Run operand e2e test

make test-e2e-operand