commit | 541c3c365c56794719985fcb48f580a41cf64f18 | [log] [tgz] |
---|---|---|
author | Heschi Kreinick <heschi@google.com> | Fri Jun 11 16:28:15 2021 -0400 |
committer | Heschi Kreinick <heschi@google.com> | Fri Jun 11 20:53:51 2021 +0000 |
tree | b2a9a5dfdab5a45ef0c6a017f1a724387222e488 | |
parent | 9814fb9de2eefd6e560ebd3c2706f438f05b3c63 [diff] |
deploy: use gcloud to manage triggers, trigger from GCR The GCP UI is nicer for editing triggers, and the gcloud command now has beta support for import/export. It wants YAML format, though. Delete the json versions and replace them with freshly pulled versions, including the change to trigger from GCR. Change-Id: I3a20951d94b9a9522f28b07cc772d097679fb5a2 Reviewed-on: https://go-review.googlesource.com/c/playground/+/327349 Trust: Heschi Kreinick <heschi@google.com> Trust: Alexander Rakoczy <alex@golang.org> Run-TryBot: Heschi Kreinick <heschi@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Alexander Rakoczy <alex@golang.org>
This subrepository holds the source for the Go playground: https://play.golang.org/
# build the image docker build -t golang/playground .
docker run --name=play --rm -p 8080:8080 golang/playground & # run some Go code cat /path/to/code.go | go run client.go | curl -s --upload-file - localhost:8080/compile
Playground releases automatically triggered when new Go repository tags are pushed to GitHub, or when master is pushed on the playground repository.
For details, see deploy/go_trigger.yaml, deploy/playground_trigger.yaml, and deploy/deploy.json.
Changes to the trigger configuration can be made to the YAML files, or in the GCP UI, which should be kept in sync using the push-cloudbuild-trigger
and pull-cloudbuild-trigger
make targets.
The Cloud Build configuration will always build and deploy with the latest supported release of Go.
gcloud builds submit --config deploy/deploy.json .
Building the playground Docker container takes more than the default 10 minute time limit of cloud build, so increase its timeout first (note, app/cloud_build_timeout
is a global configuration value):
gcloud config set app/cloud_build_timeout 1200 # 20 mins
Alternatively, to avoid Cloud Build and build locally:
make docker docker tag golang/playground:latest gcr.io/golang-org/playground:latest docker push gcr.io/golang-org/playground:latest gcloud --project=golang-org --account=you@google.com app deploy app.yaml --image-url=gcr.io/golang-org/playground:latest
Then:
gcloud --project=golang-org --account=you@google.com app deploy app.yaml
To submit changes to this repository, see https://golang.org/doc/contribute.html.