2019-08-10 05:07:43 +00:00
|
|
|
// Code generated for package static by go-bindata DO NOT EDIT. (@generated)
|
2019-03-20 00:27:44 +00:00
|
|
|
// sources:
|
2021-07-03 09:03:50 +00:00
|
|
|
// build/static/charts/traefik-10.3.0.tgz
|
|
|
|
// build/static/charts/traefik-crd-10.3.0.tgz
|
2020-09-11 21:51:45 +00:00
|
|
|
// +build !no_stage
|
|
|
|
|
2019-03-20 00:27:44 +00:00
|
|
|
package static
|
|
|
|
|
|
|
|
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 os.FileInfo
|
|
|
|
}
|
|
|
|
|
|
|
|
type bindataFileInfo struct {
|
|
|
|
name string
|
|
|
|
size int64
|
|
|
|
mode os.FileMode
|
|
|
|
modTime time.Time
|
|
|
|
}
|
|
|
|
|
2019-08-10 05:07:43 +00:00
|
|
|
// Name return file name
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) Name() string {
|
|
|
|
return fi.name
|
|
|
|
}
|
2019-08-10 05:07:43 +00:00
|
|
|
|
|
|
|
// Size return file size
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) Size() int64 {
|
|
|
|
return fi.size
|
|
|
|
}
|
2019-08-10 05:07:43 +00:00
|
|
|
|
|
|
|
// Mode return file mode
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) Mode() os.FileMode {
|
|
|
|
return fi.mode
|
|
|
|
}
|
2019-08-10 05:07:43 +00:00
|
|
|
|
|
|
|
// Mode return file modify time
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) ModTime() time.Time {
|
|
|
|
return fi.modTime
|
|
|
|
}
|
2019-08-10 05:07:43 +00:00
|
|
|
|
|
|
|
// IsDir return file whether a directory
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) IsDir() bool {
|
2019-08-10 05:07:43 +00:00
|
|
|
return fi.mode&os.ModeDir != 0
|
2019-03-20 00:27:44 +00:00
|
|
|
}
|
2019-08-10 05:07:43 +00:00
|
|
|
|
|
|
|
// Sys return file is sys mode
|
2019-03-20 00:27:44 +00:00
|
|
|
func (fi bindataFileInfo) Sys() interface{} {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2021-11-12 05:03:15 +00:00
|
|
|
var _chartsTraefik1030Tgz = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x00\x0a\x40\xf5\xbf\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03\xec\x5c\x7d\x73\xdb\x36\x9a\xef\xdf\xfa\x14\x38\x67\x6e\xd6\x9e\x91\xe5\xb7\x24\xde\x75\x6f\x6e\xea\xda\x4e\xab\xdd\xd4\xce\xd8\xce\xe6\x3a\x9d\x9d\x04\x22\x41\x09\x35\x45\x70\x01\xd2\xb2\xb6\xb3\xdf\xfd\x9e\x17\x00\x04\x25\xd9\xc9\xce\xa5\xdd\xbd\xbb\x68\xda\x58\xa2\x48\xe0\xc1\xf3\xf2\x7b\xde\x00\x35\x56\xaa\x42\xdf\xed\x7d\xf5\x2b\xbe\xf6\xe1\x75\xfc\xe2\x05\xfd\x85\xd7\xea\x5f\x7a\x7f\x70\x74\x7c\x7c\xf4\xfc\xe5\x11\x5f\x3f\x3e\x3a\x7e\xfe\x95\x78\xf1\x6b\x12\x15\x5e\xad\x6b\xa4\x15\xe2\xb7\x98\xea\x5f\xf1\xd5\x78\xf9\x8f\x66\xaa\x9c\xeb\x69\x65\xac\xfa\xec\x73\xa0\x80\x5f\x3e\x7f\xfe\x84\xfc\x8f\xfb\xf2\x3f\x38\x78\x71\x78\xf4\x95\xd8\xff\xec\x94\x6c\x78\xfd\x7f\x97\xbf\x72\x8d\xdb\x1b\xfc\xb3\xc9\xf8\xf2\xfa\x27\xbd\x82\xfd\x9f\xcd\xa4\x6d\x46\x4b\x39\x2f\x3f\xff\x1c\x1f\xb1\xff\x83\x83\xfd\x97\xab\xf6\x7f\x74\x70\xfc\xc5\xfe\x7f\x8b\x97\xac\xf5\x9f\x95\x75\xda\x54\x27\xe2\xfe\x70\x20\xeb\x3a\x7e\x3c\x1c\xbd\x18\xed\x0f\x72\xe5\x32\xab\xeb\x86\x2e\x9d\x8a\x5b\xd6\x17\x31\x91\x4e\xe5\xe2\x4f\xed\x44\xd9\x4a\x01\x88\x08\x5d\x4d\xad\x72\x4e\x64\xa6\x6a\xac\x29\x4b\x65\x07\x33\x33\x57\x27\x62\xd6\x34\xb5\x3b\xd9\xdb\xf3\x9a\x36\xd2\x66\x6f\xa0\x33\x1c\x2d\x7c\x63\xe5\x62\x34\xd5\xcd\xac\x9d\xb4\x4e\x59\x1c\x40\x55\xcd\x28\x33\xf3\xf0\x4c\xfc\x7b\x7f\x38\x3a\xda\xcb\x4d\xe6\xf6\xfc\x5d\x7b\xd2\x39\x05\x00\xa6\xe7\xd3\x38\x41\x69\xa6\x66\x54\x57\xd3\xc1\x9d\x5a\x2e\x8c\xcd\xdd\xc9\x60\x57\xf8\x2f\xe1\x9d\x27\x74\x30\x97\xba\x6a\xe0\x7f\x58\x2e\xde\xa0\xe0\x73\x79\x02\x7f\x74\xa9\xbe\xb9\x97\xed\x54\x21\x05\x03\x21\x2a\x89\xab\xa0\xeb\x74\xb9\xbb\x37\x97\x95\x56\xe5\xa8\x31\xf3\x4c\xfd\xfc\xcd\x14\x2f\xf6\x9e\xc9\xf9\x9b\xee\x81\x32\x57\x7f\xfb\xa6\xe3\x43\xbc\x11\xaf\x0f\xf8\x6d\xa0\xd3\x99\xd6\x66\x8a\x28\x0b\x6c\x62\x16\x6d\xe2\xcb\x27\xdd\xb4\x8b\x1e\x7e\x37\x43\x3b\x1f\x34\xcb\x1a\xe6\x02\x61\x97\x3a\x93\x28\xda\xc1\x7d\x90\xfa\xc1\xfe\xe8\x08\xc4\x2e\xab\xca\x34\xf4\x15\xd0\x20\x44\x51\x2a\x05\x22\x91\x4d\x53\x2a\x94\xe0\xa4\xad\xf2\x52\xed\xea\xfc\x44\xdc\x1d\xb9\x2f\xee\xe3\x7f\xed\x2b\x28\xc9\x77\xad\xce\x55\x09\xd6\xe0\x46\xf3\xfc\x33\xcf\xf1\x11\xfc\x7f\x71\x7c\x7c\xb0\x82\xff\x87\xfb\x87\xfb\x5f\xf0\xff\xb7\x78\x3d\x8b\x88\xfe\x3d\xc0\x83\xa0\x30\x40\x74\xca\x30\x18\xdc\xce\xb4\x13\x00\xb9\xed\x1c\xe0\x56\x98\xb6\xa1\xeb\xa2\x99\x29\x31\x8d\xb7\x89\xc2\x58\x91\xab\x7b\x55\x9a\x1a\xf0\x75\x28\xe6\xb2\x92\x53\x78\x27\x64\x95\x0b\xf5\x00\x50\x9d\xe3\x27\x7c\x2a\xcc\x87\x70\x24\x08\x8e\x46\x83\xc1\x15\x39\x18\x59\x96\xba\x59\x0e\x4e\xcb\x52\x54\xa6\xda\x05\xbf\xd3\x00\x3e\x95\xa2\x50\xb2\x69\x01\xb4\xc5\xf6\xab\xf0\x0e\xd0\x09\x27\xc9\x65\x63\xec\x52\x34\x46\xa0\x18\x1b\x9c\xc3\x8f\xbf\x03\x40\x4f\xf3\x75\xf3\x88\x39\x08\x5b\x4c\x94\x30\x7e\xb6\x91\x78\x7c\x2a\x37\x33\x6d\x99\xe3\xdd\xb9\x76\x72\x52\x82\xb7\xdb\x06\x54\x45\x2e\xc0\x5b\xe0\x43\x9c\xe0\x5e\x96\x2d\x98\x0d\xc6\x4e\xa2\x00\x2f\xc1\xa3\x86\x39\x3e\xfb\xf0\x43\xe2\xe9\x4c\xde\x2b\x21\x85\x7f\x44\x3c\x13\xdb\x81\x85\xf1\x41\x94\x8c\x90\x13\x73\x0f\x14\x91\x14\x81\xbd\x66\xe1\xc4\x5c\x57\x7a\x0e\xb4\x80\x0b\x2d\xf4\xb4\xb5\x84\xf2\x3c\xaa\x02\xaf\x2e\x4c\xc1\x12\x43\x7f\x00\xa2\x79\xf6\x4c\x9c\x05\xf2\x3d\xfb\xc5\xc5\x83\x9c\xd7\xa5\x1a\x0c\x3e\x7c\xf8\x80\x84\x0d\x60\xc0\xa9\x3a\x89\x0e\x2d\xf8\x25\xf8\xda\x6b\x90\x5f\xb8\x80\xb7\x81\x19\x3c\x25\x50\x6a\x15\xa8\x0f\x7d\x95\xc3\x53\x15\xac\x3f\x2b\x95\xb4\xe5\xf2\x51\x0e\x13\x55\x97\xc0\xd8\x8f\x53\xf6\x0c\x34\xc3\x58\xa2\xee\x99\x10\x21\x3c\xb9\x34\xb9\xbf\x20\x04\x3b\x43\x35\xaf\x9b\xe5\xb9\xb6\x9b\x69\x4e\x85\xb8\x81\xee\x9e\xe4\xc4\x64\x89\x0b\x91\x6d\xd9\x3c\xb1\x80\x5b\xc3\xf2\x80\xef\xb5\x1b\x8a\x06\xe6\x2f\x65\xa3\xc4\xa4\x34\xd9\x1d\xda\x97\x6c\x04\x84\x43\xf4\xb5\xa8\x14\x0c\x0d\x4a\x6e\x55\xd6\x82\x9f\x06\x3b\x03\x9d\x87\xcc\x8d\xec\x4e\x3d\x68\x07\xe2\xca\x48\x72\x3c\x13\xe8\x15\x91\xd6\x3a\x6f\x75\xf3\x93\x8e\x23\xbf\xfc\x02\x41\x50\x21\x46\x7f\x66\xa2\x3c\x7b\xfe\xfe\x77\x90\xde\xe6\xaf\x46\x09\xd3\x04\xdd\x27\xc4\x1e\x44\x60\xb9\xa2\xb7\xbf\xfc\xf2\xd4\x0
|
2019-03-20 00:27:44 +00:00
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
func chartsTraefik1030TgzBytes() ([]byte, error) {
|
2019-03-20 00:27:44 +00:00
|
|
|
return bindataRead(
|
2021-07-03 09:03:50 +00:00
|
|
|
_chartsTraefik1030Tgz,
|
|
|
|
"charts/traefik-10.3.0.tgz",
|
2019-03-20 00:27:44 +00:00
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
func chartsTraefik1030Tgz() (*asset, error) {
|
|
|
|
bytes, err := chartsTraefik1030TgzBytes()
|
2019-03-20 00:27:44 +00:00
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
info := bindataFileInfo{name: "charts/traefik-10.3.0.tgz", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)}
|
2020-12-23 01:28:19 +00:00
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
|
|
}
|
|
|
|
|
2021-11-12 05:03:15 +00:00
|
|
|
var _chartsTraefikCrd1030Tgz = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\xc6\x55\x54\x13\x0e\xa0\x80\x71\x1a\xa4\x1b\xe9\x92\x14\xa4\xbb\x9b\xd1\x8e\x6e\x10\x46\x8c\x46\x52\xba\xa5\x7b\x34\xa3\x11\x90\x8e\x3f\xdd\xdd\x29\xc2\xa4\xbb\x95\x1e\xb5\x7b\xce\x7d\xb9\xaf\xf7\x7b\xf8\xce\x8f\x3e\x1e\x0b\xe9\x7f\x43\xbd\x90\x82\x79\xc2\xda\xd3\x8e\xc4\x2c\x07\x72\xfd\xb3\x6d\xa7\xd2\xf6\x4c\x9b\xf2\x44\xc6\xb4\x7c\x80\xe9\xb6\x66\x10\x5f\xbb\xff\x66\xc5\xf4\x51\x53\x53\x22\x85\x94\x3c\xfd\x1b\x4b\xd7\xd6\x43\xb6\x2e\x31\x00\xa9\xa4\x1e\x0b\x23\x4d\x52\x72\x32\x1f\xf8\xdf\x09\x86\x29\x97\x2e\x6c\x38\x08\x5e\x67\xfc\x8b\x6d\xa7\x7d\x74\x74\x7f\xfc\x0f\x33\x7c\x15\xc9\x6d\x6e\xf6\x38\x24\xf4\x12\x71\xfb\x7c\xbc\x7f\x01\x4b\x5f\x12\x61\xbb\x7d\x39\xbe\x5b\x38\xf9\xb7\xd5\xdd\x1c\x03\xd6\x21\x89\xe3\xb2\xaf\x3a\xba\xd8\xd3\xd5\x26\xba\x1e\x7d\xb4\x9c\x36\xca\x25\xa0\x70\xa6\xbb\xbc\xa7\x16\xed\x77\xd3\xd2\xce\xdc\x0b\x09\xf4\xfc\x45\x89\xd8\x5b\x75\xdb\x7c\x9b\x09\xe8\x81\xd9\xdd\x0e\xf9\x4a\xbf\x71\x11\xf5\xfd\x13\x24\xf1\xb8\x9d\xed\x92\x08\xf6\x30\x7c\x95\xfe\x26\x25\x49\xd9\x1b\x4c\xf4\x77\x5a\x5b\x29\x6d\xa9\x59\x9b\x68\x9e\x13\x57\x80\x07\xea\x71\xb5\xfb\xc4\x7f\xc3\xea\x71\x9a\x49\x23\x18\x48\xd4\x28\x16\x72\x24\xf4\xfe\x54\xa9\x57\x75\xfb\x9d\x7a\x9a\xce\x23\xae\x47\xb7\xd5\x67\xd2\xa3\x5b\x81\x80\x87\xc1\x1b\x56\xc6\x23\x38\xe1\xe6\x01\x23\x7d\xdc\xa3\xbb\x99\xa2\xdc\x38\x26\x93\xdf\xd1\x46\xa1\x2d\x0f\x5d\x9e\xe8\x16\xb2\xe0\x11\xe2\x2e\xe6\x66\x8a\x87\x3e\xfa\xc6\x6a\x6c\x8b\x77\x16\x51\xba\x34\xfb\x22\x23\x2e\xf5\x6d\xef\x10\x21\xbd\x3d\xf6\x2b\x52\xea\xa1\xce\x78\x7f\xce\xef\x14\xde\x4e\xde\xaf\x68\xdf\xc1\x66\x50\x11\x94\xfa\xaf\x9f\x9a\xa7\xbb\x2f\xcb\x1b\x01\xf7\x84\x1c\x01\xee\x2f\xff\xba\x73\x5e\x1b\xf3\xd1\x3d\xfd\x7b\xe1\xcd\xcc\xc6\x47\x0d\x16\x61\x70\x5e\xb3\x2e\xf4\x0c\x16\xb5\x37\xc6\x4f\x26\x39\xdc\x6a\xe2\x18\x8b\x89\xdc\x5b\x99\xd7\x7c\x50\x09\x3d\x7c\x99\x83\x4b\xbe\x33\xc6\xb7\x69\x82\xb9\xfd\xac\x47\x84\x29\xfa\x5d\xdc\xf6\x05\xc9\x22\x1e\xe3\x1d\x72\xaf\xb9\xd4\xf7\x98\x8e\x60\x1f\x23\xbf\xc1\x43\x6e\xef\xf7\x7f\xd4\x20\x0a\x0a\x7a\xc4\xbc\xaf\x43\xe8\xe7\x97\x11\xdb\x22\x08\xc8\x0d\x16\x62\x32\xfa\x3f\x44\x6e\xb1\x9a\x8f\xef\xed\xae\x81\x62\x51\x8a\x39\x52\xf9\x2e\x5c\x68\x6e\x97\xe9\x0e\xce\xe2\xae\xf9\x41\xb5\x32\xef\x26\x1f\x9d\xcb\xfe\xc7\xbc\xf7\xad\xc4\xdc\xcd\x1e\xbb\xf6\x1e\xef\xfe\x89\xd5\x64\xe9\x8e\x0b\xdf\xe1\x9e\x7c\x24\xb2\xf6\x3b\xff\xda\x6f\xbd\x74\x85\xf8\xc9\x45\xd1\x50\xcf\xea\x60\xe6\x43\x1a\x65\xbb\xc2\xee\x9b\x12\x26\xdc\x9d\x44\x3d\x9e\xbc\xfc\x1c\xbc\x8f\x1b\x24\x7d\x83\x8a\xa4\x04\xf1\xe7\x4a\x10\x77\xfa\x3e\xa9\x28\x7e\x40\x6d\x72\x5b\x9c\xaa\x2d\x08\x07\x74\x25\x0d\xe8\x5e\xfd\x9e\x45\x17\xc3\x34\x15\x62\xec\x7f\x47\x59\xb8\x78\xf6\x81\x0b\x48\xee\xb3\xae\xe0\xc6\xef\xa7\x17\xc9\xe5\xd2\x17\x61\x98\x43\x5f\x2a\xfe\x42\x26\x83\x57\x43\x4f\xb0\x6d\x0c\x40\x02\x4f\x16\x9d\xef\x6e\x10\xe1\xa4\x53\x4a\xa4\xfd\xb6\xc2\x2b\x10\x58\x03\xce\xa1\xa2\x2d\xc0\x57\x2a\xb7\xb4\x94\x6b\xc7\x0a\x57\x17\x96\xb2\xf0\xee\x15\x31\x22\x80\x52\x83\x07\x30\x05\x94\x58\x40\x55\x2a\x81\x13\x29\x00\xfb\xf7\x92\x99\x9e\x57\xea\xfc\x76\xf2\xe8\xd2\x2c\x66\xc8\xa0\xf0\x04\xf0\x2f\xca\xfb\x08\x75\x50\xf1\x39\x2d\x3b\x4e\x13\xb5\x85\x64\xd8\xd1\x7c\x49\x06\xdb\x3c\x0d\x1d\xc0\xc0\x91\xf1\xbe\x81\xb0\x45\x94\x0e\x21\xf2\x70\x53\x2c\xb2\xcb\x51\xf2\xaf\xc9\xd8\x2c\x12\xf9\x9a\xe4\x25\x07\x15\x43\xa6\x50\x79\x77\x8e\x4a\x24\x90\xaf\x22\x39\x0d\x6d\x4a\x42\x54\x09\x4d\x5c\x65\x58\xfe\x2a\x29\x0a\x5d\x26\x94\x00\x6d\x33\x9f\x1b\x09\x2f\x78\xe4\x63\x09\x86\x34\x67\x1a\x5e\x0f\x8f\x07\xf6\x7e\x3c\xeb\x3f\x89\xfa\xe2\x4d\xbd\x1b\x14\xbd\x7c\x7f\x64\x01\x2b\x0f\x55\xae\x4f\xa3\x4a\x74\x95\x94\x60\x09\x49\xc9\xe9\x61\xaf\x7e\x60\x08\xab\x67\xbf\x45\xd9\x0b\xe1\xb8\x68\x51\x85\x8a\xa0\x88\xec\xd8\x1b\x1f\xb7\x3d\xf0\x5e\xb7\xa6\x76\xd1\x6e\x12\xc9\x46\xd0\xa5\x9b\xe1\xd3\x4a\x02\x52\x13\x67\xa2\xb7\xb1\xfe\xfd\x17\x80\x43\x60\xe4\x72\xc7\x1b\x6f\xe7\xbf\x6a\xed\x25\x2b\xaf\x2a\x6d\x2f\x4b\x83\x69\x88\x42\x28\x1a\xea\xb7\x50\x1f\xd5\x08\x51\xc0\x9e\xd8\xce\xfe\xe7\x94\x61\x59\xeb\xa7\x21\x02\xf4\xe5\x53\x86
|
2020-12-23 01:28:19 +00:00
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
func chartsTraefikCrd1030TgzBytes() ([]byte, error) {
|
2020-12-23 01:28:19 +00:00
|
|
|
return bindataRead(
|
2021-07-03 09:03:50 +00:00
|
|
|
_chartsTraefikCrd1030Tgz,
|
|
|
|
"charts/traefik-crd-10.3.0.tgz",
|
2020-12-23 01:28:19 +00:00
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
func chartsTraefikCrd1030Tgz() (*asset, error) {
|
|
|
|
bytes, err := chartsTraefikCrd1030TgzBytes()
|
2020-12-23 01:28:19 +00:00
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2021-07-03 09:03:50 +00:00
|
|
|
info := bindataFileInfo{name: "charts/traefik-crd-10.3.0.tgz", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)}
|
2019-03-20 00:27:44 +00:00
|
|
|
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, fmt.Errorf("Asset %s not found", name)
|
|
|
|
}
|
|
|
|
|
|
|
|
// MustAsset is like Asset but panics when Asset would return an error.
|
|
|
|
// It simplifies safe initialization of global variables.
|
|
|
|
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, fmt.Errorf("AssetInfo %s not found", name)
|
|
|
|
}
|
|
|
|
|
|
|
|
// AssetNames returns the names of the assets.
|
|
|
|
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){
|
2021-07-03 09:03:50 +00:00
|
|
|
"charts/traefik-10.3.0.tgz": chartsTraefik1030Tgz,
|
|
|
|
"charts/traefik-crd-10.3.0.tgz": chartsTraefikCrd1030Tgz,
|
2019-03-20 00:27:44 +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"}.
|
|
|
|
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, fmt.Errorf("Asset %s not found", name)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if node.Func != nil {
|
|
|
|
return nil, fmt.Errorf("Asset %s not found", name)
|
|
|
|
}
|
|
|
|
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{nil, map[string]*bintree{
|
|
|
|
"charts": &bintree{nil, map[string]*bintree{
|
2021-07-03 09:03:50 +00:00
|
|
|
"traefik-10.3.0.tgz": &bintree{chartsTraefik1030Tgz, map[string]*bintree{}},
|
|
|
|
"traefik-crd-10.3.0.tgz": &bintree{chartsTraefikCrd1030Tgz, map[string]*bintree{}},
|
2019-03-20 00:27:44 +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
|
|
|
|
}
|
|
|
|
err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
// 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, "/")...)...)
|
|
|
|
}
|