Действие Github: разделить длинную команду на несколько строк - PullRequest
2 голосов
/ 28 января 2020

У меня есть команда действия Github, которая очень длинная:

name: build

on: [push]

jobs:
    build:
        runs-on: ubuntu-18.04
        steps:
            - uses: actions/checkout@v1
            - name: Install Prerequisites
              run: |
                sudo apt-get update
                sudo apt-get install -y --no-install-recommends "a very very long list of prerequisites"

Могу ли я узнать, можно ли разбить длинную команду на несколько строк для лучшей читаемости? Я пробовал разделитель '\', но он не работает. Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 28 января 2020

Насколько я знаю, GitHub Actions не поддерживают это.

Однако вы можете использовать для этого переменные окружения.

Например, этот скрипт разбивает вашу команду на 3 строки код и выполняет его в одну строку.

steps:
  - name: Install Prerequisites
    run: |
      sudo apt-get update
      bash -c "$line1 $line2 $line3"
    env:
    - line1='sudo apt-get install -y --no-install-recommends '
    - line2='a very very long list'
    - line3='of prerequisites'

Создает переменные среды line1, line2 и line3, объединяет и выполняет их в сеансе bash.

1 голос
/ 27 февраля 2020

Обратите внимание также на функции join и format для выражений:

HELLO_WORLD = ${{ join('Hello', 'world!') }}
HELLO_WORLD = ${{ format('{{Hello {0}}}', 'World') }}

Предположительно, их можно комбинировать с переменными env.

...