示例#1
0
文件: repo.go 项目: jcfrank/gogs
// extractGitBareZip extracts git-bare.zip to repository path.
func extractGitBareZip(repoPath string) error {
	z, err := zip.Open(path.Join(setting.RepoRootPath, "git-bare.zip"))
	if err != nil {
		return err
	}
	defer z.Close()

	return z.ExtractTo(repoPath)
}
示例#2
0
文件: repo.go 项目: kristofer/gogs
// extractGitBareZip extracts git-bare.zip to repository path.
func extractGitBareZip(repoPath string) error {
	z, err := zip.Open("conf/content/git-bare.zip")
	if err != nil {
		return err
	}
	defer z.Close()

	return z.ExtractTo(repoPath)
}
示例#3
0
func ExtractBundleBytes() {
	// origin from https://github.com/wendal/gor/blob/master/gor/gor.go
	decoder := base64.NewDecoder(base64.StdEncoding, bytes.NewBufferString(zipBytes))
	b, _ := ioutil.ReadAll(decoder)
	ioutil.WriteFile(tmpZipFile, b, os.ModePerm)
	z, e := zip.Open(tmpZipFile)
	if e != nil {
		panic(e)
		os.Exit(1)
	}
	z.ExtractTo("")
	defer func() {
		z.Close()
		decoder = nil
		os.Remove(tmpZipFile)
	}()
}
示例#4
0
// new site assets
func NewSiteAsset(ctx *cli.Context) {
	zip.Verbose = false
	tmpZipFile := "tmp.zip"
	decoder := base64.NewDecoder(base64.StdEncoding, bytes.NewBufferString(zipBytes))
	b, _ := ioutil.ReadAll(decoder)
	if err := ioutil.WriteFile(tmpZipFile, b, os.ModePerm); err != nil {
		log.Fatal("NewSite | %s", err.Error())
	}
	z, err := zip.Open(tmpZipFile)
	if err != nil {
		log.Fatal("NewSite | %s", err.Error())
	}
	z.ExtractTo("")
	z.Close()
	decoder = nil
	os.Remove(tmpZipFile)
	log.Info("NewSite | %-8s | Success", "Asset")
}
示例#5
0
func DoInstall() {
	// origin from https://github.com/wendal/gor/blob/master/gor/gor.go
	decoder := base64.NewDecoder(base64.StdEncoding, bytes.NewBufferString(zipBytes))
	b, _ := ioutil.ReadAll(decoder)
	ioutil.WriteFile(tmpZipFile, b, os.ModePerm)
	z, e := zip.Open(tmpZipFile)
	if e != nil {
		panic(e)
		os.Exit(1)
	}
	z.ExtractTo("")
	defer func() {
		z.Close()
		decoder = nil
		os.Remove(tmpZipFile)
	}()
	ioutil.WriteFile(installLockFile, []byte(fmt.Sprint(utils.Now())), os.ModePerm)
	println("install success")
}