Skip to content
This repository has been archived by the owner on Mar 24, 2023. It is now read-only.

Numerous examples and charts can't be used with Kubernetes 1.16 #1069

Open
jbrette opened this issue Sep 23, 2019 · 1 comment
Open

Numerous examples and charts can't be used with Kubernetes 1.16 #1069

jbrette opened this issue Sep 23, 2019 · 1 comment

Comments

@jbrette
Copy link

jbrette commented Sep 23, 2019

A extensions/v1betax and apps/v1betax for Deployment objects are now obsolete:

 kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:27:17Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}

If you use one of the files used for testing, and try a simple kubectl apply, it is rejected

cd ~/src/github.com/replicatedhq/ship/integration$ 
kubectl apply -f init/jaeger/expected/base/Deployment-jaeger-collector.yaml

error: unable to recognize "init/jaeger/expected/base/Deployment-jaeger-collector.yaml": no matches for kind "Deployment" in version "extensions/v1beta1"

The Deployment/StatefulSet/DaemonSet apps/v1 are supposed to be used since Kubernetes 1.9. Ingress extensions/v1beta1 was rendered obsolete in kubernetes 1.14.

There is quite a lot of work/tasks associated with that fix:

  1. Find fixed versions of the upstream charts.
  2. Change all the extensions/v1betaX in the apiVersion, the roles.yaml, the kustomization.yaml (variable declarations..)
  3. Add selectors in the deployment, statefulset and daemonset.

Since one of the primary feature of ship is to maintain the charts and the "k8s/kustomize" files in sync, only task 1 is supposed to be necessary. Ship will be able to update the corresponding k8s/kustomize files automatically.

@jbrette
Copy link
Author

jbrette commented Sep 23, 2019

This is the list of files which are impacted in the integration folder alone:

