Skip to content

Commit

Permalink
Merge pull request #272 from mmulholla/versionYaml
Browse files Browse the repository at this point in the history
move kube-ocp version map to yaml file for wider use
  • Loading branch information
mmulholla authored Jul 29, 2022
2 parents 02e878b + 2d5655f commit 2572abf
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 12 deletions.
21 changes: 21 additions & 0 deletions internal/tool/kubeOpenShiftVersionMap.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
versions:
- kube-version: "1.23"
ocp-version: "4.10"
- kube-version: "1.22"
ocp-version: "4.9"
- kube-version: "1.21"
ocp-version: "4.8"
- kube-version: "1.20"
ocp-version: "4.7"
- kube-version: "1.19"
ocp-version: "4.6"
- kube-version: "1.18"
ocp-version: "4.5"
- kube-version: "1.17"
ocp-version: "4.4"
- kube-version: "1.16"
ocp-version: "4.3"
- kube-version: "1.14"
ocp-version: "4.2"
- kube-version: "1.13"
ocp-version: "4.1"
50 changes: 39 additions & 11 deletions internal/tool/kubectl.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ package tool

import (
"context"
"embed"
"fmt"

"gopkg.in/yaml.v3"
"helm.sh/helm/v3/pkg/cli"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
Expand All @@ -12,20 +14,46 @@ import (
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/clientcmd"
"k8s.io/kubectl/pkg/scheme"

"github.com/redhat-certification/chart-verifier/internal/chartverifier/utils"
)

//go:embed kubeOpenShiftVersionMap.yaml
var content embed.FS

// Based on https://access.redhat.com/solutions/4870701
var kubeOpenShiftVersionMap map[string]string = map[string]string{
"1.23": "4.10",
"1.22": "4.9",
"1.21": "4.8",
"1.20": "4.7",
"1.19": "4.6",
"1.18": "4.5",
"1.17": "4.4",
"1.16": "4.3",
"1.14": "4.2",
"1.13": "4.1",
var kubeOpenShiftVersionMap map[string]string

type versionMap struct {
Versions []*versionMapping `yaml:"versions"`
}

type versionMapping struct {
KubeVersion string `yaml:"kube-version"`
OcpVersion string `yaml:"ocp-version"`
}

func init() {
kubeOpenShiftVersionMap = make(map[string]string)

yamlFile, err := content.ReadFile("kubeOpenShiftVersionMap.yaml")

if err != nil {
utils.LogError(fmt.Sprintf("Error reading content of kubeOpenShiftVersionMap.yaml: %v", err))
return
}

versions := versionMap{}
err = yaml.Unmarshal(yamlFile, &versions)
if err != nil {
utils.LogError(fmt.Sprintf("Error reading content of kubeOpenShiftVersionMap.yaml: %v", err))
return
}

for _, versionMap := range versions.Versions {
kubeOpenShiftVersionMap[versionMap.KubeVersion] = versionMap.OcpVersion
}

}

type Kubectl struct {
Expand Down
2 changes: 1 addition & 1 deletion pkg/chartverifier/reportsummary/reportsummary_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func TestAddUrlReport(t *testing.T) {
url, loadUrlErr := url.Parse(yamlUrlReport)
require.NoError(t, loadUrlErr)

chartUri := "pkg/chartverifier/checks/chart-0.1.0-v3.valid.tgz"
chartUri := "internal/chartverifier/checks/chart-0.1.0-v3.valid.tgz"
report, loadErr := apireport.NewReport().SetURL(url).Load()
require.NoError(t, loadErr)
reportSummary := NewReportSummary().SetReport(report)
Expand Down

0 comments on commit 2572abf

Please sign in to comment.