--- /dev/null
+#!/bin/bash
+
+# Copyright 2020 The Go Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style
+# license that can be found in the LICENSE file.
+
+# This script runs govim integration tests but always succeeds, instead writing
+# their result to a file so that any test failure can be deferred to a later
+# build step. We do this so that we can capture govim test artifacts regardless
+# of the test results.
+
+# Substitute the locally built gopls binary for use in govim integration tests.
+go test -short ./cmd/govim -gopls /workspace/gopls/gopls
+
+# Stash the error, for use in a later build step.
+echo "exit $?" > /workspace/govim_test_result.sh
+
+# Clean up unnecessary artifacts. This is based on govim/_scripts/tidyUp.bash.
+# Since we're fetching govim using the go command, we won't have this non-go
+# source directory available to us.
+if [[ -n "$GOVIM_TESTSCRIPT_WORKDIR_ROOT" ]]; then
+ echo "Cleaning up build artifacts..."
+ # Make artifacts writable so that rm -rf doesn't complain.
+ chmod -R u+w "$GOVIM_TESTSCRIPT_WORKDIR_ROOT"
+
+ # Remove directories we don't care about.
+ find "$GOVIM_TESTSCRIPT_WORKDIR_ROOT" -type d \( -name .vim -o -name gopath \) -prune -exec rm -rf '{}' \;
+fi