feat: Cache prod _build from docker step
This commit is contained in:
parent
d310362f14
commit
96924e82c9
3 changed files with 10 additions and 1 deletions
|
@ -1,4 +1,3 @@
|
||||||
_build
|
|
||||||
cover
|
cover
|
||||||
.elixir_ls
|
.elixir_ls
|
||||||
*.dump
|
*.dump
|
||||||
|
|
|
@ -28,6 +28,7 @@ fetch_application_dependencies:
|
||||||
- mix local.hex --force
|
- mix local.hex --force
|
||||||
- mix local.rebar --force
|
- mix local.rebar --force
|
||||||
- mix deps.get
|
- mix deps.get
|
||||||
|
- mix deps.compile
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- deps/phoenix
|
- deps/phoenix
|
||||||
|
@ -82,12 +83,20 @@ build_image_for_commit:
|
||||||
- master
|
- master
|
||||||
services:
|
services:
|
||||||
- name: docker:20.10-dind
|
- name: docker:20.10-dind
|
||||||
|
cache:
|
||||||
|
key:
|
||||||
|
files:
|
||||||
|
- mix.lock
|
||||||
|
paths:
|
||||||
|
- _build/
|
||||||
|
- deps/
|
||||||
script:
|
script:
|
||||||
- docker login "https://${CI_REGISTRY}" -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
- docker login "https://${CI_REGISTRY}" -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
||||||
- docker pull $CI_REGISTRY_IMAGE:latest || true
|
- docker pull $CI_REGISTRY_IMAGE:latest || true
|
||||||
- export DOCKER_BUILDKIT=1
|
- export DOCKER_BUILDKIT=1
|
||||||
- docker build --cache-from $CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --build-arg BUILDKIT_INLINE_CACHE=1 .
|
- docker build --cache-from $CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --build-arg BUILDKIT_INLINE_CACHE=1 .
|
||||||
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
||||||
|
- docker cp `docker create $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA`:/root/app/_build/prod _build
|
||||||
|
|
||||||
deploy_to_tags:
|
deploy_to_tags:
|
||||||
stage: deploy_tags
|
stage: deploy_tags
|
||||||
|
|
|
@ -25,6 +25,7 @@ ADD ./apps/app/mix.exs /root/app/apps/app/
|
||||||
ADD ./apps/content/mix.exs /root/app/apps/content/
|
ADD ./apps/content/mix.exs /root/app/apps/content/
|
||||||
ADD ./apps/core/mix.exs /root/app/apps/core/
|
ADD ./apps/core/mix.exs /root/app/apps/core/
|
||||||
ADD ./deps /root/app/deps
|
ADD ./deps /root/app/deps
|
||||||
|
ADD ./_build /root/app/_build
|
||||||
RUN mix deps.get
|
RUN mix deps.get
|
||||||
|
|
||||||
ADD ./script /root/app/script
|
ADD ./script /root/app/script
|
||||||
|
|
Loading…
Reference in a new issue