2018-07-03 07:46:37 +00:00
|
|
|
// Code generated by go-bindata. DO NOT EDIT.
|
2016-07-14 10:55:04 +00:00
|
|
|
// sources:
|
|
|
|
// assets/git_changerelease.yaml
|
|
|
|
// assets/log_template.md
|
|
|
|
|
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"bytes"
|
|
|
|
"compress/gzip"
|
|
|
|
"fmt"
|
|
|
|
"io"
|
|
|
|
"io/ioutil"
|
|
|
|
"os"
|
|
|
|
"path/filepath"
|
|
|
|
"strings"
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
func bindataRead(data []byte, name string) ([]byte, error) {
|
|
|
|
gz, err := gzip.NewReader(bytes.NewBuffer(data))
|
|
|
|
if err != nil {
|
|
|
|
return nil, fmt.Errorf("Read %q: %v", name, err)
|
|
|
|
}
|
|
|
|
|
|
|
|
var buf bytes.Buffer
|
|
|
|
_, err = io.Copy(&buf, gz)
|
|
|
|
clErr := gz.Close()
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
return nil, fmt.Errorf("Read %q: %v", name, err)
|
|
|
|
}
|
|
|
|
if clErr != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
return buf.Bytes(), nil
|
|
|
|
}
|
|
|
|
|
|
|
|
type asset struct {
|
|
|
|
bytes []byte
|
2018-07-03 07:46:37 +00:00
|
|
|
info fileInfoEx
|
|
|
|
}
|
|
|
|
|
|
|
|
type fileInfoEx interface {
|
|
|
|
os.FileInfo
|
|
|
|
MD5Checksum() string
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
type bindataFileInfo struct {
|
2018-07-03 07:46:37 +00:00
|
|
|
name string
|
|
|
|
size int64
|
|
|
|
mode os.FileMode
|
|
|
|
modTime time.Time
|
|
|
|
md5checksum string
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func (fi bindataFileInfo) Name() string {
|
|
|
|
return fi.name
|
|
|
|
}
|
|
|
|
func (fi bindataFileInfo) Size() int64 {
|
|
|
|
return fi.size
|
|
|
|
}
|
|
|
|
func (fi bindataFileInfo) Mode() os.FileMode {
|
|
|
|
return fi.mode
|
|
|
|
}
|
|
|
|
func (fi bindataFileInfo) ModTime() time.Time {
|
|
|
|
return fi.modTime
|
|
|
|
}
|
2018-07-03 07:46:37 +00:00
|
|
|
func (fi bindataFileInfo) MD5Checksum() string {
|
|
|
|
return fi.md5checksum
|
|
|
|
}
|
2016-07-14 10:55:04 +00:00
|
|
|
func (fi bindataFileInfo) IsDir() bool {
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
func (fi bindataFileInfo) Sys() interface{} {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
var _bindataAssetsGitchangereleaseyaml = []byte(
|
2018-09-26 08:55:29 +00:00
|
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x92\xcf\x6a\x1b\x31\x10\xc6\xef\x7a\x8a\x0f\xfb\xd2\x1e\x56\x24\x3d" +
|
|
|
|
"\xfa\xd0\x43\x68\xe3\x53\x21\x94\xd2\x4b\x49\xcd\x78\x77\x56\xab\x56\x2b\x6d\x47\x92\x1d\x13\xf2\xee\x45\x92\x6d" +
|
|
|
|
"\x0a\x81\xde\x72\x1b\xd0\xf7\xe7\x27\x8d\xba\xae\x53\x6a\x8d\x4f\x36\xd2\xde\x31\xb6\x0f\x5b\x44\x6b\xbc\xf5\x06" +
|
|
|
|
"\x63\x10\x24\x32\x11\xd6\xa3\xa7\xc8\x38\x85\x8c\x21\xc0\x87\x84\x23\xf9\x84\x14\x30\xd1\x81\xab\x81\x07\xb5\x6e" +
|
|
|
|
"\xea\x20\x17\x51\x3b\xe4\x84\xbc\xbc\x0a\x36\x36\x69\x35\xb4\xd6\x5d\x0b\xd8\x15\xfb\x06\x23\xb9\xc8\x85\xe9\xde" +
|
|
|
|
"\xba\xc4\x82\x90\x13\xfa\x30\xcf\x36\x45\xe4\x58\xfc\x04\x61\x93\x1d\x09\xf8\x69\x11\x8e\xd1\x06\x8f\x99\x52\x3f" +
|
|
|
|
"\x21\x78\xa4\x89\xcf\x7a\xb5\xc6\xcc\x31\x92\x61\x8d\xbb\x13\x06\x1e\x29\xbb\x84\x3d\xbb\x70\x84\x8d\xa0\x66\x62" +
|
|
|
|
"\xa9\x44\x0f\x5f\x31\xb3\x18\x8e\x25\x64\x6b\xd3\x94\xf7\x5a\x59\xe3\x83\xf0\xee\x1c\x13\x37\x0a\xe8\xb0\xfa\xf9" +
|
|
|
|
"\xa5\x08\xb1\x64\xe7\x20\xfc\x27\x73\x4c\xab\x42\xfc\xf9\xc0\x72\x3a\x97\x5f\xaa\x5b\x47\xc1\x0e\x9e\x11\xc6\xca" +
|
|
|
|
"\xf7\x9a\x3f\x16\x3c\xdb\x9e\xd1\x7a\x4c\x2c\x8c\xa3\x75\x0e\x3d\xe5\xc8\x20\x2c\x25\xa6\x3b\xb0\xd4\xdb\x5a\xdf" +
|
|
|
|
"\x0b\x97\x9d\xbc\xbb\xd5\x37\xfa\x06\xdd\x47\x94\xe1\xf6\xbd\x56\xb5\x6f\x57\xe5\x17\xdc\x1f\xe3\xfd\xa3\x7d\x7a" +
|
|
|
|
"\x73\xc4\x99\x7e\x05\xf9\x1f\xe2\x87\x32\x5c\x11\xab\xfc\x8a\x78\xb7\x7f\x14\xa6\xdf\xd6\x9b\xca\xf9\x8d\xe7\xc5" +
|
|
|
|
"\x51\xe2\xf2\xc9\xc6\x20\x33\xa5\x7f\x16\x7b\x05\xef\x83\x4f\x64\xeb\xa7\xaa\xa7\x13\x79\xc3\x2e\x98\xf3\xa4\xd6" +
|
|
|
|
"\x38\x4e\xb6\x9f\x1a\xe6\x9e\x91\x23\x0f\x25\x91\x86\xa1\x1a\x12\x19\xa4\xa0\x95\xb0\x2b\xa8\xbb\x16\x7f\x59\xf7" +
|
|
|
|
"\x06\xab\x45\x78\x21\x29\xaf\x51\x05\x78\x7e\xd6\xdf\xdb\xfd\x5e\x5e\x56\x4a\x69\xad\xd5\xdf\x00\x00\x00\xff\xff" +
|
|
|
|
"\x8b\x01\xe7\xd6\x42\x03\x00\x00")
|
2016-07-14 10:55:04 +00:00
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
func bindataAssetsGitchangereleaseyamlBytes() ([]byte, error) {
|
2016-07-14 10:55:04 +00:00
|
|
|
return bindataRead(
|
2018-07-03 07:46:37 +00:00
|
|
|
_bindataAssetsGitchangereleaseyaml,
|
2016-07-14 10:55:04 +00:00
|
|
|
"assets/git_changerelease.yaml",
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
func bindataAssetsGitchangereleaseyaml() (*asset, error) {
|
|
|
|
bytes, err := bindataAssetsGitchangereleaseyamlBytes()
|
2016-07-14 10:55:04 +00:00
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
info := bindataFileInfo{
|
|
|
|
name: "assets/git_changerelease.yaml",
|
2018-09-26 08:55:29 +00:00
|
|
|
size: 834,
|
2018-07-03 07:46:37 +00:00
|
|
|
md5checksum: "",
|
|
|
|
mode: os.FileMode(436),
|
2018-09-26 08:55:29 +00:00
|
|
|
modTime: time.Unix(1537952066, 0),
|
2018-07-03 07:46:37 +00:00
|
|
|
}
|
|
|
|
|
2016-07-14 10:55:04 +00:00
|
|
|
a := &asset{bytes: bytes, info: info}
|
2018-07-03 07:46:37 +00:00
|
|
|
|
2016-07-14 10:55:04 +00:00
|
|
|
return a, nil
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
var _bindataAssetsLogtemplatemd = []byte(
|
|
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x52\x56\xa8\xae\x56\xd0\xf3\x4b\xad\x28\x09\x4b\x2d\x2a\xce\xcc\xcf\x53" +
|
|
|
|
"\xa8\xad\x55\xd0\x87\x08\xe6\x97\xeb\xb9\xe5\x17\xe5\x26\x96\x28\x28\x19\x19\x18\x98\xe9\x1a\x18\xea\x1a\x18\x29" +
|
|
|
|
"\x29\xd4\xd6\x72\x55\x57\x2b\x14\x25\xe6\xa5\xa7\x2a\xa8\xe4\x64\xe6\xa5\x2a\x58\xd9\x2a\xe8\xf9\xe4\xa7\xfb\x64" +
|
|
|
|
"\xe6\xa5\x16\x83\xa4\x15\x14\xb4\x40\x26\x80\x25\xf5\x82\x4b\x93\xb2\x52\x93\x4b\x20\xda\x74\x15\x52\xf3\x52\x40" +
|
|
|
|
"\x4c\x90\x11\x7a\xfe\x39\x29\x3e\xf9\xe9\x20\x2e\x20\x00\x00\xff\xff\x04\x83\xa4\x75\x87\x00\x00\x00")
|
2016-07-14 10:55:04 +00:00
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
func bindataAssetsLogtemplatemdBytes() ([]byte, error) {
|
2016-07-14 10:55:04 +00:00
|
|
|
return bindataRead(
|
2018-07-03 07:46:37 +00:00
|
|
|
_bindataAssetsLogtemplatemd,
|
2016-07-14 10:55:04 +00:00
|
|
|
"assets/log_template.md",
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
func bindataAssetsLogtemplatemd() (*asset, error) {
|
|
|
|
bytes, err := bindataAssetsLogtemplatemdBytes()
|
2016-07-14 10:55:04 +00:00
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
info := bindataFileInfo{
|
|
|
|
name: "assets/log_template.md",
|
|
|
|
size: 135,
|
|
|
|
md5checksum: "",
|
|
|
|
mode: os.FileMode(436),
|
|
|
|
modTime: time.Unix(1468497058, 0),
|
|
|
|
}
|
|
|
|
|
2016-07-14 10:55:04 +00:00
|
|
|
a := &asset{bytes: bytes, info: info}
|
2018-07-03 07:46:37 +00:00
|
|
|
|
2016-07-14 10:55:04 +00:00
|
|
|
return a, nil
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// Asset loads and returns the asset for the given name.
|
|
|
|
// It returns an error if the asset could not be found or
|
|
|
|
// could not be loaded.
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
func Asset(name string) ([]byte, error) {
|
|
|
|
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
|
|
|
if f, ok := _bindata[cannonicalName]; ok {
|
|
|
|
a, err := f()
|
|
|
|
if err != nil {
|
|
|
|
return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
|
|
|
|
}
|
|
|
|
return a.bytes, nil
|
|
|
|
}
|
2018-07-03 07:46:37 +00:00
|
|
|
return nil, &os.PathError{Op: "open", Path: name, Err: os.ErrNotExist}
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// MustAsset is like Asset but panics when Asset would return an error.
|
|
|
|
// It simplifies safe initialization of global variables.
|
2018-07-03 07:46:37 +00:00
|
|
|
// nolint: deadcode
|
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
func MustAsset(name string) []byte {
|
|
|
|
a, err := Asset(name)
|
|
|
|
if err != nil {
|
|
|
|
panic("asset: Asset(" + name + "): " + err.Error())
|
|
|
|
}
|
|
|
|
|
|
|
|
return a
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// AssetInfo loads and returns the asset info for the given name.
|
2018-07-03 07:46:37 +00:00
|
|
|
// It returns an error if the asset could not be found or could not be loaded.
|
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
func AssetInfo(name string) (os.FileInfo, error) {
|
|
|
|
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
|
|
|
if f, ok := _bindata[cannonicalName]; ok {
|
|
|
|
a, err := f()
|
|
|
|
if err != nil {
|
|
|
|
return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
|
|
|
|
}
|
|
|
|
return a.info, nil
|
|
|
|
}
|
2018-07-03 07:46:37 +00:00
|
|
|
return nil, &os.PathError{Op: "open", Path: name, Err: os.ErrNotExist}
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// AssetNames returns the names of the assets.
|
2018-07-03 07:46:37 +00:00
|
|
|
// nolint: deadcode
|
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
func AssetNames() []string {
|
|
|
|
names := make([]string, 0, len(_bindata))
|
|
|
|
for name := range _bindata {
|
|
|
|
names = append(names, name)
|
|
|
|
}
|
|
|
|
return names
|
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// _bindata is a table, holding each asset generator, mapped to its name.
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
var _bindata = map[string]func() (*asset, error){
|
2018-07-03 07:46:37 +00:00
|
|
|
"assets/git_changerelease.yaml": bindataAssetsGitchangereleaseyaml,
|
|
|
|
"assets/log_template.md": bindataAssetsLogtemplatemd,
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
// AssetDir returns the file names below a certain
|
|
|
|
// directory embedded in the file by go-bindata.
|
|
|
|
// For example if you run go-bindata on data/... and data contains the
|
|
|
|
// following hierarchy:
|
|
|
|
// data/
|
|
|
|
// foo.txt
|
|
|
|
// img/
|
|
|
|
// a.png
|
|
|
|
// b.png
|
|
|
|
// then AssetDir("data") would return []string{"foo.txt", "img"}
|
|
|
|
// AssetDir("data/img") would return []string{"a.png", "b.png"}
|
|
|
|
// AssetDir("foo.txt") and AssetDir("notexist") would return an error
|
|
|
|
// AssetDir("") will return []string{"data"}.
|
2018-07-03 07:46:37 +00:00
|
|
|
//
|
2016-07-14 10:55:04 +00:00
|
|
|
func AssetDir(name string) ([]string, error) {
|
|
|
|
node := _bintree
|
|
|
|
if len(name) != 0 {
|
|
|
|
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
|
|
|
pathList := strings.Split(cannonicalName, "/")
|
|
|
|
for _, p := range pathList {
|
|
|
|
node = node.Children[p]
|
|
|
|
if node == nil {
|
2018-07-03 07:46:37 +00:00
|
|
|
return nil, &os.PathError{
|
|
|
|
Op: "open",
|
|
|
|
Path: name,
|
|
|
|
Err: os.ErrNotExist,
|
|
|
|
}
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if node.Func != nil {
|
2018-07-03 07:46:37 +00:00
|
|
|
return nil, &os.PathError{
|
|
|
|
Op: "open",
|
|
|
|
Path: name,
|
|
|
|
Err: os.ErrNotExist,
|
|
|
|
}
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
rv := make([]string, 0, len(node.Children))
|
|
|
|
for childName := range node.Children {
|
|
|
|
rv = append(rv, childName)
|
|
|
|
}
|
|
|
|
return rv, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
type bintree struct {
|
|
|
|
Func func() (*asset, error)
|
|
|
|
Children map[string]*bintree
|
|
|
|
}
|
2018-07-03 07:46:37 +00:00
|
|
|
|
|
|
|
var _bintree = &bintree{Func: nil, Children: map[string]*bintree{
|
|
|
|
"assets": {Func: nil, Children: map[string]*bintree{
|
|
|
|
"git_changerelease.yaml": {Func: bindataAssetsGitchangereleaseyaml, Children: map[string]*bintree{}},
|
|
|
|
"log_template.md": {Func: bindataAssetsLogtemplatemd, Children: map[string]*bintree{}},
|
2016-07-14 10:55:04 +00:00
|
|
|
}},
|
|
|
|
}}
|
|
|
|
|
|
|
|
// RestoreAsset restores an asset under the given directory
|
|
|
|
func RestoreAsset(dir, name string) error {
|
|
|
|
data, err := Asset(name)
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
info, err := AssetInfo(name)
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755))
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
2018-07-03 07:46:37 +00:00
|
|
|
return os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
2016-07-14 10:55:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// RestoreAssets restores an asset under the given directory recursively
|
|
|
|
func RestoreAssets(dir, name string) error {
|
|
|
|
children, err := AssetDir(name)
|
|
|
|
// File
|
|
|
|
if err != nil {
|
|
|
|
return RestoreAsset(dir, name)
|
|
|
|
}
|
|
|
|
// Dir
|
|
|
|
for _, child := range children {
|
|
|
|
err = RestoreAssets(dir, filepath.Join(name, child))
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func _filePath(dir, name string) string {
|
|
|
|
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
|
|
|
return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
|
|
|
|
}
|