Wrap the soong installation rules with /bin/bash

Switching between `m` and `m --soong-only` is currently not a null build
since the command line of the install actions changes. This CL wraps the
install cmds with /bin/bash to match the command line of the install
actions in regular `m` builds.

Switching between `m` and `m --soong-only` is still not a null build
(most likely due to `kernel_version_for_uffd_gc.txt), but with this CL
only a subset of the actions (buildprop and rdeps) need to be rebuilt
between the switch

Bug: 390471378
Test: m out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_odm_image/android_common/odm.img
Test: m
out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_odm_image/android_common/odm.img
--soong-only
(only cmp of kernel_version_for_uffd_gc.txt)
Test: m out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_odm_image/android_common/odm.img
(copies kernel_version_for_uffd_gc.txt, runs gen_build_prop followed by
build_img)

Change-Id: If64af772fc6e3506310ffb9f7a0e9058befb9cfa
diff --git a/sdk/testing.go b/sdk/testing.go
index f4e2b03..21d457c 100644
--- a/sdk/testing.go
+++ b/sdk/testing.go
@@ -144,7 +144,7 @@
 	seenBuildNumberFile := false
 	for _, bp := range buildParams {
 		switch bp.Rule.String() {
-		case android.Cp.String():
+		case android.Cp.String(), android.CpWithBash.String():
 			output := bp.Output
 			// Get destination relative to the snapshot root
 			dest := output.Rel()