Доступ к сообщению тега git в сборке Travis

У меня есть проект git, настроенный для сборки и развертывания с помощью Travis CI. Фактическое развертывание настроено только на теги, поэтому я запускаю развертывание, создавая тег выпуска.

Когда я даю развертыванию имя и описание (для Elastic Beanstalk, где оно развертывается), я хотел бы использовать сообщение тега в качестве описания.

Я не могу понять, как получить сообщение тега, если это вообще возможно(?). TRAVIS_TAG имеет имя тега и используется в качестве имени развертывания, но описание используется по умолчанию. к последнему сообщению о коммите.
Я не хочу описывать выпуск. Я хочу, чтобы название выпуска, которое является сообщением тега, описывало выпуск.

Последнее сообщение о коммите доступно в TRAVIS_COMMIT_MESSAGE, но, к сожалению, нет TRAVIS_TAG_MESSAGE или чего-то подобного.

Можно ли получить сообщение тега в процессе сборки Travis?


person Lennholm    schedule 15.01.2018    source источник


Ответы (1)


Вы можете получить сообщение тега, выполнив одно из следующих действий — либо используя TRAVIS_TAG, либо получив тег, связанный с HEAD:

git tag -ln --format '%(subject)' $TRAVIS_TAG

git tag -ln --format '%(subject)' $(git describe --exact-match HEAD)
person match    schedule 15.01.2018
comment
Превосходно! Работает отлично. К сожалению, я ошибся, когда подумал, что сообщение тега совпадает с названием релиза. Оказывается, сообщение тега — это просто последнее сообщение коммита, поэтому мне нужно придумать что-то еще: p - person Lennholm; 15.01.2018
comment
Это должно быть сообщение тега, если вы используете аннотированные теги с git tag -a - person match; 15.01.2018
comment
Дело в том, что я не создаю тег вручную, он создается автоматически как облегченный тег, когда я публикую релиз на GitHub. - person Lennholm; 15.01.2018
comment
Ах да, я ударил это раньше. Я считаю, что вы можете сначала нажать аннотированный тег из командной строки, а затем выбрать этот тег на веб-странице github, где вы создаете выпуски, хотя это может не соответствовать вашему рабочему процессу... - person match; 15.01.2018
comment
Верно, это сделало бы мой процесс выпуска менее простым и прямолинейным, чем мне хотелось бы. Кроме того, сообщение тега и название релиза в GitHub по-прежнему являются двумя разными вещами. Я думаю, это имеет смысл, учитывая, что релизы — это собственность GitHub. Я мог бы решить эту проблему, используя REST API GitHub для получения названия релиза, но, в конце концов, это, вероятно, не стоит затраченных усилий. - person Lennholm; 16.01.2018