Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ChannelRecommendedKopsKubernetesVersion in 1.20.0 does not work as expected #11217

Closed
yurrriq opened this issue Apr 12, 2021 · 1 comment · Fixed by #11220
Closed

ChannelRecommendedKopsKubernetesVersion in 1.20.0 does not work as expected #11217

yurrriq opened this issue Apr 12, 2021 · 1 comment · Fixed by #11220

Comments

@yurrriq
Copy link
Contributor

yurrriq commented Apr 12, 2021

1. What kops version are you running? The command kops version, will display
this information.

Version 1.20.0 (git-8ea83c6d233a15dacfcc769d4d82bea3f530cf72)

2. What Kubernetes version are you running? kubectl version will print the
version if a cluster is running or provide the Kubernetes version specified as
a kops flag.

Irrelevant.

3. What cloud provider are you using?

AWS (but also, irrelevant)

4. What commands did you run? What is the simplest way to reproduce this issue?

kops toolbox template \
    --name failing.example \
    --set architecture=amd64 \
    --set cloud=aws \
    --snippets snippets/common/ \
    --template templates/kops

snippets/common/ami:

{{ default (ChannelRecommendedImage $.cloud (include "kubernetesVersion" $) $.architecture) $.image }}

snippets/common/kubernetesVersion:

{{ ChannelRecommendedKopsKubernetesVersion }}

templates/kops/example.yaml:

image: {{ include "ami" $ }}

5. What happened after the commands executed?

unable to render template: templates/kops-test/example.yaml, error:
template: mainTemplate:1:10: executing "mainTemplate" at <include "ami" $>:
error calling include: snippet: ami, issue: template: ami:1:77:
executing "ami" at <$.architecture>: wrong type for value; expected architectures.Architecture; got string

6. What did you expect to happen?

image: 099720109477/ubuntu/images/hvm-ssd/ubuntu-focal-20.04-arm64-server-20210315

7. Please provide your cluster manifest. Execute
kops get --name my.example.com -o yaml to display your cluster manifest.
You may want to remove your cluster name and other sensitive information.

Not relevant.

8. Please run the commands with most verbose logging by adding the -v 10 flag.
Paste the logs into this report, or in a gist and provide the gist link here.

