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

Commit 5bb897d5 authored by Jonathan Klee's avatar Jonathan Klee
Browse files

Update from upstream automatically

parent 4ed1a0ca
Loading
Loading
Loading
Loading
Loading
+32 −14
Original line number Diff line number Diff line
@@ -3,19 +3,13 @@ image: "registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:latest"
stages:
- build
- publish
- upstream-update

variables:
  GIT_SUBMODULE_STRATEGY: recursive

before_script:
- if [ -d "/srv/userscripts" ]; then cp -R userscripts/* /srv/userscripts ; fi
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo "$SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
- export GRADLE_USER_HOME=$(pwd)/.gradle
- chmod +x ./gradlew

@@ -31,16 +25,11 @@ before_script:
  - export TERM=dumb
  - export JAVA_OPTS="-XX:+HeapDumpOnOutOfMemoryError -Xmx4096m"

cache:
  key: ${CI_PROJECT_ID}
  paths:
  - .gradle/

build:
  stage: build
  rules:
    - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"
    - when: always
    - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true" && $CI_PIPELINE_SOURCE != "schedule"
  before_script:
  - *default_before_script
  - echo modules.nearby false >> local.properties
@@ -58,7 +47,7 @@ build-nearby:
  stage: build
  rules:
    - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"
    - when: always
    - when: never
  before_script:
  - *default_before_script
  - echo modules.nearby true >> local.properties
@@ -79,3 +68,32 @@ publish:
           --data "{\"ref\":\"${CI_COMMIT_SHA}\",\"name\":\"${CI_COMMIT_TAG}\",\"tag_name\":\"${CI_COMMIT_TAG}\",\"description\":\"${CI_COMMIT_TITLE}\",\"assets\":{\"links\":[{\"name\":\"GmsCore-test.apk\",\"url\":\"https://gitlab.e.foundation/api/v4/projects/149/jobs/artifacts/${CI_COMMIT_TAG}/raw/play-services-core/build/outputs/apk/mapboxDefault/releaseTest/play-services-core-withMapbox-withNearby-releaseTest.apk?job=build-nearby\",\"link_type\":\"package\"},{\"name\":\"GmsCore-dev.apk\",\"url\":\"https://gitlab.e.foundation/api/v4/projects/149/jobs/artifacts/${CI_COMMIT_TAG}/raw/play-services-core/build/outputs/apk/mapboxDefault/releaseDev/play-services-core-mapbox-default-releaseDev.apk?job=build-nearby\",\"link_type\":\"package\"},{\"name\":\"GmsCore-stable.apk\",\"url\":\"https://gitlab.e.foundation/api/v4/projects/149/jobs/artifacts/${CI_COMMIT_TAG}/raw/play-services-core/build/outputs/apk/mapboxDefault/releaseStable/play-services-core-mapbox-default-releaseStable.apk?job=build-nearby\",\"link_type\":\"package\"}]}}" \
           --request POST https://gitlab.e.foundation/api/v4/projects/149/releases

update-from-upstream:
  stage: upstream-update
  rules:
    - if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_REF_NAME == "main"' 
  variables:
    CI_PROJECT_SSH_URL: git@gitlab.e.foundation:$CI_PROJECT_PATH
    GIT_STRATEGY: none
  before_script:
    - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )'
    - eval $(ssh-agent -s)
    - echo "${SSH_E_ROBOT_PRIVATE_KEY}" | tr -d '\r' | ssh-add -
    - mkdir -p ~/.ssh
    - chmod 700 ~/.ssh
    - echo "${SSH_KNOWN_HOSTS}" > ~/.ssh/known_hosts
    - echo "${SSH_KNOWN_HOSTS}"
    - chmod 644 ~/.ssh/known_hosts
    - git config --global http.sslverify false
    - git config --global user.email $GITLAB_USER_EMAIL
    - git config --global user.name "$GITLAB_USER_NAME"
    - cd $CI_BUILD_DIR
    - rm -rf $CI_PROJECT_DIR
    - git clone $CI_PROJECT_SSH_URL $CI_PROJECT_DIR
    - cd $CI_PROJECT_DIR
  script:
    - git config --global http.sslverify false
    - git remote add upstream https://github.com/microg/GmsCore.git
    - git fetch --all
    - git rebase upstream/master
    - git push origin master