Get latest tag in .gitlab-ci.yml for Docker build

Viewed 15568

I want to add a tag when building a Docker image, I'm doing this so far but I do not know how to get the latest tag on the repository being deployed.

docker build -t company/app .

My goal docker build -t company/app:$LATEST_TAG_IN_REPO? .

2 Answers

Since you're looking for the "latest" git tag which is an ancestor of the currently building commit you probably want to use

git describe --tags --abbrev=0

to get it and use it like:

docker build -t company/app:$(git describe --tags --abbrev=0) .

Read here for the finer points on git describe

You can try using $CI_COMMIT_TAG or $CI_COMMIT_REF_NAME, this is part of the predefined variables accessible during builds.

If you want to see what are all the available environment variables during build step this should work as one of your jobs:

script:
    - env
Related