Skip to content
Snippets Groups Projects
Commit 932837f7 authored by Thomas Citharel's avatar Thomas Citharel
Browse files

Introduce CI stages (front / back), mix format runs in parallel

parent 06da0085
No related branches found
No related tags found
No related merge requests found
image: tcitworld/mobilizon-ci
services:
- name: mdillon/postgis:10
alias: postgres
stages:
- front
- back
variables:
MIX_ENV: "test"
......@@ -12,24 +12,48 @@ variables:
POSTGRES_HOST: postgres
GEOLITE_CITIES_PATH: "/usr/share/GeoIP/GeoLite2-City.mmdb"
cache:
paths:
- deps
- _build
- .rebar3
- ~/.mix
- ~/.hex
- js/node_modules
js:
stage: front
before_script:
- cd js
- npm install
script:
- npm run build
after_script:
- cd ../
cache:
paths:
- js/node_modules
artifacts:
paths:
- priv/static
untracked: false
expire_in: 30 days
before_script:
- cd js && npm install && npm run build && cd ../
- mix local.rebar --force
- mix local.hex --force
- mix deps.get
- MIX_ENV=test mix ecto.create
- MIX_ENV=test mix ecto.migrate
elixir_format:
stage: back
before_script:
- mix deps.get
script:
- mix format --check-formatted --dry-run
cache:
paths:
- deps
mix:
stage: back
services:
- name: mdillon/postgis:10
alias: postgres
dependencies:
- js
before_script:
- mix deps.get
- MIX_ENV=test mix ecto.create
- MIX_ENV=test mix ecto.migrate
script:
- mix format --check-formatted --dry-run
- mix coveralls
- mix coveralls
cache:
paths:
- deps
- _build
FROM elixir:latest
LABEL maintainer="Thomas Citharel <tcit@tcit.fr>"
ENV REFRESHED_AT=2018-12-18
RUN apt-get update -yq && apt-get install -yq build-essential inotify-tools postgresql-client git curl gnupg
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash && apt-get install nodejs -yq
RUN curl -sL https://deb.nodesource.com/setup_10.x | bash && apt-get install nodejs -yq
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN mix local.hex --force && mix local.rebar --force
RUN curl http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz --output GeoLite2-City.tar.gz -s && tar zxf GeoLite2-City.tar.gz && mkdir -p /usr/share/GeoIP && mv GeoLite2-City_*/GeoLite2-City.mmdb /usr/share/GeoIP/GeoLite2-City.mmdb
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment