Puede utilizar un flujo de trabajo GitHub Actions para ejecutar scripts y comandos de shell, los cuales se ejecutarán después en el ejecutor asignado. En este ejemplo se muestra cómo utilizar run
la palabra clave para ejecutar el comando npm install -g bats
en el ejecutor.
jobs:
example-job:
runs-on: ubuntu-latest
steps:
- run: npm install -g bats
Para usar un flujo de trabajo para ejecutar un script almacenado en el repositorio, primero debe consultar el repositorio en el ejecutor. Una vez hecho esto, puede usar la run
palabra clave para ejecutar el script en el ejecutor. En el ejemplo siguiente se ejecutan dos scripts, cada uno en un paso de trabajo independiente. La ubicación de los scripts en el ejecutor se especifica estableciendo un directorio de trabajo predeterminado para los comandos de ejecución. Para obtener más información, vea «Configuración de un shell y directorio de trabajo predeterminados».
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
Los scripts en los que desee ejecutar un flujo de trabajo deben ser ejecutables. Puede hacerlo dentro del flujo de trabajo, pasando el script como argumento al intérprete que ejecutará el script (por ejemplo, run: bash script.sh
) o haciendo que el propio archivo sea ejecutable. Puede conceder al archivo el permiso de ejecución localmente mediante el comando git update-index --chmod=+x PATH/TO/YOUR/script.sh
y, a continuación, confirmar e insertar el archivo en el repositorio. Como alternativa, para los flujos de trabajo que se ejecutan en ejecutores de Linux y Mac, puede agregar un comando para conceder al archivo el permiso de ejecución en el trabajo de flujo de trabajo, antes de ejecutar el 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 obtener más información sobre la palabra clave run
, consulte "Sintaxis del flujo de trabajo para Acciones de GitHub".