В моем репозитории проекта Docker у меня есть файл VERSION, который не содержит ничего, кроме номера версии.
1.2.3
В Travis я могу cat
поместить файл в переменную среды и использовать это для пометки моей сборки перед отправкой в Docker Hub.
---
env:
global:
- USER=username
- REPO=my_great_project
- VERSION=$(cat VERSION)
Что эквивалентно этому в Действиях GitHub? Я пробовал это, но не работает.
name: Test
on:
...
...
env:
USER: username
REPO: my_great_project
jobs:
build_ubuntu:
name: Build Ubuntu
runs-on: ubuntu-latest
env:
BASE: ubuntu
steps:
- name: Check out the codebase
uses: actions/checkout@v2
- name: Build the image
run: |
VERSION=$(cat VERSION)
docker build --file ${BASE}/Dockerfile --tag ${USER}/${REPO}:${VERSION} .
build_alpine:
name: Build Alpine
runs-on: ubuntu-latest
env:
BASE: alpine
...
...
...
Я тоже пробовал это, но это не работает.
- name: Build the image
run: |
echo "VERSION=$(cat ./VERSION)" >> $GITHUB_ENV
docker build --file ${BASE}/Dockerfile --tag ${USER}/${REPO}:${VERSION} .
VERSION
в среде или он нужен вам просто как значение переменнойVERSION
в командеdocker build
? - person Benjamin W.   schedule 07.11.2020docker build
,docker tag
иdocker push
- person Logan M.   schedule 07.11.2020VERSION=$(< VERSION)
, а затем просто использовать$VERSION
на том же шагеrun
. По сути, то, что вы сделали с первой попытки. Как это не работает? - person Benjamin W.   schedule 07.11.2020VERSION
в окружающей среде. Я пытаюсь использовать его в несколько этапов и не хочу устанавливать его каждый раз. Есть ли способ добавить его для всех шагов? - person Logan M.   schedule 07.11.2020