Skip to content

Commit

Permalink
Add CDI addon
Browse files Browse the repository at this point in the history
CDI is used to populate PVCs with VM images.

Signed-off-by: Nir Soffer <nsoffer@redhat.com>
  • Loading branch information
nirs committed Oct 12, 2023
1 parent 57fbcbd commit a6b6890
Showing 1 changed file with 67 additions and 0 deletions.
67 changes: 67 additions & 0 deletions test/addons/cdi/start
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#!/usr/bin/env python3

# SPDX-FileCopyrightText: The RamenDR authors
# SPDX-License-Identifier: Apache-2.0

import os
import sys

import drenv
from drenv import kubectl

VERSION = "v1.57.0"
BASE_URL = "https://github.com/kubevirt/containerized-data-importer/releases/download"
NAMESPACE = "cdi"


def deploy(cluster):
print("Deploying cdi operator")
kubectl.apply(
f"--filename={BASE_URL}/{VERSION}/cdi-operator.yaml",
context=cluster,
)

print("Waiting until cdi-operator is rolled out")
kubectl.rollout(
"status",
"deploy/cdi-operator",
f"--namespace={NAMESPACE}",
context=cluster,
)

print("Deploying cdi cr")
kubectl.apply(
f"--filename={BASE_URL}/{VERSION}/cdi-cr.yaml",
context=cluster,
)


def wait(cluster):
print("Waiting until cdi cr reports phase")
drenv.wait_for(
"cdi.cdi.kubevirt.io/cdi",
namespace=NAMESPACE,
output="jsonpath={.status.phase}",
timeout=60,
profile=cluster,
)

print("Waiting until cdi cr phase is deployed")
kubectl.wait(
"cdi.cdi.kubevirt.io/cdi",
"--for=jsonpath={.status.phase}=Deployed",
f"--namespace={NAMESPACE}",
"--timeout=300s",
context=cluster,
)


if len(sys.argv) != 2:
print(f"Usage: {sys.argv[0]} cluster")
sys.exit(1)

os.chdir(os.path.dirname(__file__))
cluster = sys.argv[1]

deploy(cluster)
wait(cluster)

0 comments on commit a6b6890

Please sign in to comment.