unfork/grafana/expected/rendered.yaml
unfork/istio-k8s/expected/.ship/state.json
unfork/istio-k8s/expected/rendered.yaml
unfork/istio-k8s/expected/overlays/ship/Deployment-istio-galley.yaml
unfork/istio-k8s/expected/base/charts/galley/templates/deployment.yaml
unfork/istio-k8s/expected/base/charts/gateways/templates/Deployment-istio-ingressgateway.yaml
unfork/istio-k8s/expected/base/charts/gateways/templates/Deployment-istio-egressgateway.yaml
unfork/istio-k8s/expected/base/charts/security/templates/deployment.yaml
unfork/istio-k8s/expected/base/charts/mixer/templates/Deployment-istio-telemetry.yaml
unfork/istio-k8s/expected/base/charts/mixer/templates/Deployment-istio-policy.yaml
unfork/istio-k8s/expected/base/charts/pilot/templates/deployment.yaml
unfork/istio-k8s/expected/base/charts/sidecarInjectorWebhook/templates/deployment.yaml
unfork/istio-k8s/expected/base/charts/prometheus/templates/deployment.yaml
unfork/redis-k8s/expected/.ship/state.json
unfork/redis-k8s/expected/rendered.yaml
unfork/redis-k8s/expected/overlays/ship/Deployment-redis-slave.yaml
unfork/redis-k8s/expected/base/redis-slave-deployment.yaml
unfork/jaeger-k8s-local/input/rendered.yaml
unfork/jaeger-k8s-local/expected/.ship/state.json
unfork/jaeger-k8s-local/expected/rendered.yaml
unfork/jaeger-k8s-local/expected/overlays/ship/Deployment-jaeger-collector.yaml
unfork/jaeger-k8s-local/expected/overlays/ship/Deployment-jaeger-query.yaml
unfork/jaeger-k8s-local/expected/base/Deployment-jaeger-collector.yaml
unfork/jaeger-k8s-local/expected/base/Deployment-jaeger-query.yaml
failing/base/helm-with-sub-charts/expected/installer/charts/rendered/charts/kube-state-metrics/templates/deployment.yaml
init/grafana-preserve-state/expected/rendered.yaml
init/jaeger-helm/expected/.ship/upstream/templates/query-deploy.yaml
init/jaeger-helm/expected/.ship/upstream/templates/collector-deploy.yaml
init/jaeger-helm/expected/.ship/upstream/templates/hotrod-deploy.yaml
init/jaeger-helm/expected/rendered.yaml
init/jaeger-helm/expected/base/query-deploy.yaml
init/jaeger-helm/expected/base/collector-deploy.yaml
init/factorio/expected/.ship/upstream/templates/deployment.yaml
init/factorio/expected/rendered.yaml
init/factorio/expected/base/deployment.yaml
init/istio-gogetter/expected/rendered.yaml
init/istio-gogetter/expected/base/charts/galley/templates/deployment.yaml
init/istio-gogetter/expected/base/charts/gateways/templates/Deployment-istio-ingressgateway.yaml
init/istio-gogetter/expected/base/charts/gateways/templates/Deployment-istio-egressgateway.yaml
init/istio-gogetter/expected/base/charts/security/templates/deployment.yaml
init/istio-gogetter/expected/base/charts/mixer/templates/Deployment-istio-telemetry.yaml
init/istio-gogetter/expected/base/charts/mixer/templates/Deployment-istio-policy.yaml
init/istio-gogetter/expected/base/charts/pilot/templates/deployment.yaml
init/istio-gogetter/expected/base/charts/sidecarInjectorWebhook/templates/deployment.yaml
init/istio-gogetter/expected/base/charts/prometheus/templates/deployment.yaml
init/grafana-with-values/expected/rendered.yaml
init/jaeger-cassandra/expected/rendered.yaml
init/jaeger-cassandra/expected/base/Deployment-jaeger-collector.yaml
init/jaeger-cassandra/expected/base/Deployment-jaeger-query.yaml
init/jaeger/expected/.ship/upstream/jaeger-production-template.yml
init/jaeger/expected/rendered.yaml
init/jaeger/expected/base/Deployment-jaeger-collector.yaml
init/jaeger/expected/base/Deployment-jaeger-query.yaml
init/concourse/expected/.ship/upstream/templates/web-deployment.yaml
init/concourse/expected/rendered.yaml
init/concourse/expected/base/web-deployment.yaml
init/concourse/expected/base/charts/postgresql/templates/deployment.yaml
init/istio/expected/rendered.yaml
init/istio/expected/base/charts/galley/templates/deployment.yaml
init/istio/expected/base/charts/gateways/templates/Deployment-istio-ingressgateway.yaml
init/istio/expected/base/charts/gateways/templates/Deployment-istio-egressgateway.yaml
init/istio/expected/base/charts/security/templates/deployment.yaml
init/istio/expected/base/charts/mixer/templates/Deployment-istio-telemetry.yaml
init/istio/expected/base/charts/mixer/templates/Deployment-istio-policy.yaml
init/istio/expected/base/charts/pilot/templates/deployment.yaml
init/istio/expected/base/charts/sidecarInjectorWebhook/templates/deployment.yaml
init/istio/expected/base/charts/prometheus/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/tracing/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/galley/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/gateways/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/security/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/mixer/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/grafana/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/servicegraph/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/ingress/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/kiali/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/pilot/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/sidecarInjectorWebhook/templates/deployment.yaml
init/istio-1.0.3/expected/.ship/upstream/charts/prometheus/templates/deployment.yaml
init/istio-1.0.3/expected/rendered.yaml
init/istio-1.0.3/expected/base/charts/galley/templates/deployment.yaml
init/istio-1.0.3/expected/base/charts/gateways/templates/Deployment-istio-ingressgateway.yaml
init/istio-1.0.3/expected/base/charts/gateways/templates/Deployment-istio-egressgateway.yaml
init/istio-1.0.3/expected/base/charts/security/templates/deployment.yaml
init/istio-1.0.3/expected/base/charts/mixer/templates/Deployment-istio-telemetry.yaml
init/istio-1.0.3/expected/base/charts/mixer/templates/Deployment-istio-policy.yaml
init/istio-1.0.3/expected/base/charts/pilot/templates/deployment.yaml
init/istio-1.0.3/expected/base/charts/sidecarInjectorWebhook/templates/deployment.yaml
init/istio-1.0.3/expected/base/charts/prometheus/templates/deployment.yaml
update/namespace/expected/rendered.yaml
base/helm-nginx/input/.ship/ship.yml
base/helm-nginx/expected/.ship/release.yml
base/helm-nginx/expected/installer/charts/rendered/deployment.yaml
base/helm-nginx/expected/installer/charts/src/nginx/templates/deployment.yaml
base/helm-fetch/expected/installer/charts/rendered/deployment.yaml

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant