playground: redesign of top menu bar and add embed functionality

Make playground's design closer to www.golang.org and add embed
functionality when sharing code snippet. It hides share button
and embed checkbox, if inside of iframe.

Change-Id: Ie3de27abc99a3543b7a34b36274c8e98a18d0585
Reviewed-on: https://go-review.googlesource.com/10580
Reviewed-by: Andrew Gerrand <adg@golang.org>
3 files changed
tree: 1480f037ffef1cf7e984f34e7e69f13a7be4e099
  1. app/
  2. sandbox/
  3. AUTHORS
  4. CONTRIBUTING.md
  5. CONTRIBUTORS
  6. LICENSE
  7. PATENTS
  8. README.md
  9. codereview.cfg
README.md

playground

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

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

managed-vms

boot2docker shellinit
gcloud preview app setup-managed-vms
gcloud preview app run app/ sandbox/
gcloud preview app deploy app/ sandbox/

kubernetes

# sandbox
docker push golang/playground-sandbox
gcloud preview container replicationcontrollers create --config sandbox/kubernetes/controller.yaml
gcloud preview container services create --config sandbox/kubernetes/service.yaml

container-vm

# sandbox
docker push golang/playground-sandbox
gcloud compute instances create playground-sandbox-vm --image container-vm --metadata-from-file google-container-manifest=sandbox/container-vm.yaml