aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorMenny Even Danan <menny@evendanan.net>2020-01-29 19:31:48 +0000
committerMenny Even Danan <menny@evendanan.net>2020-01-30 16:44:04 +0000
commit4d767a0527c523decfe0ebc99ed77cbb53b5d15e (patch)
tree50a2e7a338a07ce3ea889f7da4d26e7971857ee8 /.github/workflows
parent6d5481428b7eecfe0c2d00e8aa7ec4fe6cff411c (diff)
downloadAnySoftKeyboard-4d767a0527c523decfe0ebc99ed77cbb53b5d15e.tar.gz
AnySoftKeyboard-4d767a0527c523decfe0ebc99ed77cbb53b5d15e.tar.bz2
Seperating IME and AddOns
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/addons.yml205
-rw-r--r--.github/workflows/anysoftkeyboard.yml32
2 files changed, 234 insertions, 3 deletions
diff --git a/.github/workflows/addons.yml b/.github/workflows/addons.yml
new file mode 100644
index 000000000..e54ef859c
--- /dev/null
+++ b/.github/workflows/addons.yml
@@ -0,0 +1,205 @@
+name: AddOns
+
+on:
+ push:
+ branches:
+ - master
+ - release-branch-v*
+ paths:
+ - '.github/**'
+ - 'buildSrc/**'
+ - 'config/**'
+ - 'scripts/**'
+ - 'api/**'
+ - '**/*.gradle'
+ - '**/gradle.properties'
+ - 'addons/scripts/**/*'
+ - 'addons/**/*'
+ paths-ignore:
+ - '**.md'
+ pull_request:
+ branches:
+ - '*'
+ paths:
+ - '.github/**'
+ - 'buildSrc/**'
+ - 'config/**'
+ - 'scripts/**'
+ - 'api/**'
+ - '**/*.gradle'
+ - '**/gradle.properties'
+ - 'addons/scripts/**/*'
+ - 'addons/**/*'
+ paths-ignore:
+ - '**.md'
+
+env:
+ TERM: dumb
+ GRADLE_OPTS: "-Dorg.gradle.daemon=false"
+ GRADLE_USER_HOME: ".github_cache_gradle/"
+
+jobs:
+ setup:
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ steps:
+ - uses: actions/checkout@v2
+ - name: setup
+ run: |
+ echo "ENV:"
+ printenv
+ echo "******"
+ echo "Event: "
+ cat ${GITHUB_EVENT_PATH}
+ echo "***"
+ ./scripts/ci/ci_setup.sh
+
+ checks:
+ needs: [setup]
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/cache@v1
+ with:
+ path: .github_cache_gradle/
+ key: checks-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ restore-keys: |
+ checks-gradle-
+ - name: check
+ run: ./scripts/ci/ci_check.sh
+ - uses: actions/upload-artifact@v1.0.0
+ with:
+ name: debug-apk
+ path: app/build/outputs/apk/debug/app-debug.apk
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: pmd*.html
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: checkstyle*.html
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: lint-results-*.html
+ - uses: actions/upload-artifact@v1.0.0
+ if: always()
+ with:
+ name: checks-reports
+ path: collected_reports/
+
+ app-tests-shards:
+ needs: [setup]
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ strategy:
+ matrix:
+ index: [0, 1, 2, 3]
+ groups_count: [4]
+ fail-fast: false
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/cache@v1
+ with:
+ path: .github_cache_gradle/
+ key: tests-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ restore-keys: |
+ tests-gradle-
+ - name: tests
+ uses: ./.github/actions/test-shard-run
+ with:
+ index: ${{ matrix.index }}
+ groups_count: ${{ matrix.groups_count }}
+ module: "app:"
+ - uses: ./.github/actions/codecov
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: "TEST-*.xml"
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: "**/build/reports/tests/**/*"
+ - uses: actions/upload-artifact@v1.0.0
+ if: always()
+ with:
+ name: app-tests_${{ matrix.index }}
+ path: collected_reports/
+
+ app-less-tests:
+ needs: [setup]
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/cache@v1
+ with:
+ path: .github_cache_gradle/
+ key: tests-app-less-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ restore-keys: |
+ tests-app-less-gradle-
+ - name: tests
+ uses: ./.github/actions/test-shard-run
+ with:
+ index: 0
+ groups_count: 1
+ module: ""
+ extra_args: "-x app:testDebugUnitTest -x app:testDebugUnitTestCoverage"
+ - uses: ./.github/actions/codecov
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: "TEST-*.xml"
+ - uses: ./.github/actions/collect-reports
+ if: always()
+ with:
+ file_pattern: "**/build/reports/tests/**/*"
+ - uses: actions/upload-artifact@v1.0.0
+ if: always()
+ with:
+ name: app-less-tests
+ path: collected_reports/
+ deploy-dry-run:
+ if: github.event_name == 'pull_request'
+ needs: [setup]
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ steps:
+ - uses: actions/checkout@v1
+ - name: deploy
+ uses: ./.github/actions/deploy
+ with:
+ release_deploy: "dry-run"
+
+ deploy:
+ if: github.event_name == 'push'
+ needs: [checks, app-tests-shards, app-less-tests]
+ runs-on: ubuntu-18.04
+ container: menny/ndk_ask:1.13.1
+ steps:
+ - uses: actions/checkout@v1
+ - name: deploy
+ uses: ./.github/actions/deploy
+ with:
+ release_deploy: ${{ contains(github.ref, 'release-branch-v') }}
+ crash_report_email: ${{ secrets.ANYSOFTKEYBOARD_CRASH_REPORT_EMAIL }}
+ keystore_url: ${{ secrets.KEYSTORE_FILE_URL }}
+ keystore_password: ${{ secrets.ANYSOFTKEYBOARD_KEYSTORE_PASSWORD }}
+ keystore_key_alias: ${{ secrets.ANYSOFTKEYBOARD_KEYSTORE_ALIAS }}
+ keystore_key_password: ${{ secrets.ANYSOFTKEYBOARD_KEYSTORE_KEY_PASSWORD }}
+ publish_service_account_creds_url: ${{ secrets.PUBLISH_CERT_FILE_URL }}
+ publish_service_account: ${{ secrets.PUBLISH_APK_SERVICE_ACCOUNT_EMAIL }}
+ - uses: actions/upload-artifact@v1.0.0
+ with:
+ name: signed-apk
+ path: app/build/outputs/apk/
+ - uses: actions/upload-artifact@v1.0.0
+ with:
+ name: proguard-mapping
+ path: app/build/outputs/mapping/
+ - uses: actions/upload-artifact@v1.0.0
+ with:
+ name: fdroid-metadata
+ path: outputs/fdroid.yaml
diff --git a/.github/workflows/anysoftkeyboard.yml b/.github/workflows/anysoftkeyboard.yml
index 0d436f0a5..98437bd10 100644
--- a/.github/workflows/anysoftkeyboard.yml
+++ b/.github/workflows/anysoftkeyboard.yml
@@ -5,9 +5,35 @@ on:
branches:
- master
- release-branch-v*
+ paths:
+ - '.github/**'
+ - 'buildSrc/**'
+ - 'config/**'
+ - 'scripts/**'
+ - 'api/**'
+ - '**/*.gradle'
+ - '**/gradle.properties'
+ - 'addons/scripts/**/*'
+ - 'addons/base/**/*'
+ - 'addons/languages/english/**/*'
+ - 'ime/**/*'
+ paths-ignore:
+ - '**.md'
pull_request:
branches:
- '*'
+ paths:
+ - '.github/**'
+ - 'buildSrc/**'
+ - 'config/**'
+ - 'scripts/**'
+ - 'api/**'
+ - '**/*.gradle'
+ - '**/gradle.properties'
+ - 'addons/scripts/**/*'
+ - 'addons/base/**/*'
+ - 'addons/languages/english/**/*'
+ - 'ime/**/*'
paths-ignore:
- '**.md'
@@ -41,7 +67,7 @@ jobs:
- uses: actions/cache@v1
with:
path: .github_cache_gradle/
- key: checks-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ key: checks-gradle-${{ hashFiles('gradle/wrapper/*') }}
restore-keys: |
checks-gradle-
- name: check
@@ -82,7 +108,7 @@ jobs:
- uses: actions/cache@v1
with:
path: .github_cache_gradle/
- key: tests-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ key: tests-gradle-${{ hashFiles('gradle/wrapper/*') }}
restore-keys: |
tests-gradle-
- name: tests
@@ -115,7 +141,7 @@ jobs:
- uses: actions/cache@v1
with:
path: .github_cache_gradle/
- key: tests-app-less-gradle-${{ hashFiles('**/*.gradle') }}-${{ hashFiles('gradle/**/*') }}
+ key: tests-app-less-gradle-${{ hashFiles('gradle/wrapper/*') }}
restore-keys: |
tests-app-less-gradle-
- name: tests