1
resposta

[Dúvida] Posso criar 2 arquivos yml para rodar pipelines diferentes?

Eu sei que posso só criar outro stage, porem o que aconteceria se eu criasse 2 arquivos yml?

1 resposta

Olá, Iagor! Sua pergunta é muito pertinente.

Sim, você pode criar múltiplos arquivos yml para rodar pipelines diferentes. Cada arquivo yml representa um workflow separado e eles podem ser executados independentemente um do outro. Por exemplo, você pode ter um arquivo yml para rodar testes unitários e outro para rodar testes de integração, cada um com suas próprias configurações e triggers.

Então, se você criasse dois arquivos yml, você teria dois workflows distintos. Cada um deles poderia ser configurado para rodar em circunstâncias diferentes (por exemplo, um pode ser disparado em um push para a branch principal, enquanto o outro pode ser disparado quando uma pull request é aberta) e eles seriam executados independentemente um do outro.

Aqui está um exemplo prático:

  1. Arquivo unit-tests.yml:
name: Unit Tests
on: [push]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - name: Check out code
      uses: actions/checkout@v2
    - name: Run tests
      run: npm test
  1. Arquivo integration-tests.yml:
name: Integration Tests
on: [pull_request]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - name: Check out code
      uses: actions/checkout@v2
    - name: Run tests
      run: npm run test:integration

No exemplo acima, temos dois arquivos yml separados, cada um configurado para rodar um tipo diferente de teste em momentos diferentes. O unit-tests.yml é disparado sempre que há um push, enquanto o integration-tests.yml é disparado quando uma pull request é aberta.

Espero ter ajudado e bons estudos!