snip
I0412 16:24:32.377905    9414 channel.go:105] resolving "stable" against default channel location "https://raw.githubusercontent.com/kubernetes/kops/master/channels/"
I0412 16:24:32.377952    9414 channel.go:110] Loading channel from "https://raw.githubusercontent.com/kubernetes/kops/master/channels/stable"
I0412 16:24:32.377964    9414 context.go:216] Performing HTTP request: GET https://raw.githubusercontent.com/kubernetes/kops/master/channels/stable
I0412 16:24:32.707957    9414 channel.go:119] Channel contents: spec:
  images:
    # We put the "legacy" version first, for kops versions that don't support versions ( < 1.5.0 )
    - name: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2017-07-28
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.4.0 <1.5.0"
    - name: kope.io/k8s-1.5-debian-jessie-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.5.0 <1.6.0"
    - name: kope.io/k8s-1.6-debian-jessie-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.6.0 <1.7.0"
    - name: kope.io/k8s-1.7-debian-jessie-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.7.0 <1.8.0"
    - name: kope.io/k8s-1.8-debian-stretch-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.8.0 <1.9.0"
    - name: kope.io/k8s-1.9-debian-stretch-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.9.0 <1.10.0"
    - name: kope.io/k8s-1.10-debian-stretch-amd64-hvm-ebs-2018-08-17
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.10.0 <1.11.0"
    # Stretch is the default for 1.11 (for nvme)
    - name: kope.io/k8s-1.11-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.11.0 <1.12.0"
    - name: kope.io/k8s-1.12-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.12.0 <1.13.0"
    - name: kope.io/k8s-1.13-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.13.0 <1.14.0"
    - name: kope.io/k8s-1.14-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.14.0 <1.15.0"
    - name: kope.io/k8s-1.15-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.15.0 <1.16.0"
    - name: kope.io/k8s-1.16-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.16.0 <1.17.0"
    - name: kope.io/k8s-1.17-debian-stretch-amd64-hvm-ebs-2021-02-05
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.17.0 <1.18.0"
    - name: 099720109477/ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-20210315
      providerID: aws
      architectureID: amd64
      kubernetesVersion: ">=1.18.0"
    - name: 099720109477/ubuntu/images/hvm-ssd/ubuntu-focal-20.04-arm64-server-20210315
      providerID: aws
      architectureID: arm64
      kubernetesVersion: ">=1.20.0"
    - name: "cos-cloud/cos-stable-65-10323-99-0"
      providerID: gce
      architectureID: amd64
      kubernetesVersion: "<1.16.0-alpha.1"
    - name: "cos-cloud/cos-stable-77-12371-114-0"
      providerID: gce
      architectureID: amd64
      kubernetesVersion: ">=1.16.0 <1.18.0"
    - name: "ubuntu-os-cloud/ubuntu-2004-focal-v20210315"
      providerID: gce
      architectureID: amd64
      kubernetesVersion: ">=1.18.0"
  cluster:
    kubernetesVersion: v1.5.8
    networking:
      kubenet: {}
  kubernetesVersions:
  - range: ">=1.20.0"
    recommendedVersion: 1.20.5
    requiredVersion: 1.20.0
  - range: ">=1.19.0"
    recommendedVersion: 1.19.9
    requiredVersion: 1.19.0
  - range: ">=1.18.0"
    recommendedVersion: 1.18.17
    requiredVersion: 1.18.0
  - range: ">=1.17.0"
    recommendedVersion: 1.17.17
    requiredVersion: 1.17.0
  - range: ">=1.16.0"
    recommendedVersion: 1.16.15
    requiredVersion: 1.16.0
  - range: ">=1.15.0"
    recommendedVersion: 1.15.12
    requiredVersion: 1.15.0
  - range: ">=1.14.0"
    recommendedVersion: 1.14.10
    requiredVersion: 1.14.0
  - range: ">=1.13.0"
    recommendedVersion: 1.13.12
    requiredVersion: 1.13.0
  - range: ">=1.12.0"
    recommendedVersion: 1.12.10
    requiredVersion: 1.12.0
  - range: ">=1.11.0"
    recommendedVersion: 1.11.10
    requiredVersion: 1.11.0
  - range: "<1.11.0"
    recommendedVersion: 1.11.10
    requiredVersion: 1.11.10
  kopsVersions:
  - range: ">=1.20.0-alpha.1"
    #recommendedVersion: "1.19.0-beta.3"
    #requiredVersion: 1.20.0
    kubernetesVersion: 1.20.5
  - range: ">=1.19.0-beta.3"
    #recommendedVersion: "1.19.0-beta.3"
    #requiredVersion: 1.19.0
    kubernetesVersion: 1.19.9
  - range: ">=1.18.0-alpha.1"
    recommendedVersion: "1.18.2"
    #requiredVersion: 1.18.0
    kubernetesVersion: 1.18.17
  - range: ">=1.17.0-alpha.1"
    recommendedVersion: "1.18.2"
    #requiredVersion: 1.17.0
    kubernetesVersion: 1.17.17
  - range: ">=1.16.0-alpha.1"
    recommendedVersion: "1.18.2"
    #requiredVersion: 1.16.0
    kubernetesVersion: 1.16.15
  - range: ">=1.15.0-alpha.1"
    recommendedVersion: "1.18.2"
    #requiredVersion: 1.15.0
    kubernetesVersion: 1.15.12
  - range: ">=1.14.0-alpha.1"
    #recommendedVersion: "1.14.0"
    #requiredVersion: 1.14.0
    kubernetesVersion: 1.14.10
  - range: ">=1.13.0-alpha.1"
    #recommendedVersion: "1.13.0"
    #requiredVersion: 1.13.0
    kubernetesVersion: 1.13.12
  - range: ">=1.12.0-alpha.1"
    recommendedVersion: "1.12.1"
    #requiredVersion: 1.12.0
    kubernetesVersion: 1.12.10
  - range: ">=1.11.0-alpha.1"
    recommendedVersion: "1.11.1"
    #requiredVersion: 1.11.0
    kubernetesVersion: 1.11.10
  - range: "<1.11.0-alpha.1"
    recommendedVersion: "1.11.1"
    #requiredVersion: 1.10.0
    kubernetesVersion: 1.11.10

unable to render template: templates/kops-test/example.yaml, error: template: mainTemplate:1:10: executing "mainTemplate" at <include "ami" $>: error calling include: snippet: ami, issue: template: ami:1:77: executing "ami" at <$.architecture>: wrong type for value; expected architectures.Architecture; got string

9. Anything else do we need to know?

This was working fine in pre-releases. It seems #11046 broke this feature.

@hakman
Copy link
Member

hakman commented Apr 13, 2021

Thanks for reporting this @yurrriq, was fairly easy to fix with the steps you provided.

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

Successfully merging a pull request may close this issue.

3 participants