image: briar/ci-image-android:bullseye stages: - test - build variables: GIT_SUBMODULE_STRATEGY: recursive before_script: - set -e - export GRADLE_USER_HOME=$PWD/.gradle after_script: # these file change every time and should not be cached - rm -f $GRADLE_USER_HOME/caches/modules-2/modules-2.lock - rm -fr $GRADLE_USER_HOME/caches/*/plugin-resolution/ cache: key: "$CI_COMMIT_REF_SLUG" paths: - .gradle/wrapper - .gradle/caches ktlint: stage: test script: - git submodule update - ./gradlew --no-daemon :check rules: - if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS' when: never # avoids duplicate jobs for branch and MR - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' when: always - when: always build_jar: stage: build script: - ./gradlew --no-daemon packageUberJarForCurrentOS - mv build/compose/jars/Briar-*.jar ./briar-desktop.jar artifacts: paths: - briar-desktop.jar expire_in: 2 days rules: - if: $CI_PIPELINE_SOURCE == "schedule" build_deb: stage: build script: - ./gradlew --no-daemon packageDeb - mv build/compose/binaries/main/deb/*.deb ./briar-desktop.deb artifacts: paths: - briar-desktop.deb expire_in: 2 days rules: - if: $CI_PIPELINE_SOURCE == "schedule"