mirror of
https://github.com/home-assistant/android
synced 2024-10-06 16:19:38 +00:00
471f7de8da
* Bump gradle/gradle-build-action from 2 to 3 Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 2 to 3. - [Release notes](https://github.com/gradle/gradle-build-action/releases) - [Commits](https://github.com/gradle/gradle-build-action/compare/v2...v3) --- updated-dependencies: - dependency-name: gradle/gradle-build-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Migrate per release notes. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Justin Bassett <bassett.justint@gmail.com>
127 lines
3.7 KiB
YAML
127 lines
3.7 KiB
YAML
name: Pull Request
|
||
|
||
on:
|
||
pull_request:
|
||
branches: [ master ]
|
||
|
||
jobs:
|
||
ktlint:
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
- name: Set up JDK 17
|
||
uses: actions/setup-java@v4.0.0
|
||
with:
|
||
distribution: 'temurin'
|
||
java-version: '17'
|
||
|
||
- uses: actions/cache@v4
|
||
with:
|
||
path: |
|
||
~/.gradle/caches
|
||
~/.gradle/wrapper
|
||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
||
restore-keys: |
|
||
${{ runner.os }}-gradle-
|
||
|
||
- name: Mock google-services.json
|
||
run: |
|
||
cp .github/mock-google-services.json app/google-services.json
|
||
cp .github/mock-google-services.json wear/google-services.json
|
||
cp .github/mock-google-services.json automotive/google-services.json
|
||
|
||
- uses: gradle/wrapper-validation-action@v2
|
||
name: Validate Gradle Wrapper
|
||
|
||
- name: Validate ktlint
|
||
run: ./gradlew ktlintCheck
|
||
|
||
lint:
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
- name: Set up JDK 17
|
||
uses: actions/setup-java@v4.0.0
|
||
with:
|
||
distribution: 'adopt'
|
||
java-version: '17'
|
||
|
||
- uses: actions/cache@v4
|
||
with:
|
||
path: |
|
||
~/.gradle/caches
|
||
~/.gradle/wrapper
|
||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
||
restore-keys: |
|
||
${{ runner.os }}-gradle-
|
||
|
||
- name: Mock google-services.json
|
||
run: |
|
||
cp .github/mock-google-services.json app/google-services.json
|
||
cp .github/mock-google-services.json wear/google-services.json
|
||
cp .github/mock-google-services.json automotive/google-services.json
|
||
|
||
- uses: gradle/wrapper-validation-action@v2
|
||
name: Validate Gradle Wrapper
|
||
|
||
- name: Validate Lint
|
||
run: ./gradlew lint
|
||
|
||
pr_build:
|
||
runs-on: ubuntu-latest
|
||
permissions:
|
||
contents: write
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
with:
|
||
fetch-depth: 0
|
||
|
||
- name: Check for modified DB schemas on branch
|
||
run: |
|
||
if git diff --name-only --diff-filter=DMR origin/master... | grep "^common/schemas"; then
|
||
echo -e "\n❌ Existing database schema modified, please increase the database version instead"
|
||
exit 1
|
||
else
|
||
echo -e "\n✔️ No changed database schemas on branch"
|
||
fi
|
||
|
||
- name: Set up JDK 17
|
||
uses: actions/setup-java@v4.0.0
|
||
with:
|
||
distribution: 'adopt'
|
||
java-version: '17'
|
||
|
||
- name: Setup Gradle
|
||
uses: gradle/actions/setup-gradle@v3
|
||
|
||
- name: Mock google-services.json
|
||
run: |
|
||
cp .github/mock-google-services.json app/google-services.json
|
||
cp .github/mock-google-services.json wear/google-services.json
|
||
cp .github/mock-google-services.json automotive/google-services.json
|
||
|
||
- uses: gradle/wrapper-validation-action@v2
|
||
name: Validate Gradle Wrapper
|
||
|
||
- name: Build Debug APK
|
||
run: |
|
||
./gradlew :common:assemble
|
||
./gradlew :app:assembleDebug
|
||
./gradlew :wear:assembleDebug
|
||
./gradlew :automotive:assembleDebug
|
||
|
||
- name: Check for missing/modified DB schemas after build
|
||
run: |
|
||
if [[ $(git status common/schemas --porcelain) ]]; then
|
||
echo $(git status common/schemas --porcelain)
|
||
echo -e "\n❌ Found uncommitted changes in database schema directory, please make sure to include all changes in your commit(s)"
|
||
exit 1;
|
||
else
|
||
echo -e "\n✔️ No changes in database schema directory after build"
|
||
fi
|
||
|
||
- name: Archive Debug Build
|
||
uses: actions/upload-artifact@v4
|
||
with:
|
||
path: ./**/*.apk
|