func main()

in internal/genv/main.go [31:71]


func main() {
	if len(os.Args) == 1 {
		usage()
	}
	dlRoot, err := golangOrgDlRoot()
	if err != nil {
		failf("golangOrgDlRoot: %v", err)
	}
	for _, version := range os.Args[1:] {
		if !strings.HasPrefix(version, "go") {
			failf("version names should have the 'go' prefix")
		}
		var buf bytes.Buffer
		if err := mainTmpl.Execute(&buf, struct {
			Year                int
			Version             string // "go1.5.3rc2"
			VersionNoPatch      string // "go1.5"
			CapitalSpaceVersion string // "Go 1.5"
			DocHost             string // "golang.org" or "tip.golang.org" for rc/beta
		}{
			Year:                time.Now().Year(),
			Version:             version,
			VersionNoPatch:      versionNoPatch(version),
			DocHost:             docHost(version),
			CapitalSpaceVersion: strings.Replace(version, "go", "Go ", 1),
		}); err != nil {
			failf("mainTmpl.execute: %v", err)
		}
		path := filepath.Join(dlRoot, version, "main.go")
		if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil {
			failf("%v", err)
		}
		if err := ioutil.WriteFile(path, buf.Bytes(), 0666); err != nil {
			failf("ioutil.WriteFile: %v", err)
		}
		fmt.Println("Wrote", path)
		if err := exec.Command("gofmt", "-w", path).Run(); err != nil {
			failf("could not gofmt file %q: %v", path, err)
		}
	}
}