Skip to main content

Adicionar scripts ao seu fluxo de trabalho

Você pode usar fluxos de trabalho do GitHub Actions para executar scripts.

Você pode usar um fluxo de trabalho do GitHub Actions para executar scripts e comandos de shell, que são então executados no executor atribuído. Este exemplo demonstra como usar a palavra-chave run para executar o comando npm install -g bats no executor.

jobs:
  example-job:
    runs-on: ubuntu-latest
    steps:
      - run: npm install -g bats

Para usar um fluxo de trabalho para executar um script armazenado em seu repositório, primeiro você deve fazer check-out do repositório para o executor. Feito isso, você pode usar a palavra-chave run para executar o script no executor. O exemplo a seguir executa dois scripts, cada um em uma etapa de trabalho separada. O local dos scripts no executor é especificado definindo um diretório de trabalho padrão para comandos de execução. Para saber mais, confira Definindo um shell padrão e diretório de trabalho.

jobs:
  example-job:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./scripts
    steps:
      - name: Check out the repository to the runner
        uses: actions/checkout@v4  
      - name: Run a script
        run: ./my-script.sh
      - name: Run another script
        run: ./my-other-script.sh

Todos os scripts que você deseja que um trabalho de fluxo de trabalho execute devem ser executáveis. Você pode fazer isso no fluxo de trabalho, passando o script como um argumento para o interpretador que executará o script, por exemplo, run: bash script.sh, ou tornando o próprio arquivo executável. Você pode dar ao arquivo a permissão de execução usando o comando git update-index --chmod=+x PATH/TO/YOUR/script.sh localmente e, em seguida, confirmando e enviando o arquivo por push para o repositório. Como alternativa, para fluxos de trabalho executados em executores Linux e Mac, você pode adicionar um comando para dar ao arquivo a permissão de execução no trabalho de fluxo de trabalho, antes de executar o script:

jobs:
  example-job:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./scripts
    steps:
      - name: Check out the repository to the runner
        uses: actions/checkout@v4  
      - name: Make the script files executable
        run: chmod +x my-script.sh my-other-script.sh
      - name: Run the scripts
        run: |
          ./my-script.sh
          ./my-other-script.sh

Para saber mais sobre a palavra-chave run, confira Sintaxe de fluxo de trabalho para o GitHub Actions.