diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 57faefa31a99afddc42891368d32c67615693f3a..fd79072fe27af380c1a03dcba65980b6b4129afc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,24 +1,31 @@ -# Usando cache +# Serviços -before_script: - - apt-get update && apt-get install -y build-essential +# 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" job1: script: - - make - artifacts: - paths: - - build/ - cache: - # Todos os arquivos não monitorados pelo git serão 'cacheados', - # significando que serão copiados e (potencialmente) reutilizados em - # builds futuras. - untracked: true - # Também é possível utilizar o campo 'paths', como em 'artifacts'. - # Muito útil para fazer cache do vendor/ em aplicações rails, - # node_modules/ em aplicações node, ou até cache do apt. - paths: - - /var/cache/apt/archives/ + # 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 tags: - debian - diff --git a/Makefile b/Makefile deleted file mode 100644 index 36b541779712c84c36e60602309bd1877a9ca798..0000000000000000000000000000000000000000 --- a/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -CC=gcc -CFLAGS=-I. -OBJ = hello.o -BIN = hello -DEST = build - -all: hello - mkdir -p $(DEST) - mv $(BIN) $(DEST) - -%.o: %.c - $(CC) -c -o $@ $< $(CFLAGS) - -$(BIN): $(OBJ) - $(CC) -o $@ $^ $(CFLAGS) - -clean: - rm -f $(OBJ) - rm -rf $(DEST) diff --git a/hello.c b/hello.c deleted file mode 100644 index 5e3ef85c4db9f923bfcc48ad502a7be5f743a6b6..0000000000000000000000000000000000000000 --- a/hello.c +++ /dev/null @@ -1,6 +0,0 @@ -#include <stdio.h> - -int main(int argc, char** argv) { - printf("hello world\n"); - return (0); -} diff --git a/hello.o b/hello.o deleted file mode 100644 index 71e4bd747d5c33101988f2086a43bc31545c6975..0000000000000000000000000000000000000000 Binary files a/hello.o and /dev/null differ diff --git a/run-test.sh b/run-test.sh deleted file mode 100755 index 3ca8c004fafc845b404c039490fbf30e3605c15d..0000000000000000000000000000000000000000 --- a/run-test.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -# Script que testa o hello. Esse é só um exemplo, existem inúmeras ferramentas de testes -# por aí, procure não reinventar a roda. - -BIN="build/hello" - -# Testa se arquivo existe e é executável -if ! test -x $BIN; then - echo "Binário inexistente" - exit 1 -fi - -# Testa código de retorno -res=$(./$BIN) -ret=$? -echo -n "Testando código de retorno... " -if test $ret -ne 0; then - echo "ERRO: Programa retornou erro $ret: $res" - exit 1 -fi -echo "OK" - -# Testa valor de retorno -expected="hello world" -echo -n "Testando valor de retorno... " -if test "$res" != "$expected"; then - echo "ERRO: Programa deveria retornar $expected, mas retornou \"$res\"." - exit 1 -fi -echo "OK" - -# Se chegou até aqui, sucesso! -echo "Todos os testes passaram!" - -exit 0