frontend: don’t allow a trailing underscore in a snippet ID

Extend it until it hits a character that isn’t an underscore.

Change-Id: I7faebdbf9c6c2cb26e240518145b4aa8f6f18ef7
Reviewed-on: https://go-review.googlesource.com/85038
Reviewed-by: Alan Donovan <adonovan@google.com>
2 files changed
tree: 8fe0078428df57192b598b3d4e372737d83011f3
  1. frontend/
  2. sandbox/
  3. AUTHORS
  4. codereview.cfg
  5. CONTRIBUTING.md
  6. CONTRIBUTORS
  7. LICENSE
  8. PATENTS
  9. README.md
README.md

playground

This subrepository holds the source for various packages and tools that support the Go playground: https://play.golang.org/

To submit changes to this repository, see http://golang.org/doc/contribute.html.

Frontend

Building

# build the frontend image
docker build -t frontend frontend/

Running with an in-memory store

docker run --rm -d -p 8080:8080 frontend

Running with the Cloud Datastore Emulator

# install it if needed
gcloud components install cloud-datastore-emulator
# run the datastore emulator
gcloud --project=golang-org beta emulators datastore start
# set env vars
$(gcloud beta emulators datastore env-init)
# run the frontend
cd frontend && go install && frontend

Now visit localhost:8080 to ensure it worked.

# unset any env vars once finished
$(gcloud beta emulators datastore env-unset)

Sandbox

Building

# build the sandbox image
docker build -t sandbox sandbox/

Running

# run the sandbox
docker run -d -p 8080:8080 sandbox
# get docker host ip, try boot2docker fallback on localhost.
DOCKER_HOST_IP=$(boot2docker ip || echo localhost)
# run go some code
cat /path/to/code.go | go run ./sandbox/client.go | curl --data @- $DOCKER_HOST_IP:8080/compile

To submit changes to this repository, see http://golang.org/doc/contribute.html.

Deployment

gcloud --project=golang-org --account=person@example.com app deploy frontend/app.yaml
gcloud --project=golang-org --account=person@example.com app deploy sandbox/app-flex.yaml --no-promote

Use the Cloud Console's to set the new version as the default: https://cloud.google.com/console/appengine/versions?project=golang-org&moduleId=sandbox-flex Then test that play.golang.org and tour.golang.org are working before deleting the old version.