Skip to content
This repository has been archived by the owner on Nov 10, 2017. It is now read-only.

Use semver for role versions #70

Open
nervo opened this issue Sep 7, 2015 · 10 comments
Open

Use semver for role versions #70

nervo opened this issue Sep 7, 2015 · 10 comments

Comments

@nervo
Copy link

nervo commented Sep 7, 2015

Using "version" parameter in a yaml role file like this:

- src: test.test
  version: 1.0

makes ansible-galaxy trying to download a strictly version-linked archive on github like this:

https://github.com/test/test/archive/1.0.tar.gz

So, "1.0" could only be either a branch or a tag.

I would be a nice thing to use semver in such a situation, like this:

- src: test.test
  version: ~1.0.0

So that we can respect the traditional git workflow, meaning that master is the main current branch, and patch (in a semver point of view) are just tags on master.

@hyvs
Copy link

hyvs commented Sep 7, 2015

👍

@gfaivre
Copy link

gfaivre commented Sep 7, 2015

👍 essential feature.

@gregdek
Copy link
Contributor

gregdek commented Sep 11, 2015

Come on, guys. Three thumbs-up from the same org is no more informative than one thumbs-up. :)

It's something to consider, but we want to be careful; not everyone uses semver, and not everyone is familiar with the particular packaging notations for npm. We don't want to require use of semver, or even assume it to be the default.

Are you talking about a full implementation of semver here?

@nervo
Copy link
Author

nervo commented Sep 11, 2015

Ooops, so much love in our organization, that everyone is looking in the same direction :)

Anyway, semver is not essentially related to npm, it slowly become a defacto standard for such things. We naively thoughts that ansible galaxy already implements it, and starts to plan our role git workflow in this manner (see https://github.com/ElaoInfra).

And yes, we were talking about a full implemenatation. We realize that it could be a backward incompatible point for people using ^ or * or ~ in their tag/branch names....

@gregdek
Copy link
Contributor

gregdek commented Sep 11, 2015

Understood. Can't promise it soon, but now it's definitely on the list. Thanks!

@prevostc
Copy link

👍 essential feature

@JustInVTime
Copy link

👍 any news on this issue?

@thorstenhuhn
Copy link

thorstenhuhn commented Dec 16, 2016

I would also vote for this feature. https://pypi.python.org/pypi/semantic_version/ might help implementing this (it's not said in the documentation but it also supports caret ^ and tilde ~ notation for pessimistic comparison). Using git as scm and having the repository url, existing tags could be retrieved using "git ls-remote --tags " and be matched against a spec using the python package above. Unfortunately my programming skills are not smart enough to contribute on my own.

@LudwigHoff
Copy link

+1

Server and lock file would be wonderful, please.

@frgray
Copy link

frgray commented Jul 27, 2017

+1

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

No branches or pull requests

9 participants