1
0
mirror of https://github.com/golang/go synced 2024-11-05 15:06:09 -07:00
go/cmd/godoc
Agniva De Sarker ba93f9405e godoc: update to use new goroot finding logic
The logic to determine whether a filesystem root was in GOROOT or GOPATH
still relied on runtime.GOROOT(), whereas cmd/godoc was updated to copy
the goroot finding logic from standard library.

Hence, godoc is unable to determine if a filesystem is in GOROOT or not
when the binary is outside runtime.GOROOT(). So we expose a new variable
and set that from cmd/godoc to avoid copying the logic again for the 3rd time.

Fixes golang/go#27162

Change-Id: I160dcdbdd262e671f09f7bf01c329be5eac280ad
Reviewed-on: https://go-review.googlesource.com/130796
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
2018-08-23 15:26:32 +00:00
..
appinit.go cmd/godoc: serve proxy paths without host enforcer 2015-09-23 05:23:18 +00:00
autocert.go cmd/godoc: support http-01 ACME challenge in optional autocert support 2018-04-11 21:25:11 +00:00
blog.go cmd/godoc: redirect to https instead of http for blog.golang.org 2018-08-22 02:22:54 +00:00
codewalk.go go.tools: use golang.org/x/... import paths 2014-11-10 08:50:40 +11:00
dl.go godoc/{dl,proxy,short}: move packages out of Google's internal repo 2015-09-23 03:53:05 +00:00
doc.go cmd/godoc: Fix package comment inconsistencies. 2017-03-04 00:53:44 +00:00
godoc19_test.go cmd/godoc: fix expected test output for Go 1.8 and older 2017-04-26 05:21:38 +00:00
godoc_test.go cmd/godoc: fix TestWeb for versions < 1.11 2018-07-25 15:26:38 +00:00
goroot.go cmd/godoc: use same GOROOT discovery as Go 1.10's cmd/go 2018-06-12 01:24:34 +00:00
handlers.go cmd/godoc,cmd/tip: enable HSTS preload 2018-07-06 16:21:24 +00:00
index.go cmd/godoc: exclude /pkg from search indexing 2015-03-12 00:26:38 +00:00
main.go godoc: update to use new goroot finding logic 2018-08-23 15:26:32 +00:00
play.go cmd/godoc: always serve fmt handler, HTTPS fix redirection 2015-09-25 02:10:07 +00:00
README.godoc-app go.tools: use golang.org/x/... import paths 2014-11-10 08:50:40 +11:00
remotesearch.go go.tools/cmd/godoc: update appinit.go to use new godoc packages 2013-07-30 14:23:23 +10:00
setup-godoc-app.bash all: fix typos in comments 2018-08-10 18:15:57 +00:00
x.go godoc/static: add perf, review, sync subrepos 2018-03-30 16:45:20 +00:00

godoc on appengine
------------------

Prerequisites
-------------

* Go appengine SDK
  https://developers.google.com/appengine/downloads#Google_App_Engine_SDK_for_Go

* Go sources at tip under $GOROOT

* Godoc sources at tip inside $GOPATH
  (go get -d golang.org/x/tools/cmd/godoc)


Directory structure
-------------------

* Let $APPDIR be the directory containing the app engine files.
  (e.g., $APPDIR=$HOME/godoc-app)

* $APPDIR contains the following entries (this may change depending on
  app-engine release and version of godoc):

	app.yaml
	golang.org/x/tools/cmd/godoc
	godoc.zip
	index.split.*

* The app.yaml file is set up per app engine documentation.
  For instance:

	application: godoc-app
	version: 1
	runtime: go
	api_version: go1

	handlers:
	- url: /.*
	  script: _go_app


Configuring and running godoc
-----------------------------

To configure godoc, run

	bash setup-godoc-app.bash

to prepare an $APPDIR as described above. See the script for details on usage.

To run godoc locally, using the App Engine development server, run

	<path to go_appengine>/dev_appserver.py $APPDIR

godoc should come up at http://localhost:8080 .