refactor(api): migrate MakeDependsOn to shared apis/meta func
Signed-off-by: Vincent Dely <vincent.dely@ik.me>
This commit is contained in:
@@ -218,7 +218,7 @@ func createHelmReleaseCmdRun(cmd *cobra.Command, args []string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(helmReleaseArgs.dependsOn) > 0 {
|
if len(helmReleaseArgs.dependsOn) > 0 {
|
||||||
ls := utils.MakeDependsOn(helmReleaseArgs.dependsOn)
|
ls := meta.MakeDependsOn(helmReleaseArgs.dependsOn)
|
||||||
hrDependsOn := make([]helmv2.DependencyReference, 0, len(ls))
|
hrDependsOn := make([]helmv2.DependencyReference, 0, len(ls))
|
||||||
for _, d := range ls {
|
for _, d := range ls {
|
||||||
hrDependsOn = append(hrDependsOn, helmv2.DependencyReference{
|
hrDependsOn = append(hrDependsOn, helmv2.DependencyReference{
|
||||||
|
|||||||
@@ -172,7 +172,7 @@ func createKsCmdRun(cmd *cobra.Command, args []string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(kustomizationArgs.dependsOn) > 0 {
|
if len(kustomizationArgs.dependsOn) > 0 {
|
||||||
ls := utils.MakeDependsOn(kustomizationArgs.dependsOn)
|
ls := meta.MakeDependsOn(kustomizationArgs.dependsOn)
|
||||||
ksDependsOn := make([]kustomizev1.DependencyReference, 0, len(ls))
|
ksDependsOn := make([]kustomizev1.DependencyReference, 0, len(ls))
|
||||||
for _, d := range ls {
|
for _, d := range ls {
|
||||||
ksDependsOn = append(ksDependsOn, kustomizev1.DependencyReference{
|
ksDependsOn = append(ksDependsOn, kustomizev1.DependencyReference{
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ require (
|
|||||||
github.com/fluxcd/kustomize-controller/api v1.8.5
|
github.com/fluxcd/kustomize-controller/api v1.8.5
|
||||||
github.com/fluxcd/notification-controller/api v1.8.4
|
github.com/fluxcd/notification-controller/api v1.8.4
|
||||||
github.com/fluxcd/pkg/apis/event v0.26.0
|
github.com/fluxcd/pkg/apis/event v0.26.0
|
||||||
github.com/fluxcd/pkg/apis/meta v1.27.0
|
github.com/fluxcd/pkg/apis/meta v1.28.0
|
||||||
github.com/fluxcd/pkg/auth v0.45.0
|
github.com/fluxcd/pkg/auth v0.45.0
|
||||||
github.com/fluxcd/pkg/chartutil v1.24.0
|
github.com/fluxcd/pkg/chartutil v1.24.0
|
||||||
github.com/fluxcd/pkg/envsubst v1.7.0
|
github.com/fluxcd/pkg/envsubst v1.7.0
|
||||||
|
|||||||
@@ -194,8 +194,8 @@ github.com/fluxcd/pkg/apis/event v0.26.0 h1:QzBRz9Qy91jzJmLlOhd4ecp6OWDpMVFvm311
|
|||||||
github.com/fluxcd/pkg/apis/event v0.26.0/go.mod h1:0yy7FMJABzq8PP5/VEi1Gro6ssPaPlH9xuPIoF+Rm6M=
|
github.com/fluxcd/pkg/apis/event v0.26.0/go.mod h1:0yy7FMJABzq8PP5/VEi1Gro6ssPaPlH9xuPIoF+Rm6M=
|
||||||
github.com/fluxcd/pkg/apis/kustomize v1.18.0 h1:FCNjViCLyKYj6lddpnjXybKBTC2eK6eXK9YOaNwLVTM=
|
github.com/fluxcd/pkg/apis/kustomize v1.18.0 h1:FCNjViCLyKYj6lddpnjXybKBTC2eK6eXK9YOaNwLVTM=
|
||||||
github.com/fluxcd/pkg/apis/kustomize v1.18.0/go.mod h1:mvtMtM4NNLipdCna6DYPC6Bd42xeaF15N+tNO+F6kxY=
|
github.com/fluxcd/pkg/apis/kustomize v1.18.0/go.mod h1:mvtMtM4NNLipdCna6DYPC6Bd42xeaF15N+tNO+F6kxY=
|
||||||
github.com/fluxcd/pkg/apis/meta v1.27.0 h1:EspByEk5j8w3rs1cGbEh9AjSmpDwQIz7DFG/zzqf6uI=
|
github.com/fluxcd/pkg/apis/meta v1.28.0 h1:eJjMlLnfObnh23cyUB6xiIwDbgJaRU2MgfzzuilLFxI=
|
||||||
github.com/fluxcd/pkg/apis/meta v1.27.0/go.mod h1:2t6JyrRfvIBhx6EBnXfFh/6sCCJ1db9WGaqko0JmNOE=
|
github.com/fluxcd/pkg/apis/meta v1.28.0/go.mod h1:3DmYMnyH3XdY8/g2gXfsVIGEd/zpcB2PEkuurv2vgHU=
|
||||||
github.com/fluxcd/pkg/auth v0.45.0 h1:3p/CMdFJ1c8LevdLd2cikackaTW1Tw8JB2xg4YqpP8A=
|
github.com/fluxcd/pkg/auth v0.45.0 h1:3p/CMdFJ1c8LevdLd2cikackaTW1Tw8JB2xg4YqpP8A=
|
||||||
github.com/fluxcd/pkg/auth v0.45.0/go.mod h1:/ijjR9G/l6URmEo/zWzpJ3XIMIXWP1Ad7AXTCqmWioY=
|
github.com/fluxcd/pkg/auth v0.45.0/go.mod h1:/ijjR9G/l6URmEo/zWzpJ3XIMIXWP1Ad7AXTCqmWioY=
|
||||||
github.com/fluxcd/pkg/cache v0.14.0 h1:wEwJA8NhYj+nH9P6ifcsglDZARWlcbxbmwngGOzfU4c=
|
github.com/fluxcd/pkg/cache v0.14.0 h1:wEwJA8NhYj+nH9P6ifcsglDZARWlcbxbmwngGOzfU4c=
|
||||||
|
|||||||
@@ -47,7 +47,6 @@ import (
|
|||||||
kustomizev1 "github.com/fluxcd/kustomize-controller/api/v1"
|
kustomizev1 "github.com/fluxcd/kustomize-controller/api/v1"
|
||||||
notificationv1 "github.com/fluxcd/notification-controller/api/v1"
|
notificationv1 "github.com/fluxcd/notification-controller/api/v1"
|
||||||
notificationv1b3 "github.com/fluxcd/notification-controller/api/v1beta3"
|
notificationv1b3 "github.com/fluxcd/notification-controller/api/v1beta3"
|
||||||
"github.com/fluxcd/pkg/apis/meta"
|
|
||||||
runclient "github.com/fluxcd/pkg/runtime/client"
|
runclient "github.com/fluxcd/pkg/runtime/client"
|
||||||
"github.com/fluxcd/pkg/version"
|
"github.com/fluxcd/pkg/version"
|
||||||
sourcev1 "github.com/fluxcd/source-controller/api/v1"
|
sourcev1 "github.com/fluxcd/source-controller/api/v1"
|
||||||
@@ -231,26 +230,6 @@ func ParseObjectKindNameNamespace(input string) (kind, name, namespace string) {
|
|||||||
return kind, name, namespace
|
return kind, name, namespace
|
||||||
}
|
}
|
||||||
|
|
||||||
func MakeDependsOn(deps []string) []meta.NamespacedObjectReference {
|
|
||||||
refs := []meta.NamespacedObjectReference{}
|
|
||||||
for _, dep := range deps {
|
|
||||||
parts := strings.Split(dep, "/")
|
|
||||||
depNamespace := ""
|
|
||||||
depName := ""
|
|
||||||
if len(parts) > 1 {
|
|
||||||
depNamespace = parts[0]
|
|
||||||
depName = parts[1]
|
|
||||||
} else {
|
|
||||||
depName = parts[0]
|
|
||||||
}
|
|
||||||
refs = append(refs, meta.NamespacedObjectReference{
|
|
||||||
Namespace: depNamespace,
|
|
||||||
Name: depName,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
return refs
|
|
||||||
}
|
|
||||||
|
|
||||||
func ValidateComponents(components []string) error {
|
func ValidateComponents(components []string) error {
|
||||||
defaults := install.MakeDefaultOptions()
|
defaults := install.MakeDefaultOptions()
|
||||||
bootstrapAllComponents := append(defaults.Components, defaults.ComponentsExtra...)
|
bootstrapAllComponents := append(defaults.Components, defaults.ComponentsExtra...)
|
||||||
|
|||||||
@@ -21,10 +21,7 @@ package utils
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"reflect"
|
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/fluxcd/pkg/apis/meta"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestCompatibleVersion(t *testing.T) {
|
func TestCompatibleVersion(t *testing.T) {
|
||||||
@@ -79,28 +76,6 @@ func TestParseObjectKindNameNamespace(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestMakeDependsOn(t *testing.T) {
|
|
||||||
input := []string{
|
|
||||||
"someNSA/someNameA",
|
|
||||||
"someNSB/someNameB",
|
|
||||||
"someNameC",
|
|
||||||
"someNSD/",
|
|
||||||
"",
|
|
||||||
}
|
|
||||||
want := []meta.NamespacedObjectReference{
|
|
||||||
{Namespace: "someNSA", Name: "someNameA"},
|
|
||||||
{Namespace: "someNSB", Name: "someNameB"},
|
|
||||||
{Namespace: "", Name: "someNameC"},
|
|
||||||
{Namespace: "someNSD", Name: ""},
|
|
||||||
{Namespace: "", Name: ""},
|
|
||||||
}
|
|
||||||
|
|
||||||
got := MakeDependsOn(input)
|
|
||||||
if !reflect.DeepEqual(got, want) {
|
|
||||||
t.Errorf("MakeDependsOn() = %v, want %v", got, want)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestValidateComponents(t *testing.T) {
|
func TestValidateComponents(t *testing.T) {
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
|
|||||||
Reference in New Issue
Block a user