From 4e23dad424d3f62a754f00542a1f4a278e42d323 Mon Sep 17 00:00:00 2001 From: Ray Zane Date: Wed, 23 May 2018 14:39:32 -0400 Subject: [PATCH 1/4] Fix CI --- .travis.yml | 2 +- Dockerfile | 15 +++++++-------- docker-compose.yml | 2 +- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index d53d79d..ad1c00d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ sudo: required language: elixir elixir: - - 1.5 + - 1.6.5 services: - docker diff --git a/Dockerfile b/Dockerfile index 3b03f81..14c831e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM elixir:1.5 +FROM elixir:1.6.5-slim # --- Set Locale to en_US.UTF-8 --- @@ -14,13 +14,12 @@ ENV LC_ALL en_US.UTF-8 # --- MSSQL ODBC INSTALL --- -RUN apt-get update && apt-get install -y --no-install-recommends apt-transport-https - -RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \ -&& curl https://packages.microsoft.com/config/debian/8/prod.list | tee -a /etc/apt/sources.list.d/mssql-release.list \ -&& apt-get update \ -&& ACCEPT_EULA=Y apt-get install msodbcsql -y \ -&& apt-get install unixodbc-dev -y +RUN apt-get update && \ + apt-get -y install curl apt-transport-https gnupg2 && \ + curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \ + curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list && \ + apt-get update && \ + ACCEPT_EULA=Y apt-get install -y msodbcsql17 # --- APP INSTALL --- diff --git a/docker-compose.yml b/docker-compose.yml index 827155e..50db495 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,7 +16,7 @@ services: - MSSQL_HST=sql_server - MSSQL_IN=MSSQLSERVER - MSSQL_PRT=9204 - - MSSQL_DVR={ODBC Driver 13 for SQL Server} + - MSSQL_DVR={ODBC Driver 17 for SQL Server} - TRAVIS_JOB_ID=$TRAVIS_JOB_ID depends_on: - sql_server From 4e6fde26434eb818941583e9e35102e79e8ed532 Mon Sep 17 00:00:00 2001 From: Ray Zane Date: Wed, 23 May 2018 14:59:41 -0400 Subject: [PATCH 2/4] Make local development with docker smoother --- .travis.yml | 2 +- docker-compose.yml | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index ad1c00d..88d8761 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,7 +11,7 @@ install: - docker-compose build mssqlex script: - - docker-compose run mssqlex + - docker-compose run mssqlex mix coveralls.travis after_script: - mix local.hex --force diff --git a/docker-compose.yml b/docker-compose.yml index 50db495..a21f908 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -20,4 +20,7 @@ services: - TRAVIS_JOB_ID=$TRAVIS_JOB_ID depends_on: - sql_server - command: ["./wait-for-it.sh", "sql_server:9204", "-s", "--", "mix", "coveralls.travis"] + volumes: + - .:/usr/src/app/ + entrypoint: ./wait-for-it.sh sql_server:9204 -- + command: mix test From dbc9f0c3269a4e9e85385df0da8e6a0325ce5732 Mon Sep 17 00:00:00 2001 From: Ray Zane Date: Wed, 23 May 2018 15:03:51 -0400 Subject: [PATCH 3/4] Check for compiler warnings on CI --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 88d8761..65fe27e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ install: - docker-compose build mssqlex script: + - docker-compose run mssqlex mix compile --warnings-as-errors - docker-compose run mssqlex mix coveralls.travis after_script: From 5a85d4be2f836e23a5dbf550b9517a4e2c0bb317 Mon Sep 17 00:00:00 2001 From: Ray Zane Date: Wed, 23 May 2018 15:10:07 -0400 Subject: [PATCH 4/4] Separate deps and build from host machine --- Dockerfile | 2 +- docker-compose.yml | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 14c831e..caa880f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,7 +28,7 @@ RUN mix local.hex --force && \ COPY . /usr/src/app WORKDIR /usr/src/app -RUN mix do deps.get +RUN mix do deps.get, deps.compile # --- Be able to run wait for it script --- diff --git a/docker-compose.yml b/docker-compose.yml index a21f908..903633c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,5 +22,7 @@ services: - sql_server volumes: - .:/usr/src/app/ + - /usr/src/app/deps + - /usr/src/app/_build entrypoint: ./wait-for-it.sh sql_server:9204 -- command: mix test