Skip to content
This repository has been archived by the owner on Feb 22, 2022. It is now read-only.

[stable/traefik] Can not install with helm #999

Closed
jumasa opened this issue May 4, 2017 · 11 comments
Closed

[stable/traefik] Can not install with helm #999

jumasa opened this issue May 4, 2017 · 11 comments

Comments

@jumasa
Copy link

jumasa commented May 4, 2017

Hi all,

stable/traefik installation with helm does not seem to work. I did perform the following steps:

helm repo list
NAME  	URL                                             
stable	https://kubernetes-charts.storage.googleapis.com
local 	http://127.0.0.1:8879/charts 
$ helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈ Happy Helming!⎈
$ helm search |grep traefik
stable/traefik               	1.2.1-a	A Traefik based Kubernetes ingress controller w...
$ helm install stable/traefik 
Error: file "stable/traefik" not found
$ helm version
Client: &version.Version{SemVer:"v2.4.1", GitCommit:"46d9ea82e2c925186e1fc620a8320ce1314cbb02", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.4.1", GitCommit:"46d9ea82e2c925186e1fc620a8320ce1314cbb02", GitTreeState:"clean"}

I am able to install other charts like mysql.

Did I miss anything?

Thanks!

@jumasa jumasa changed the title [stable/traefik] Can not install [stable/traefik] Can not install with helm May 4, 2017
@krancour
Copy link
Contributor

krancour commented May 4, 2017

I also had this problem, but only after upgrading my Helm to 2.4.1. Prior to that, I was unable to reproduce.

@technosophos
Copy link
Member

See also helm/helm#2408

The bottom line is that the version number on this chart is, according to the SemVer spec "unstable", and so it will not be automatically selected. #2407 displays a workaround, and #2408 adds a --devel flag like Homebrew has.

@krancour
Copy link
Contributor

krancour commented May 6, 2017

Ok... that's my fault. I'll see if I can get that fixed. What I was after when I originally authored the traefik chart was a way to keep it's semver in lock step with the version of traefik the chart used, then use an extension to indicate iterations of the chart itself for a given version of traefik. I think I got the extension wrong? I'll try and fix this on the chart end if I can.

@cknowles
Copy link
Contributor

cknowles commented May 9, 2017

According to semver 2 it's a plus sign and a series of dot separated identifiers immediately following the patch or pre-release version.

@cknowles
Copy link
Contributor

cknowles commented May 9, 2017

A slightly different issue using --wait and Traefk here but not sure if it's Traefik specific yet.

@krancour
Copy link
Contributor

krancour commented May 9, 2017

@c-knowles

According to semver 2 it's a plus sign and a series of dot separated identifiers immediately following the patch or pre-release version.

I had read through that as well when contemplating how to fix this. But then I read this:

Build metadata SHOULD be ignored when determining version precedence.

That would imply that 1.2.3+b isn't inherently considered newer than 1.2.3+a. I'm not clear yet on whether or not that matters to Helm. e.g. If you have deployed 1.2.3+a and you helm upgrade, will Helm understand that 1.2.3+b is newer? cc @technosophos @michelleN @adamreese?

At any rate, it's probably better than what we're doing currently. Any further thoughts?

@cknowles
Copy link
Contributor

Ah that's interesting. Then it would be useful to know the general direction of Helm in this regard. I agree that update is probably better but no idea which one Helm will treat as the newer one so better to try it out I suppose.

@krancour
Copy link
Contributor

Then it would be useful to know the general direction of Helm in this regard.

I agree there's a broader / very general question buried in here:

If a chart provides (by default) a certain, specific version of a piece of software, how, in general, are charts (intended) to be versioned independently of the underlying software in such a way that the specific version of the underlying software that a user is installing remains transparent?

I haven't observed any existing convention that addresses this.

@adamreese
Copy link
Member

adamreese commented May 10, 2017

Helm does not consider chart version when performing an upgrade. You are upgrading the release which can be an older version, the same version with different configuration, or just a newer chart version. ( not sure if that answered the question )

@krancour
Copy link
Contributor

@adamreese, it does. Thank you.

I think then, based on this, for this chart, we can simply move from using a - to separate Traefik's semver from build info (chart version) to using a + for the same purpose.

@krancour
Copy link
Contributor

krancour commented May 19, 2017

As it turns out, chart.yaml supports an appVersion field that, prior to now, I was unaware of. (I can't believe I didn't know this!!) See #1082. Starting with version 1.3.0, the version will refer strictly to the revision of the chart, while the appVersion field will reference the revision of the software provided.

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

5 participants