X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=.gitlab-ci.yml;h=c07f1a5d34f9028945a997fe65ffbc776eb40491;hb=d4a749cfb2f644dab9b0f414e8f0e41ed4ffd08f;hp=6deb0a1de56ed85132e63465b97d4a073c958bc4;hpb=a2f4fc49fe6d12fb9fc442b63f2ddd63e3e44782;p=akkoma diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6deb0a1de..c07f1a5d3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,8 +1,4 @@ -image: elixir:1.7.2 - -services: - - name: postgres:9.6.2 - command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"] +image: elixir:1.8.1 variables: POSTGRES_DB: pleroma_test @@ -17,23 +13,68 @@ cache: - deps - _build stages: - - lint + - build - test + - deploy before_script: - mix local.hex --force - mix local.rebar --force + +build: + stage: build + script: - mix deps.get - mix compile --force - - mix ecto.create - - mix ecto.migrate -lint: - stage: lint +docs-build: + stage: build + only: + - master@pleroma/pleroma + - develop@pleroma/pleroma + variables: + MIX_ENV: dev script: - - mix format --check-formatted + - mix deps.get + - mix compile + - mix docs + artifacts: + paths: + - priv/static/doc unit-testing: stage: test + services: + - name: postgres:9.6.2 + command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"] script: + - mix ecto.create + - mix ecto.migrate - mix test --trace --preload-modules + +lint: + stage: test + script: + - mix format --check-formatted + +analysis: + stage: test + script: + - mix deps.get + - mix credo --strict --only=warnings,todo,fixme,consistency,readability + + +docs-deploy: + stage: deploy + image: alpine:3.9 + only: + - master@pleroma/pleroma + - develop@pleroma/pleroma + before_script: + - apk update && apk add openssh-client rsync + script: + - mkdir -p ~/.ssh + - echo "${SSH_HOST_KEY}" > ~/.ssh/known_hosts + - eval $(ssh-agent -s) + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - + - rsync -hrvz --delete -e "ssh -p ${SSH_PORT}" priv/static/doc/ "${SSH_USER_HOST_LOCATION}/${CI_COMMIT_REF_NAME}"