Skip to content

Commit

Permalink
repro upgrade issue
Browse files Browse the repository at this point in the history
  • Loading branch information
sbueringer committed Oct 7, 2021
1 parent ffb41d5 commit 2273ffe
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 2 deletions.
7 changes: 6 additions & 1 deletion scripts/ci-e2e.sh
Expand Up @@ -96,5 +96,10 @@ ctr -n moby events > "${ARTIFACTS_LOCAL}/containerd-events.txt" 2>&1 &

# Run e2e tests
mkdir -p "$ARTIFACTS"
echo "+ run tests!"
echo "+ run v1alpha3 => v1beta1 upgrade test!"

export GINKGO_FOCUS="Should create a management cluster and then upgrade all the providers"
export INIT_WITH_BINARY=https://github.com/kubernetes-sigs/cluster-api/releases/download/v0.3.23/clusterctl-{OS}-{ARCH}
export INIT_WITH_PROVIDERS_CONTRACT=v1alpha3
export INIT_WITH_KUBERNETES_VERSION=v1.21.2
make -C test/e2e/ run
24 changes: 24 additions & 0 deletions test/e2e/config/docker.yaml
Expand Up @@ -34,6 +34,8 @@ providers:
type: "url"
contract: v1alpha3
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
Expand All @@ -43,13 +45,17 @@ providers:
type: "url"
contract: v1alpha4
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
- sourcePath: "../data/shared/v1alpha4/metadata.yaml"
- name: v1.0.99 # next; use manifest from source files
value: ../../../config/default
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-bind-addr=localhost:8080
new: --metrics-bind-addr=:8080
files:
Expand All @@ -63,6 +69,8 @@ providers:
type: "url"
contract: v1alpha3
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
Expand All @@ -72,13 +80,17 @@ providers:
type: "url"
contract: v1alpha4
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
- sourcePath: "../data/shared/v1alpha4/metadata.yaml"
- name: v1.0.99 # next; use manifest from source files
value: ../../../bootstrap/kubeadm/config/default
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-bind-addr=localhost:8080
new: --metrics-bind-addr=:8080
files:
Expand All @@ -92,6 +104,8 @@ providers:
type: "url"
contract: v1alpha3
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
Expand All @@ -101,13 +115,17 @@ providers:
type: "url"
contract: v1alpha4
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
- sourcePath: "../data/shared/v1alpha4/metadata.yaml"
- name: v1.0.99 # next; use manifest from source files
value: ../../../controlplane/kubeadm/config/default
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-bind-addr=localhost:8080
new: --metrics-bind-addr=:8080
files:
Expand All @@ -121,6 +139,8 @@ providers:
type: "url"
contract: v1alpha3
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
Expand All @@ -131,6 +151,8 @@ providers:
type: "url"
contract: v1alpha4
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-addr=127.0.0.1:8080
new: --metrics-addr=:8080
files:
Expand All @@ -139,6 +161,8 @@ providers:
- name: v1.0.99 # next; use manifest from source files
value: ../../../test/infrastructure/docker/config/default
replacements:
- old: "--leader-elect"
new: "--leader-elect=false"
- old: --metrics-bind-addr=localhost:8080
new: --metrics-bind-addr=:8080
files:
Expand Down
31 changes: 30 additions & 1 deletion test/framework/alltypes_helpers.go
Expand Up @@ -26,7 +26,6 @@ import (

. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"

apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
apimeta "k8s.io/apimachinery/pkg/api/meta"
Expand Down Expand Up @@ -72,6 +71,36 @@ func GetCAPIResources(ctx context.Context, input GetCAPIResourcesInput) []*unstr
}
}

// cluster-wide
types = []metav1.TypeMeta{
{
Kind: "Deployment",
APIVersion: "apps/v1",
},
{
Kind: "Pod",
APIVersion: "v1",
},
}

for i := range types {
typeMeta := types[i]
typeList := new(unstructured.UnstructuredList)
typeList.SetAPIVersion(typeMeta.APIVersion)
typeList.SetKind(typeMeta.Kind)

if err := input.Lister.List(ctx, typeList); err != nil {
if apierrors.IsNotFound(err) {
continue
}
Fail(fmt.Sprintf("failed to list %q resources: %v", typeList.GroupVersionKind(), err))
}
for i := range typeList.Items {
obj := typeList.Items[i]
objList = append(objList, &obj)
}
}

return objList
}

Expand Down

0 comments on commit 2273ffe

Please sign in to comment.