Merge pull request #60848 from adelina-t/configure_test_image_repo

Made image registries configurable from registry.yaml file
This commit is contained in:
k8s-ci-robot
2018-09-25 01:27:02 -07:00
committed by GitHub
2 changed files with 46 additions and 8 deletions

View File

@@ -9,6 +9,9 @@ go_library(
name = "go_default_library",
srcs = ["manifest.go"],
importpath = "k8s.io/kubernetes/test/utils/image",
deps = [
"//vendor/gopkg.in/yaml.v2:go_default_library",
],
)
filegroup(

View File

@@ -18,16 +18,19 @@ package image
import (
"fmt"
"io/ioutil"
"os"
yaml "gopkg.in/yaml.v2"
)
const (
dockerLibraryRegistry = "docker.io/library"
e2eRegistry = "gcr.io/kubernetes-e2e-test-images"
gcRegistry = "k8s.gcr.io"
PrivateRegistry = "gcr.io/k8s-authenticated-test"
sampleRegistry = "gcr.io/google-samples"
)
type RegistryList struct {
DockerLibraryRegistry string `yaml:"dockerLibraryRegistry"`
E2eRegistry string `yaml:"e2eRegistry"`
GcRegistry string `yaml:"gcRegistry"`
PrivateRegistry string `yaml:"privateRegistry"`
SampleRegistry string `yaml:"sampleRegistry"`
}
type ImageConfig struct {
registry string
name string
@@ -46,7 +49,39 @@ func (i *ImageConfig) SetVersion(version string) {
i.version = version
}
func initReg() RegistryList {
registry := RegistryList{
DockerLibraryRegistry: "docker.io/library",
E2eRegistry: "gcr.io/kubernetes-e2e-test-images",
GcRegistry: "k8s.gcr.io",
PrivateRegistry: "gcr.io/k8s-authenticated-test",
SampleRegistry: "gcr.io/google-samples",
}
repoList := os.Getenv("KUBE_TEST_REPO_LIST")
if repoList == "" {
return registry
}
fileContent, err := ioutil.ReadFile(repoList)
if err != nil {
panic(fmt.Errorf("Error reading '%v' file contents: %v", repoList, err))
}
err = yaml.Unmarshal(fileContent, &registry)
if err != nil {
panic(fmt.Errorf("Error unmarshalling '%v' YAML file: %v", repoList, err))
}
return registry
}
var (
registry = initReg()
dockerLibraryRegistry = registry.DockerLibraryRegistry
e2eRegistry = registry.E2eRegistry
gcRegistry = registry.GcRegistry
PrivateRegistry = registry.PrivateRegistry
sampleRegistry = registry.SampleRegistry
AdmissionWebhook = ImageConfig{e2eRegistry, "webhook", "1.12v2"}
APIServer = ImageConfig{e2eRegistry, "sample-apiserver", "1.0"}
AppArmorLoader = ImageConfig{e2eRegistry, "apparmor-loader", "1.0"}