gha-ci: fix builds from cache: add ~/.cache/bazel (+ update actions)

fixes https://github.com/golang/protobuf/issues/1562

Update to the latest version of the actions we use while we’re at it.
For setup-go@v4 this means we get caching based on go.{mod,sum}.
For actions/cache@v3 this means we get zstd compression.

Change-Id: I4ddb1a3e15eaafe1e9c946c3f0214da4fa1424df
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/526955
Reviewed-by: Damien Neil <dneil@google.com>
Reviewed-by: Lasse Folger <lassefolger@google.com>
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index a26beb6..9089141 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -13,16 +13,18 @@
     - name: Install Linux dependencies
       if: runner.os == 'Linux'
       run: sudo apt-get -y install autoconf automake libtool curl make g++ unzip
-    - name: Install Go
-      uses: actions/setup-go@v3
-      with:
-        go-version: ${{ matrix.go-version }}
     - name: Checkout code
       uses: actions/checkout@v3
-    - name: Cache dependencies
-      uses: actions/cache@v3.0.2
+    - name: Install Go
+      uses: actions/setup-go@v4
       with:
-        path: .cache
+        go-version: ${{ matrix.go-version }}
+    - name: Cache dependencies
+      uses: actions/cache@v3
+      with:
+        path: |
+          .cache
+          ~/.cache/bazel
         key: ${{ runner.os }}-${{ hashFiles('integration_test.go') }}
     - name: Test
       run: go test -v -timeout=60m -count=1 -failfast integration_test.go