diff --git a/.bazel/.default.bazelrc b/.bazel/.default.bazelrc index 04b62631..09cafddf 100644 --- a/.bazel/.default.bazelrc +++ b/.bazel/.default.bazelrc @@ -32,8 +32,9 @@ build --define=android_standalone_dexing_tool=d8_compat_dx build --define=android_dexmerger_tool=d8_dexmerger build --persistent_multiplex_android_tools -build --strategy=AndroidAssetMerger=sandboxed -build --strategy=AndroidLint=sandboxed +build --strategy=AndroidAssetMerger=worker +build --strategy=AndroidLint=worker +build --strategy=AndroidLintAnalyze=worker build --strategy=DatabindingStubs=worker build --worker_max_instances=Javac=1 build --worker_max_instances=KotlinCompile=1 @@ -46,6 +47,8 @@ build --worker_max_instances=RClassGenerator=1 build --worker_max_instances=AndroidAapt2=1 build --worker_max_instances=AndroidAssetMerger=1 build --worker_max_instances=AndroidResourceMerger=1 +build --worker_max_instances=AndroidLint=1 +build --worker_max_instances=AndroidLintAnalyze=1 build --worker_max_instances=AndroidCompiledResourceMerger=1 build --worker_max_instances=Aapt2Optimize=1 build --worker_max_instances=DatabindingStubs=1 diff --git a/.bazelversion b/.bazelversion index 6abaeb2f..19b860c1 100644 --- a/.bazelversion +++ b/.bazelversion @@ -1 +1 @@ -6.2.0 +6.4.0 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5b3f9b36..fbd2d5b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,12 +39,25 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + - name: Query targets + run: | + bazelisk query 'kind(kt_jvm_test, ...)' --output label > /tmp/targets - name: Bazel test uses: ./.github/actions/bazel with: - bazel-command: test //... + bazel-command: test --target_pattern_file=/tmp/targets cache-key: bazel-test + bazel-android-lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Bazel Android Lint + uses: ./.github/actions/bazel + with: + bazel-command: test //sample-android:sample-android-flavor1-free-debug.lint_test + cache-key: bazel-lint + grazel-build: runs-on: ubuntu-latest steps: diff --git a/.gitignore b/.gitignore index 03edded1..61fb0922 100644 --- a/.gitignore +++ b/.gitignore @@ -67,6 +67,7 @@ _sandbox # Bazel bazel-* databinding_info.bazelrc +tools/bazel local.bazelrc diff --git a/WORKSPACE b/WORKSPACE index 0b0b81b3..fabb5896 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -27,7 +27,7 @@ load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") git_repository( name = "grab_bazel_common", - commit = "2abb41f0fae9f9c973ca176e9b6b4b73928de2f8", + commit = "1e751cfd185fd205555f50a5ea6e6c1b52dcdc63", remote = "https://github.com/grab/grab-bazel-common.git", ) diff --git a/build.gradle b/build.gradle index 89fc66d6..464b37f6 100644 --- a/build.gradle +++ b/build.gradle @@ -98,7 +98,7 @@ grazel { rules { bazelCommon { gitRepository { - commit = "2abb41f0fae9f9c973ca176e9b6b4b73928de2f8" + commit = "1e751cfd185fd205555f50a5ea6e6c1b52dcdc63" remote = "https://github.com/grab/grab-bazel-common.git" } toolchains { diff --git a/sample-android/BUILD.bazel b/sample-android/BUILD.bazel index cffd0379..ee3d5ce2 100644 --- a/sample-android/BUILD.bazel +++ b/sample-android/BUILD.bazel @@ -34,6 +34,9 @@ android_binary( enable_compose = True, enable_data_binding = True, incremental_dexing = True, + lint_options = { + "baseline": "lint_baseline.xml", + }, manifest = "src/debug/AndroidManifest.xml", manifest_values = { "versionCode": "1", @@ -121,6 +124,9 @@ android_binary( enable_compose = True, enable_data_binding = True, incremental_dexing = True, + lint_options = { + "baseline": "lint_baseline.xml", + }, manifest = "src/debug/AndroidManifest.xml", manifest_values = { "versionCode": "1", @@ -208,6 +214,9 @@ android_binary( enable_compose = True, enable_data_binding = True, incremental_dexing = True, + lint_options = { + "baseline": "lint_baseline.xml", + }, manifest = "src/debug/AndroidManifest.xml", manifest_values = { "versionCode": "1", @@ -295,6 +304,9 @@ android_binary( enable_compose = True, enable_data_binding = True, incremental_dexing = True, + lint_options = { + "baseline": "lint_baseline.xml", + }, manifest = "src/debug/AndroidManifest.xml", manifest_values = { "versionCode": "1", diff --git a/sample-android/build.gradle b/sample-android/build.gradle index 9b517733..3e0253b3 100644 --- a/sample-android/build.gradle +++ b/sample-android/build.gradle @@ -127,6 +127,10 @@ android { buildFeatures { compose = true } + + lint { + baseline = file("lint_baseline.xml") + } } dependencies { diff --git a/sample-android/lint_baseline.xml b/sample-android/lint_baseline.xml new file mode 100755 index 00000000..a24b6a4a --- /dev/null +++ b/sample-android/lint_baseline.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +