429 lines
14 KiB
Go
429 lines
14 KiB
Go
// Code generated by go-bindata. DO NOT EDIT.
|
|
// sources:
|
|
// templates/aws-roles-tf/deploy.sh
|
|
// templates/aws-roles-tf/main.tf
|
|
// templates/rds-tf/deploy.sh
|
|
// templates/rds-tf/main.tf
|
|
|
|
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
|
|
info fileInfoEx
|
|
}
|
|
|
|
type fileInfoEx interface {
|
|
os.FileInfo
|
|
MD5Checksum() string
|
|
}
|
|
|
|
type bindataFileInfo struct {
|
|
name string
|
|
size int64
|
|
mode os.FileMode
|
|
modTime time.Time
|
|
md5checksum string
|
|
}
|
|
|
|
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
|
|
}
|
|
func (fi bindataFileInfo) MD5Checksum() string {
|
|
return fi.md5checksum
|
|
}
|
|
func (fi bindataFileInfo) IsDir() bool {
|
|
return false
|
|
}
|
|
func (fi bindataFileInfo) Sys() interface{} {
|
|
return nil
|
|
}
|
|
|
|
var _bindataTemplatesAwsrolestfDeploysh = []byte(
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x8e\xc1\x4e\xc3\x30\x0c\x86\xef\x79\x0a\xa3\xed\x9a\xee\x19\xa6\xd1" +
|
|
"\x1b\x4c\x68\x05\x71\xf6\x82\xc3\xa2\x25\x4e\x94\xb8\x6b\xab\x2e\xef\x8e\x86\x60\x9a\xd0\x24\x8e\xb6\xbf\xdf\xdf" +
|
|
"\xbf\x78\x58\xed\x1d\xaf\xca\x41\xa9\x05\xd0\xe8\x04\x86\x03\x31\x20\x4f\x60\x62\x08\xc8\x1f\x60\xd1\xf9\xa2\x0a" +
|
|
"\x09\x68\x52\x4a\x28\x67\xb4\x31\x07\x70\xec\xe4\x66\x1c\x62\x3e\x96\x84\x86\xa0\x90\x27\x23\x30\xcf\xd0\xb4\xa3" +
|
|
"\x64\xdc\x51\x89\x7d\x36\x54\x9a\xf7\x2b\x53\x2b\x9c\xcf\x70\x2f\xcd\x34\xfc\x17\xbd\xb1\x62\x4a\x7e\x02\x8d\xbd" +
|
|
"\x44\x8d\x29\xe5\x78\x22\xa5\x8e\xfd\x9e\x8c\x78\x30\x91\xad\xfb\x84\xbe\x90\x36\x91\x85\x46\x81\xe5\xbc\x79\x7a" +
|
|
"\xeb\x5e\xdb\x5d\xbd\x52\x3f\x2f\xec\xb7\xf5\x91\x92\x8f\x53\x20\x96\x66\x8b\xe1\x22\xd3\x77\xd6\x5d\x6f\xad\x1b" +
|
|
"\x7f\x8f\x7f\x9a\xb6\x7c\x72\x39\xf2\x05\x86\x5a\x9b\x09\x83\x07\xcd\xb0\x9c\xb7\xeb\xe7\xb6\x7b\x59\x6f\xda\xfa" +
|
|
"\x15\x00\x00\xff\xff\xb4\x7f\x25\x14\x76\x01\x00\x00")
|
|
|
|
func bindataTemplatesAwsrolestfDeployshBytes() ([]byte, error) {
|
|
return bindataRead(
|
|
_bindataTemplatesAwsrolestfDeploysh,
|
|
"templates/aws-roles-tf/deploy.sh",
|
|
)
|
|
}
|
|
|
|
|
|
|
|
func bindataTemplatesAwsrolestfDeploysh() (*asset, error) {
|
|
bytes, err := bindataTemplatesAwsrolestfDeployshBytes()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
info := bindataFileInfo{
|
|
name: "templates/aws-roles-tf/deploy.sh",
|
|
size: 374,
|
|
md5checksum: "",
|
|
mode: os.FileMode(420),
|
|
modTime: time.Unix(1584392515, 0),
|
|
}
|
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
}
|
|
|
|
var _bindataTemplatesAwsrolestfMaintf = []byte(
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x91\x41\x6b\xdc\x30\x10\x85\xef\xfe\x15\xc2\x77\xc9\x94\xde\x16\x02" +
|
|
"\x6d\x68\x2e\x3d\x94\x12\x17\x7a\x34\x5a\xed\xd8\x16\x96\x34\xee\x68\xb4\xc9\xb2\xf1\x7f\x2f\x92\x92\xb2\x65\xb7" +
|
|
"\xb4\xd5\xcd\xc3\x7b\x9f\xe7\xbd\x61\x20\xd2\x23\x92\x17\xe7\x46\x88\xbd\x36\x0b\x84\x83\x68\xe3\xfb\xb6\x0c\x84" +
|
|
"\xd8\x27\xb3\x00\x8b\xdf\xdf\x9d\x68\xcf\x67\xa1\x7a\xd6\x0c\x3d\x23\xc1\x7d\x35\xaa\xfb\xa2\xfe\xa2\x3d\x88\x6d" +
|
|
"\x6b\x0b\x80\x60\xb2\x18\xae\x01\x7a\x95\x11\x13\xcf\xf2\x5d\xd5\x2d\x70\x12\x57\xef\x4e\xb4\x11\xe8\x68\x0d\x48" +
|
|
"\xab\xbd\x24\x74\x10\xab\xfc\x09\x69\x89\xab\x36\x30\x2c\x70\x1a\x56\x82\xd1\x3e\x67\xb9\xd5\xbe\xa8\xba\xbc\xe0" +
|
|
"\xc3\x33\x93\x7e\x84\x88\x89\x0c\x44\xf5\x10\x8e\x96\x30\x78\x08\x2c\xb6\xad\x28\x3e\xc1\xea\xf0\x94\x27\xea\x75" +
|
|
"\x6b\x79\x63\xdc\xa7\x31\xe3\xdf\x22\xad\x84\xa3\x75\xf0\x8f\x9d\x7c\xfc\xde\x7f\x7d\x35\xbc\x01\xb4\x71\x37\xb3" +
|
|
"\xd6\xb2\x25\x3e\x05\x20\x39\x26\xe7\xa4\xc1\xc0\x84\x2e\xdb\xb6\x66\x6b\x1a\x8f\x87\xe4\xa0\xc4\x2c\x6d\xd4\x33" +
|
|
"\xd5\x80\x17\xa0\xc9\xf2\x6e\x17\xe3\xbc\xeb\xba\xc9\xf2\x87\xc9\xf2\x9c\xf6\xca\xf8\x83\x0a\xfa\x68\x25\x83\x99" +
|
|
"\x95\x0d\x5d\xf9\xb0\x61\x24\xdd\xfd\xaa\x57\x4d\x96\xf3\xef\xe0\xa2\xac\xcc\xfc\x4b\x9f\x2f\xe2\x47\x42\xce\x11" +
|
|
"\xf3\x3e\xf5\x66\x43\x06\xfe\xc1\xdb\x57\xc9\x63\x56\xbc\x08\x9f\x22\x7f\xc3\xcf\x11\x43\x05\x64\xe3\x10\xf2\x41" +
|
|
"\x2e\xaa\xfd\xef\x5b\x6d\xcd\xcf\x00\x00\x00\xff\xff\xd4\xd2\x05\x95\xdf\x02\x00\x00")
|
|
|
|
func bindataTemplatesAwsrolestfMaintfBytes() ([]byte, error) {
|
|
return bindataRead(
|
|
_bindataTemplatesAwsrolestfMaintf,
|
|
"templates/aws-roles-tf/main.tf",
|
|
)
|
|
}
|
|
|
|
|
|
|
|
func bindataTemplatesAwsrolestfMaintf() (*asset, error) {
|
|
bytes, err := bindataTemplatesAwsrolestfMaintfBytes()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
info := bindataFileInfo{
|
|
name: "templates/aws-roles-tf/main.tf",
|
|
size: 735,
|
|
md5checksum: "",
|
|
mode: os.FileMode(420),
|
|
modTime: time.Unix(1582736085, 0),
|
|
}
|
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
}
|
|
|
|
var _bindataTemplatesRdstfDeploysh = []byte(
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x8e\x31\x4e\x04\x31\x0c\x45\x7b\x4e\x11\x44\x3d\x59\x51\x52\x50\x72" +
|
|
"\x01\x1a\xca\xc8\x93\x7c\x96\x88\x19\x3b\xb2\x9d\x19\xd0\xee\xde\x9d\x06\x2d\x0c\x0d\x48\x6c\x67\xd9\x7e\xef\xff" +
|
|
"\x9b\xeb\xdd\x58\x79\x67\x2f\x57\x0e\x55\x7a\x16\x9d\x6f\xef\x42\xe5\xea\x9b\xc5\x2a\xfa\x6a\x8d\x32\x82\x61\x42" +
|
|
"\xf6\x70\x38\x84\xf8\xf0\xe6\x4a\x8f\x30\xe9\x9a\x61\xf1\xe9\xfc\x73\x3a\x85\xe3\x31\x9c\xf9\x6f\x34\x63\xfd\x0d" +
|
|
"\xdd\xe4\x52\x6b\xd3\x7b\x18\x9c\x74\x0f\xbf\x9f\xa5\xf4\x09\x51\x8b\xc5\x42\x4e\x91\x56\x4b\xd6\x47\x86\xa7\x5a" +
|
|
"\x2c\x66\x99\x67\xe2\x92\x9a\xd6\x85\x1c\x9f\x27\x0b\x03\x75\x97\x81\x5a\x53\x59\xf0\x37\xfd\xd7\x98\x2a\x9b\x13" +
|
|
"\x67\x5c\x48\x93\xb0\x80\xff\x55\xaa\x89\xf9\x5e\x61\xa9\x8c\x3f\x2c\x1f\x01\x00\x00\xff\xff\x78\xa7\xe0\xdd\xcd" +
|
|
"\x01\x00\x00")
|
|
|
|
func bindataTemplatesRdstfDeployshBytes() ([]byte, error) {
|
|
return bindataRead(
|
|
_bindataTemplatesRdstfDeploysh,
|
|
"templates/rds-tf/deploy.sh",
|
|
)
|
|
}
|
|
|
|
|
|
|
|
func bindataTemplatesRdstfDeploysh() (*asset, error) {
|
|
bytes, err := bindataTemplatesRdstfDeployshBytes()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
info := bindataFileInfo{
|
|
name: "templates/rds-tf/deploy.sh",
|
|
size: 461,
|
|
md5checksum: "",
|
|
mode: os.FileMode(420),
|
|
modTime: time.Unix(1585173441, 0),
|
|
}
|
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
}
|
|
|
|
var _bindataTemplatesRdstfMaintf = []byte(
|
|
"\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xa4\x93\x4f\x6f\xda\x40\x10\xc5\xef\xfe\x14\x23\xee\x36\xad\x7a\xa8\x14" +
|
|
"\x29\x52\xff\x84\x56\xe9\xa1\x8a\xda\xb4\x57\x6b\xbc\x1e\x9b\x95\xd7\xb3\xce\xce\x1a\x42\x88\xbf\x7b\x65\xaf\x9d" +
|
|
"\x82\x20\x40\x55\x9f\x60\xfc\xde\x6f\xde\x3e\x16\x4f\xce\x61\x61\x5d\x0d\xdb\x08\x20\x43\x55\x11\xe7\x30\x93\x77" +
|
|
"\xb3\x61\x00\x90\xb5\xaa\x22\x0f\xfb\xcf\x35\xcc\x18\x57\x3a\xce\x90\xab\xf8\x05\x11\x2b\x5b\xd7\xc8\x79\x2c\x1e" +
|
|
"\x3d\xcd\x06\xbb\xa3\x52\x5b\x3e\xb4\x63\x13\x8b\x6d\xfd\x32\x7e\x1b\x74\x15\x6d\xe0\xe0\xb9\x86\x99\xcb\x25\x08" +
|
|
"\xd6\xd6\x55\xd2\xa0\xa2\xb4\xa2\x4d\xda\x38\x2a\xf4\xe3\x28\x08\xfb\x64\xbe\xdd\x42\xb2\x78\xf4\x0e\x7f\x90\xd8" +
|
|
"\xd6\x29\x92\xe4\x06\x3d\x66\x28\x94\xdc\xb2\x78\x64\x45\xdf\xb1\x26\xe8\xba\xc0\x6c\x9c\x2d\xb4\xa1\x83\xa5\xaa" +
|
|
"\xce\x83\x00\x95\x39\x9a\x2a\x94\x12\xdb\x35\x93\x8b\x8b\xd6\x98\x58\x59\xf6\xce\x9a\xde\xd6\x45\x5d\x14\xd5\x36" +
|
|
"\x6f\x0d\x85\xfc\x43\x93\x21\xd1\x0e\xa3\xd4\xfe\xea\x4a\x64\x79\x35\x9f\x97\xda\x7f\x28\xb5\x5f\xb6\x59\xa2\xea" +
|
|
"\x3c\x19\xaa\xf5\xa4\x96\x89\xe6\xf9\xf0\x45\x73\xe1\x70\xee\x72\x49\x4a\xed\xfb\x1d\xc4\x2b\xed\x2c\xd7\xc4\x7e" +
|
|
"\xa0\x1d\x39\xfa\x62\x47\xf2\x0c\x0f\xad\xf5\xfd\xc1\x23\x00\x3d\x56\x91\x72\xdf\xc5\x51\xef\xf1\xda\xf6\x28\x0d" +
|
|
"\x8a\xac\xad\xcb\xa7\xf3\x9c\xa2\xdc\x4d\xda\x3d\x82\xe8\x27\xda\x6d\xf5\x14\xe1\xa7\x7e\xa2\x5b\xfe\x9a\x05\x67" +
|
|
"\x2b\xe4\x2e\x75\xfe\xea\xb5\x3b\x7b\x23\x80\x7c\x7c\x27\x17\xd8\x6f\xb2\xfe\xe8\x02\xcf\x50\xb7\xe2\xef\xed\x37" +
|
|
"\xb1\x1c\x42\x4c\x94\xd4\x63\x29\x3d\x25\x0a\x71\xee\x09\xeb\x11\xda\x7f\x4c\x0e\xab\x1b\x42\x6c\xb7\x31\xe8\xe2" +
|
|
"\xf5\xc5\x1f\xd7\x32\x95\xff\xd9\xa0\x48\xb0\xe2\x5a\xd2\x97\xdf\x4f\x0d\xf3\xd3\xf9\x0f\x30\x7b\x49\xfa\x10\xfd" +
|
|
"\xff\xbd\xbb\x28\xd2\x27\x54\x55\xdb\x2c\x18\x33\x43\x79\x00\x64\xc3\x28\x75\xe4\x89\xbd\xb6\x9c\x36\xe4\xb4\xcd" +
|
|
"\xe1\x1a\xde\x4f\x78\x23\x74\x4e\xfb\xe6\x9f\xa3\xdc\xc9\x83\xf9\x82\xb5\x36\x9b\xf1\x36\xca\x83\x49\x8b\x30\x38" +
|
|
"\x73\x17\xff\x3a\xff\xa3\x8a\x9e\xb2\xe0\x52\x33\xfd\x26\x27\x7a\xba\x13\x43\x0c\x1a\xe6\xe9\x6a\x7c\x71\x3e\xce" +
|
|
"\x3e\xe8\xd5\x54\x5d\xf4\x27\x00\x00\xff\xff\x9a\x4f\x09\x1d\xad\x05\x00\x00")
|
|
|
|
func bindataTemplatesRdstfMaintfBytes() ([]byte, error) {
|
|
return bindataRead(
|
|
_bindataTemplatesRdstfMaintf,
|
|
"templates/rds-tf/main.tf",
|
|
)
|
|
}
|
|
|
|
|
|
|
|
func bindataTemplatesRdstfMaintf() (*asset, error) {
|
|
bytes, err := bindataTemplatesRdstfMaintfBytes()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
info := bindataFileInfo{
|
|
name: "templates/rds-tf/main.tf",
|
|
size: 1453,
|
|
md5checksum: "",
|
|
mode: os.FileMode(420),
|
|
modTime: time.Unix(1585203322, 0),
|
|
}
|
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
}
|
|
|
|
|
|
//
|
|
// 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.
|
|
//
|
|
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
|
|
}
|
|
return nil, &os.PathError{Op: "open", Path: name, Err: os.ErrNotExist}
|
|
}
|
|
|
|
//
|
|
// MustAsset is like Asset but panics when Asset would return an error.
|
|
// It simplifies safe initialization of global variables.
|
|
// nolint: deadcode
|
|
//
|
|
func MustAsset(name string) []byte {
|
|
a, err := Asset(name)
|
|
if err != nil {
|
|
panic("asset: Asset(" + name + "): " + err.Error())
|
|
}
|
|
|
|
return a
|
|
}
|
|
|
|
//
|
|
// AssetInfo loads and returns the asset info for the given name.
|
|
// It returns an error if the asset could not be found or could not be loaded.
|
|
//
|
|
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
|
|
}
|
|
return nil, &os.PathError{Op: "open", Path: name, Err: os.ErrNotExist}
|
|
}
|
|
|
|
//
|
|
// AssetNames returns the names of the assets.
|
|
// nolint: deadcode
|
|
//
|
|
func AssetNames() []string {
|
|
names := make([]string, 0, len(_bindata))
|
|
for name := range _bindata {
|
|
names = append(names, name)
|
|
}
|
|
return names
|
|
}
|
|
|
|
//
|
|
// _bindata is a table, holding each asset generator, mapped to its name.
|
|
//
|
|
var _bindata = map[string]func() (*asset, error){
|
|
"templates/aws-roles-tf/deploy.sh": bindataTemplatesAwsrolestfDeploysh,
|
|
"templates/aws-roles-tf/main.tf": bindataTemplatesAwsrolestfMaintf,
|
|
"templates/rds-tf/deploy.sh": bindataTemplatesRdstfDeploysh,
|
|
"templates/rds-tf/main.tf": bindataTemplatesRdstfMaintf,
|
|
}
|
|
|
|
//
|
|
// 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"}.
|
|
//
|
|
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 {
|
|
return nil, &os.PathError{
|
|
Op: "open",
|
|
Path: name,
|
|
Err: os.ErrNotExist,
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if node.Func != nil {
|
|
return nil, &os.PathError{
|
|
Op: "open",
|
|
Path: name,
|
|
Err: os.ErrNotExist,
|
|
}
|
|
}
|
|
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
|
|
}
|
|
|
|
var _bintree = &bintree{Func: nil, Children: map[string]*bintree{
|
|
"templates": {Func: nil, Children: map[string]*bintree{
|
|
"aws-roles-tf": {Func: nil, Children: map[string]*bintree{
|
|
"deploy.sh": {Func: bindataTemplatesAwsrolestfDeploysh, Children: map[string]*bintree{}},
|
|
"main.tf": {Func: bindataTemplatesAwsrolestfMaintf, Children: map[string]*bintree{}},
|
|
}},
|
|
"rds-tf": {Func: nil, Children: map[string]*bintree{
|
|
"deploy.sh": {Func: bindataTemplatesRdstfDeploysh, Children: map[string]*bintree{}},
|
|
"main.tf": {Func: bindataTemplatesRdstfMaintf, Children: map[string]*bintree{}},
|
|
}},
|
|
}},
|
|
}}
|
|
|
|
// 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
|
|
}
|
|
return os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
|
}
|
|
|
|
// 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, "/")...)...)
|
|
}
|