tree: 834e73ecd4b9fa559b8f17a6adbf00cb13c8188e [path history] [tgz]
  1. artifacts.go
  2. cloudbuild.harness.yaml
  3. cloudbuild.yaml
  4. Dockerfile
  5. README.md
  6. run_local.sh
  7. run_tests_for_cloudbuild.sh
gopls/integration/govim/README.md

govim integration tests

Files in this directory configure Cloud Build to run govim integration tests against a gopls binary built from source.

Running on GCP

To run these integration tests in Cloud Build, use the following steps. Here we assume that $PROJECT_ID is a valid GCP project and $BUCKET is a cloud storage bucket owned by that project.

  • cd to the root directory of the tools project.
  • (at least once per GCP project) Build the test harness:
$ gcloud builds submit \
	--project="${PROJECT_ID}" \
	--config=gopls/integration/govim/cloudbuild.harness.yaml
  • Run the integration tests:
$ gcloud builds submit \
	--project="${PROJECT_ID}" \
	--config=gopls/integration/govim/cloudbuild.yaml \
	--substitutions=_RESULT_BUCKET="${BUCKET}"

Fetching Artifacts

Assuming the artifacts bucket is world readable, you can fetch integration from GCS. They are located at:

  • logs: https://storage.googleapis.com/${BUCKET}/log-${EVALUATION_ID}.txt
  • artifact tarball: https://storage.googleapis.com/${BUCKET}/govim/${EVALUATION_ID}/artifacts.tar.gz

The artifacts.go command can be used to fetch both artifacts using an evaluation id.

Running locally

Run gopls/integration/govim/run_local.sh. This may take a while the first time it is run, as it will require building the test harness. This script accepts two flags to modify its behavior:

--sudo: run docker with sudo --short: run go test -short