Add CI_COMMIT_TAG_*
We currently have quite a few CI_COMMIT related variables available, most of course so we do not need the git command (and its setup) for many steps.
With the releases, we may want to do a few git-related tasks when creating a release.
For example, for the tag_name, we quite obviously may want to use ${CI_COMMIT_TAG:?}.
For the description we may want to do release notes. These could be very likely already be stored in the git tag message itself git tag --format='%(contents:subject)%0a%0a%(contents:body)' --list '${CI_COMMIT_TAG:?}'
.
While we already have CI_COMMIT_MESSAGE available to get the commit message, we do not have the same available for the commit tag. Surely an oversight.
For consistency, I strongly urge we add these 5 variables:
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TAG_DESCRIPTION | 14.5 | all | The description of the tag. If the title is shorter than 100 characters, the message without the first line. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TAG_MESSAGE | 14.5 | all | The full tag message. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TAG_TITLE | 14.5 | all | The title of the tag. The full first line of the message. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TAG_TIMESTAMP | 14.5 | all | The timestamp of the tag in the ISO 8601 format. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TAG_SIGNATURE | 14.5 | all | The signature of the tag. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
I've added as a separated item, CI_COMMIT_TAG_SIGNATURE
as we most probably do not want it as part of the description (or message) but it IS part of the tag as a whole of course.
I also strongly urge to not split this up into too many small parts in terms of deliverables, for one, they are all super related, and having only 1 as 'MVP' would mean it could take years to get the others; only frustrating users (again) :)
this all to be consistent with:
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_DESCRIPTION | 10.8 | all | The description of the commit. If the title is shorter than 100 characters, the message without the first line. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_MESSAGE | 10.8 | all | The full commit message. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TITLE | 10.8 | all | The title of the commit. The full first line of the message. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|
| CI_COMMIT_TIMESTAMP | 13.4 | all | The timestamp of the commit in the ISO 8601 format. |
|------------------------|-------|------|-----------------------------------------------------------------------------------------------------------------|