ajoberstar / reckon

Infer a project's version from your Git repository.
Apache License 2.0
187 stars 28 forks source link

Ability to change version string charactes? #56

Closed ieugen closed 6 years ago

ieugen commented 6 years ago

Hi,

Can I configure reckon to change/remove some "illegal" characters like + from the version string?

I'm using reckon to generate version and do my builds. For my project it generates version like: 2.2.0-dev.0.349+1ae1fecda2f3f9f2020c98f9d35d942a23164806 which is fine, until I try to publish a docker image with that string as tag. In that case it fails with invalid reference format.

Now, in my Jenkinsfile I can replace + with _ and publish the image but we are also using rundeck with a plugin that gets maven artifact versions from sonatype nexus.

I would like to use the same version across my artifacts so I can deploy docker images by that.

The use case is not that strong since it might have other solutions but I can't see one right now.

ajoberstar commented 6 years ago

This functionality isn't configurable, though I think you have two options to avoid the +:

Does either one of those work for your use case?

ieugen commented 6 years ago

Hi,

Use the snapshot approach instead of stages (not sure if that works with Docker either though)

It wouldn't help to identify builds.

Use "significant" versions anytime you publish to Docker. (i.e. always pass in a stage value. Note this would also require you to tag all of these releases you publish to Docker).

I would have to add a new build job for this for every job. I'll think about it, thanks.