diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 85fb99b91d8ffa96c41ad71cecb05f79c0762d4e..066328f26d19fb9b4200eb90ee8572e441460c73 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,39 +1,29 @@ -# Serviços +# Limitando quais branches terão a build construída -# Define a imagem base do container Docker. -# O C3SL já tem algumas imagens definidas em runners, recomendamos que -# utilize o runner mais apropriado possível (setando as 'tags' nas builds) -# ao invés de utilizar uma imagem aqui. -# O runner pode ser configurado para permitir somente a utilização de -# algumas imagens, atualmente no C3SL somente essas são permitidas (o mesmo -# vale para o campo 'services' mais abaixo): -# ["node:*", "rails:*", "mongo:*", "redis:*", "postgres:*", "mysql:*"] -image: node:latest - -# Serviços são imagens Docker que será 'linkadas' aos containers que -# executarão as builds. Pode ser qualquer imagem do dockerhub.com. -# Também é possível definir os serviços individualmente para cada job, -# especificando o serviço dentro dele. -services: - # Se quiser outra versão do postgres use postgres:9.3, por exemplo. - # Também estão disponíveis serviços para mysql, mongodb, redis e outros. - - postgres:latest - -# Essas são variáveis de ambiente que serão passadas para a build. Como -# normalmente você irá utilizar um banco de dados de testes, não deve ser -# problema passar senhas por aqui. Mas se preferir também é possível definir -# variáveis secretas no Gitlab, em <project>/Settings/Variables -variables: - POSTGRES_DB: simmc - POSTGRES_USER: simmc - POSTGRES_PASSWORD: "123mudar" +# 'only' e 'except' permitem limitar quando builds são executadas a partir +# de nomes de branches ou tags. Eles são 'inclusivos', ou seja, se um branch +# aparece em 'only' ele será executado, independente de aparecer em 'except' +# ou não. +# Expressões regulares são aceitas. +# Roda a build somente se o branch começar com issue- job1: script: - # Exibe as variáveis de ambiente configuradas - - env - # Mostra que o serviço está configurado no /etc/hosts como uma - # máquina de mesmo nome (postgres, no caso) - - cat /etc/hosts - # Mostra que o serviço está acessível - - ping -W1 -c1 postgres + - echo "Building" + # Gera build para todos os branches que começam com issue- + only: + - /^issue-.*$/ + # 'branches' é uma palavra-chave que significa 'todos os branches' + # Então essa linha garante que a build não será executada para nenhum + # branch que não casar com o 'only' + except: + - branches + +# Roda a build em todos os branches menos no master +job2: + script: + - echo "Building" + only: + - branches + except: + - master