Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5dbcecf authored by Nishith  Khanna's avatar Nishith Khanna
Browse files

Merge branch '0000-a15-fix-missing-jacoco-delta-ai-review' into 'main'

ci: fix missing jacoco delta in MRs

See merge request !751
parents abfc19a1 543c681c
Loading
Loading
Loading
Loading
Loading
+31 −52
Original line number Diff line number Diff line
@@ -39,57 +39,47 @@ before_script:
  - export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
  - echo user_agent=$USER_AGENT > local.properties

.prod_apk_rules: &prod_apk_rules
.build_rules: &build_rules
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
      variables:
        CACHE_POLICY: pull
      interruptible: true
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
      variables:
        CACHE_POLICY: pull-push
      interruptible: false
    - if: $CI_COMMIT_TAG
    - when: never
      variables:
        CACHE_POLICY: pull-push
      interruptible: false
  allow_failure: false
  cache:
    key: ${CI_PROJECT_ID}
    paths:
      - .gradle/
    policy: pull-push

.merge_request_rules: &merge_request_rules
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
    - when: never
  interruptible: true
  allow_failure: false
  cache:
    key: ${CI_PROJECT_ID}
    paths:
      - .gradle/
    policy: pull
    policy: $CACHE_POLICY

.rules_protected_tag:
  rules: &rules_protected_tag
    - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"'
      when: always
    - when: never
  interruptible: false
  allow_failure: false

.rules_protected_tag_manual:
  rules: &rules_protected_tag_manual
.rules_protected_tag_manual: &rules_protected_tag_manual
  rules:
    - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"'
      when: manual
    - when: never
  interruptible: false
  allow_failure: true

.rules_publish:
  rules: &rules_publish
.rules_publish: &rules_publish
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
      when: manual
    - if: $CI_COMMIT_TAG
    - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"'
      when: always
  interruptible: false
  allow_failure: true
  allow_failure: false

.build:
build-release:
  <<: *build_rules
  stage: build
  script:
    - ./gradlew assembleRelease
@@ -97,19 +87,11 @@ before_script:
    paths:
      - app/build/outputs/apk/release

build-apk-mr:
  extends: .build
  <<: *merge_request_rules

build-apk-prod:
  extends: .build
  <<: *prod_apk_rules

analysis:
  stage: code-quality
  <<: *merge_request_rules
  <<: *build_rules
  needs:
    - build-apk-mr
    - build-release
  script:
    - ./gradlew detekt lintRelease
  artifacts:
@@ -119,9 +101,9 @@ analysis:

tests:
  stage: code-quality
  <<: *merge_request_rules
  <<: *build_rules
  needs:
    - build-apk-mr
    - build-release
  script:
    - ./gradlew testReleaseUnitTest jacocoReleaseReport -PtestAccountName="$testAccountName" -PtestAccountPwd="$testAccountPwd" -PtestServerUrl="$testServerUrl"
    - python3 scripts/print_instruction_coverage.py app/build/reports/jacoco/jacocoReleaseReport/jacocoReleaseReport.xml
@@ -137,9 +119,9 @@ tests:

generate-apks:
  stage: build
  <<: *prod_apk_rules
  <<: *rules_publish
  needs:
    - job: build-apk-prod
    - job: build-release
  script:
    - |
      git clone https://gitlab.e.foundation/e/os/system-apps-update-info.git systemAppsUpdateInfo
@@ -155,7 +137,7 @@ generate-apks:

create-json-files:
  stage: publish
  rules: *rules_protected_tag
  <<: *rules_publish
  needs:
    - job: generate-apks
  script:
@@ -170,7 +152,7 @@ create-json-files:

create-test-release:
  stage: publish
  rules: *rules_protected_tag_manual
  <<: *rules_protected_tag_manual
  needs:
    - job: generate-apks
    - job: create-json-files
@@ -179,11 +161,10 @@ create-test-release:
    - |
      ./systemAppsUpdateInfo/scripts/create-test-release.sh \
      "$APK_PATH" "$TEST_APK"
  allow_failure: true

create-release:
  stage: publish
  rules: *rules_protected_tag_manual
  <<: *rules_protected_tag_manual
  needs:
    - job: generate-apks
    - job: create-json-files
@@ -195,23 +176,21 @@ create-release:

publish-authdatalib:
  stage: publish
  rules: *rules_publish
  <<: *rules_publish
  script:
    - ./gradlew :auth-data-lib:build
    - ./gradlew :auth-data-lib:publish

publish-contracts:
  stage: publish
  interruptible: false
  rules: *rules_publish
  <<: *rules_publish
  script:
    - ./gradlew :parental-control-data:build
    - ./gradlew :parental-control-data:publish

publish-installapplib:
  stage: publish
  rules: *rules_publish
  <<: *rules_publish
  script:
    - ./gradlew :install-app-lib:build
    - ./gradlew :install-app-lib:publish