Skip to content
Snippets Groups Projects
Commit 22917dfe authored by Diego Giovane Pasqualin's avatar Diego Giovane Pasqualin
Browse files

Cache

parent 2f227b44
Branches
Tags
No related merge requests found
# Usando cache
before_script:
- apt-get update && apt-get install -y build-essential
# Você pode definir estágios de integração contínua. Estes três estágios
# abaixo são os mais comuns. A ordem em que aparecem define a ordem de
# execução. De forma que os 'jobs' marcados como estágio 'build' executarão
# antes dos jobs 'test', que por sua vez executa antes dos jobs 'deploy'.
# O estágio seguinte só é executado se todos os jobs do estágio anterior
# completarem com sucesso.
# NOTA: ATUALMENTE NÃO EXISTE UMA FORMA DE PASSAR O RESULTADO DE UM ESTÁGIO
# PARA OUTRO, POR EXEMPLO O ARQUIVO COMPILADO EM 'BUILD' PARA SER TESTADO NO
# ESTÁGIO 'TEST'. EXISTE UMA SOLUÇÃO PREVISTA PARA O GITLAB 8.4.
stages:
- build
- test
- deploy
job1:
# Aqui aparece a definição sobre de qual estágio o job faz parte. Se
# nenhum for especificado, o gitlab assume que o estágio é 'test'.
# Repare que o valor foi atribuído na mesma linha, mas poderia ser na
# linha de baixo, como é feito na maioria dos casos.
stage: build
tags:
- debian
script:
- echo "Estágio 'build'"
- make
job2:
# Esse job só será executado se todos os jobs do estágio 'build'
# terminarem com sucesso.
stage: test
artifacts:
paths:
- build/
# Todos os arquivos não monitorados pelo git serão 'cacheados',
# significando que serão copiados e (potencialmente) reutilizados em
# builds futuras.
cache:
untracked: true
# Também é possível utilizar o campo 'paths', como em 'artifacts'.
# Muito útil para fazer cache do vendor/ em aplicações rails ou
# node_modules/ em aplicações node.
# paths:
# - node_modules/
tags:
- debian
script:
- echo "Estágio 'test'"
# Como dito, ainda não é possível passar arquivos de um estágio para
# outro, por isso o comando abaixo vai falhar.
- ./run-test.sh
job3:
# Os jobs marcados como 'deploy' são os últimos a serem executados.
stage: deploy
tags:
- debian
script:
- echo "Estágio 'deploy'"
# Aqui você pode fazer upload de algo para um servidor. Para isso
# (atualmente) você precisa gerar um par de chaves e colocar a chave
# privada em alguma variável que é passada para os scripts
# abaixo como variável de ambiente. Defina essa variável em
# <projeto>/Settings/Variables. O script deve então salvar essa
# variável (chave privada) em um arquivo para poder utilizá-la com
# ssh.
#- script_que_vai_copiar_para_servidor.sh
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment