Skip to content

Commit

Permalink
#134 Use new values format for setup image.
Browse files Browse the repository at this point in the history
  • Loading branch information
nhinze23 committed Oct 25, 2024
1 parent 2ad7264 commit 127f789
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 6 deletions.
9 changes: 6 additions & 3 deletions src/com/cloudogu/ces/cesbuildlib/K3d.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -266,12 +266,15 @@ class K3d {
}

void configureSetupImage(String image) {
String hostKey = ".setup.image.registry"
String repositoryKey = ".setup.image.repository"
String tagKey = ".setup.image.tag"
def i = image.lastIndexOf(":")
def repositorySeparatorIndex = image.indexOf("/")
def tagSeparatorIndex = image.lastIndexOf(":")

appendToYamlFile(K3D_VALUES_YAML_FILE, repositoryKey, image.substring(0, i))
appendToYamlFile(K3D_VALUES_YAML_FILE, tagKey, image.substring(i + 1, image.length()))
appendToYamlFile(K3D_VALUES_YAML_FILE, hostKey, image.substring(0, repositorySeparatorIndex))
appendToYamlFile(K3D_VALUES_YAML_FILE, repositoryKey, image.substring(repositorySeparatorIndex + 1, tagSeparatorIndex))
appendToYamlFile(K3D_VALUES_YAML_FILE, tagKey, image.substring(tagSeparatorIndex + 1, image.length()))
}

void configureComponentOperatorVersion(String operatorVersion, String crdVersion = operatorVersion, String namespace = "k8s") {
Expand Down
10 changes: 7 additions & 3 deletions test/com/cloudogu/ces/cesbuildlib/K3dTest.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -545,7 +545,8 @@ spec:

scriptMock.expectedShRetValueForScript.put("whoami".toString(), "jenkins")
scriptMock.expectedShRetValueForScript.put("cat /etc/passwd | grep jenkins", "jenkins:x:1000:1000:jenkins,,,:/home/jenkins:/bin/bash")
scriptMock.expectedShRetValueForScript.put("yq -i \".setup.image.repository = \\\"docker.io/foo/image\\\"\" k3d_values.yaml", "foo")
scriptMock.expectedShRetValueForScript.put("yq -i \".setup.image.registry = \\\"docker.io\\\"\" k3d_values.yaml", "foo")
scriptMock.expectedShRetValueForScript.put("yq -i \".setup.image.repository = \\\"foo/image\\\"\" k3d_values.yaml", "foo")
scriptMock.expectedShRetValueForScript.put("yq -i \".setup.image.tag = \\\"1.2.3\\\"\" k3d_values.yaml", "foo")

// when
Expand All @@ -554,10 +555,13 @@ spec:
// then
assertThat(scriptMock.allActualArgs[0].trim()).isEqualTo("whoami".trim())
assertThat(scriptMock.allActualArgs[1].trim()).isEqualTo("cat /etc/passwd | grep jenkins".trim())
assertThat(scriptMock.allActualArgs[2].trim()).isEqualTo("yq -i \".setup.image.repository = \\\"docker.io/foo/image\\\"\" k3d_values.yaml".trim())
assertThat(scriptMock.allActualArgs[2].trim()).isEqualTo("yq -i \".setup.image.registry = \\\"docker.io\\\"\" k3d_values.yaml".trim())
assertThat(scriptMock.allActualArgs[3].trim()).isEqualTo("whoami".trim())
assertThat(scriptMock.allActualArgs[4].trim()).isEqualTo("cat /etc/passwd | grep jenkins".trim())
assertThat(scriptMock.allActualArgs[5].trim()).isEqualTo("yq -i \".setup.image.tag = \\\"1.2.3\\\"\" k3d_values.yaml".trim())
assertThat(scriptMock.allActualArgs[5].trim()).isEqualTo("yq -i \".setup.image.repository = \\\"foo/image\\\"\" k3d_values.yaml".trim())
assertThat(scriptMock.allActualArgs[6].trim()).isEqualTo("whoami".trim())
assertThat(scriptMock.allActualArgs[7].trim()).isEqualTo("cat /etc/passwd | grep jenkins".trim())
assertThat(scriptMock.allActualArgs[8].trim()).isEqualTo("yq -i \".setup.image.tag = \\\"1.2.3\\\"\" k3d_values.yaml".trim())
}

void testK3d_configureComponentOperatorVersion() {
Expand Down

0 comments on commit 127f789

Please sign in to comment.