Сохранение уценки в переменной с использованием cat из файла, который будет раскрыт в вызове API в gitlab-ci.yml - PullRequest
0 голосов
/ 06 ноября 2019

Я (сейчас) успешно использую API релиза Gitlab для запуска релиза в репо. Тем не менее, я обнаружил, что передача markdown из строковой переменной в curl в API работает просто отлично. При использовании cat для получения уценки из файла я не могу заставить переменную правильно развернуться. В любом случае конвейер завершается успешно, но без вызова API.

Я пытался следовать официальному предложению документов, которое было предложено в другом посте . Я также попробовал несколько других вещей, таких как использование скрипта вместо указания bash и zsh в качестве оболочки, так как по умолчанию это просто sh в моем окне настройки gitlab.

create_release:
    script:
      - DESCRIPTION=$(cat description.md)
      - |
        curl --silent --request POST --header "Content-Type:application/json" \ 
        --header "PRIVATE-TOKEN: TOKEN" \ 
        --data '{"name":"New release","tag_name":"v0.3", "description":"'"$DESCRIPTION"'","assets":{"links":[{"name":"hoge","url":"https://google.com"}]}}' \
        https://gitlab.bankassembly.com/api/v4/projects/369/releases

Это работает, как и ожидалось, когда я просто помещаю некоторую уценку в виде строки, как DESCRIPTION="## Changelog \r\n something something ...", но независимо от того, что я пробовал, это не совсем работает при использовании DESCRIPTION=$(cat description.md)

...