SWADroid/.drone.yml

168 lines
4.0 KiB
YAML

kind: pipeline
type: docker
name: debug
steps:
- name: restore-cache
image: drillster/drone-volume-cache
settings:
restore: true
mount:
- .gradle/caches
- .gradle/wrapper
volumes:
- name: cache
path: /cache
- name: fetch-tags
image: drone/git:latest
commands:
- git fetch --tags
- name: build
image: git.cuernodehipnos.es/marown/android-sdk-docker:latest
environment:
GRADLE_USER_HOME: /drone/src/.gradle
commands:
# Build
- ./gradlew buildDebug
- name: test
image: git.cuernodehipnos.es/marown/android-sdk-docker:latest
privileged: true
environment:
GRADLE_USER_HOME: /drone/src/.gradle
commands:
# Create and run emulator
- echo "no" | avdmanager --verbose create avd --force --name "generic_34" --package "system-images;android-34;google_apis;x86_64" --tag "google_apis" --abi "x86_64"
- emulator -avd "generic_34" -no-window -no-audio -no-boot-anim -netdelay none -no-snapshot -wipe-data -partition-size 1024 &
# Wait for emulator to be ready
- android-wait-for-emulator.sh
# Run tests
- ./gradlew connectedCheck -i
- name: assemble
image: git.cuernodehipnos.es/marown/android-sdk-docker:latest
environment:
GRADLE_USER_HOME: /drone/src/.gradle
commands:
# Assemble APK
- ./gradlew assembleDebug
#- name: code-analysis
# image: drone-plugins/sonarqube-scanner:latest
# settings:
# sonar_host:
# from_secret: sonar_host
# sonar_token:
# from_secret: sonar_token
- name: rebuild-cache
image: drillster/drone-volume-cache
settings:
rebuild: true
mount:
- .gradle/caches
- .gradle/wrapper
volumes:
- name: cache
path: /cache
volumes:
- name: cache
host:
path: /share/CACHEDEV1_DATA/homes/admin/drone/cache
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: release
steps:
- name: restore-cache
image: drillster/drone-volume-cache
settings:
restore: true
mount:
- .gradle/caches
- .gradle/wrapper
volumes:
- name: cache
path: /cache
- name: fetch-tags
image: drone/git:latest
commands:
- git fetch --tags
- name: build
image: git.cuernodehipnos.es/marown/android-sdk-docker:latest
environment:
GRADLE_USER_HOME: /drone/src/.gradle
commands:
# Build
- ./gradlew buildRelease
- name: assemble
image: git.cuernodehipnos.es/marown/android-sdk-docker:latest
environment:
GRADLE_USER_HOME: /drone/src/.gradle
RELEASE_KEY_ALIAS:
from_secret: release_key_alias
RELEASE_KEY_PASSWORD:
from_secret: release_key_password
RELEASE_KEYSTORE_BASE64:
from_secret: release_keystore_base64
RELEASE_STORE_FILE:
from_secret: release_store_file
RELEASE_STORE_PASSWORD:
from_secret: release_store_password
commands:
# Encrypt keystore & set $RELEASE_KEYSTORE_BASE64 environment variable in Drone CI
# - openssl base64 -A -in keystore.jks
# Decrypt keystore
- echo $RELEASE_KEYSTORE_BASE64 | base64 -d > SWADroid/keystore.jks
# Assemble APK
- ./gradlew assembleRelease
- name: gitea-release
image: plugins/gitea-release
settings:
api_key:
from_secret: gitea_api_key
base_url: https://git.cuernodehipnos.es
files:
- SWADroid/build/outputs/apk/release/SWADroid-release.apk
- SWADroid/build/outputs/apk/release/SWADroid-release.apk.idsig
checksum:
- md5
- sha1
- sha256
- sha512
- adler32
- crc32
- name: rebuild-cache
image: drillster/drone-volume-cache
settings:
rebuild: true
mount:
- .gradle/caches
- .gradle/wrapper
volumes:
- name: cache
path: /cache
volumes:
- name: cache
host:
path: /share/CACHEDEV1_DATA/homes/admin/drone/cache
trigger:
event:
- tag