diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d6ed5fa..5d5cd7c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,4 @@ + stages: - environment - build @@ -8,37 +9,45 @@ stages: - production - stop -.updateContainerJob: - image: docker:stable - stage: environment - services: - - docker:dind - script: - - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG || true - - docker build --cache-from $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG . - - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG - tags: - - docker +before_script: + - export GRADLE_USER_HOME=$(pwd)/.gradle + - chmod +x ./gradlew -updateContainer: - extends: .updateContainerJob - only: - changes: - - Dockerfile -ensureContainer: - extends: .updateContainerJob - allow_failure: true - before_script: - - "mkdir -p ~/.docker && echo '{\"experimental\": \"enabled\"}' > ~/.docker/config.json" - - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - # Skip update container `script` if the container already exists - # via https://gitlab.com/gitlab-org/gitlab-ce/issues/26866#note_97609397 -> https://stackoverflow.com/a/52077071/796832 - - docker manifest inspect $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG > /dev/null && exit || true +cache: + key: ${CI_PROJECT_ID} + paths: + - .gradle/ +# +#.updateContainerJob: +# image: docker:stable +# stage: environment +# services: +# - docker:dind +# script: +# - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY +# - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG || true +# - docker build --cache-from $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG . +# - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG +# +#updateContainer: +# extends: .updateContainerJob +# only: +# changes: +# - Dockerfile +# +#ensureContainer: +# extends: .updateContainerJob +# allow_failure: true +# before_script: +# - "mkdir -p ~/.docker && echo '{\"experimental\": \"enabled\"}' > ~/.docker/config.json" +# - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY +# # Skip update container `script` if the container already exists +# # via https://gitlab.com/gitlab-org/gitlab-ce/issues/26866#note_97609397 -> https://stackoverflow.com/a/52077071/796832 +# - docker manifest inspect $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG > /dev/null && exit || true .build_job: - image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG +# image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG stage: build before_script: # We store this binary file in a variable as hex with this command, `xxd -p thorium-android-app.jks` @@ -60,6 +69,7 @@ ensureContainer: buildDebug: + image: vratislav/gitlab-ci-fastlane-android extends: .build_job script: - bundle exec fastlane buildDebug @@ -79,7 +89,7 @@ buildRelease: name: production testDebug: - image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG +# image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG stage: test dependencies: - buildDebug @@ -87,7 +97,7 @@ testDebug: - bundle exec fastlane test publishInternal: - image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG +# image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG stage: internal dependencies: - buildRelease @@ -100,7 +110,7 @@ publishInternal: - bundle exec fastlane internal .promote_job: - image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG +# image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG when: manual dependencies: [] before_script: