| CLOUDBUILD_PLAYGROUND_TRIGGER_JSON := deploy/playground_trigger.json | |
| CLOUDBUILD_PLAYGROUND_TRIGGER_ID := $(shell jq -r .id ${CLOUDBUILD_PLAYGROUND_TRIGGER_JSON}) | |
| CLOUDBUILD_GO_TRIGGER_JSON := deploy/go_trigger.json | |
| CLOUDBUILD_GO_TRIGGER_ID := $(shell jq -r .id ${CLOUDBUILD_GO_TRIGGER_JSON}) | |
| GCLOUD_ACCESS_TOKEN := $(shell gcloud auth print-access-token) | |
| .PHONY: docker test update-cloudbuild-trigger | |
| docker: | |
| docker build -t golang/playground . | |
| runlocal: | |
| docker network create sandnet || true | |
| docker kill play_dev || true | |
| docker run --name=play_dev --rm --network=sandnet -ti -p 127.0.0.1:8081:8080/tcp golang/playground | |
| test_go: | |
| # Run fast tests first: (and tests whether, say, things compile) | |
| GO111MODULE=on go test -v | |
| test_nacl: docker | |
| docker kill sandbox_front_test || true | |
| docker run --rm --name=sandbox_front_test --network=sandnet -t golang/playground testnacl | |
| test_gvisor: docker | |
| docker kill sandbox_front_test || true | |
| docker run --rm --name=sandbox_front_test --network=sandnet -t golang/playground test | |
| # Note: test_gvisor is not included in "test" yet, because it requires | |
| # running a separate server first ("make runlocal" in the sandbox | |
| # directory) | |
| test: test_go test_nacl | |
| update-cloudbuild-trigger: | |
| # The gcloud CLI doesn't yet support updating a trigger. | |
| curl -H "Authorization: Bearer $(GCLOUD_ACCESS_TOKEN)" -H "Content-Type: application/json" \ | |
| -d @$(CLOUDBUILD_GO_TRIGGER_JSON) \ | |
| -X PATCH https://cloudbuild.googleapis.com/v1/projects/golang-org/triggers/$(CLOUDBUILD_GO_TRIGGER_ID) | |
| curl -H "Authorization: Bearer $(GCLOUD_ACCESS_TOKEN)" -H "Content-Type: application/json" \ | |
| -d @$(CLOUDBUILD_PLAYGROUND_TRIGGER_JSON) \ | |
| -X PATCH https://cloudbuild.googleapis.com/v1/projects/golang-org/triggers/$(CLOUDBUILD_PLAYGROUND_TRIGGER_ID) |