diff --git a/Makefile b/Makefile index 6b22609b2..6b3842b98 100644 --- a/Makefile +++ b/Makefile @@ -57,8 +57,8 @@ NEW_RESTIC_VER := 0.9.6 ### These variables should not need tweaking. ### -SRC_PKGS := cmd pkg -SRC_DIRS := $(SRC_PKGS) # directories which hold app source (not vendored) +SRC_PKGS := api apis cmd pkg +SRC_DIRS := $(SRC_PKGS) hack/gencrd # directories which hold app source (not vendored) DOCKER_PLATFORMS := linux/amd64 BIN_PLATFORMS := $(DOCKER_PLATFORMS) @@ -410,7 +410,7 @@ unit-tests: $(BUILD_DIRS) ARCH=$(ARCH) \ OS=$(OS) \ VERSION=$(VERSION) \ - ./hack/test.sh $(SRC_DIRS) \ + ./hack/test.sh $(SRC_PKGS) \ " .PHONY: ct diff --git a/api/crds/bindata.go b/api/crds/bindata.go index 413dfb284..3dce9f603 100644 --- a/api/crds/bindata.go +++ b/api/crds/bindata.go @@ -78,7 +78,7 @@ func (fi bindataFileInfo) Sys() interface{} { return nil } -var _installerStashAppscodeCom_stashmongodbsV1Yaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x55\x4d\x93\x1b\x45\x0c\xbd\xfb\x57\xa8\x8a\x43\x2e\x78\x5c\x4b\x2e\xd4\xdc\xc0\xe1\x90\x82\x00\x15\xa7\x72\x97\x7b\xe4\xb1\xd8\xfe\x42\x52\xbb\xb2\xfc\x7a\xaa\x7b\xc6\xbb\xb6\xd7\x6b\xc8\x16\xf4\xc9\xad\x8f\x37\xd2\x7b\x6a\x19\x33\x7f\x26\x51\x4e\xb1\x07\xcc\x4c\x5f\x8c\x62\xbd\x69\x77\xff\xbd\x76\x9c\x56\x87\xbb\xc5\x3d\xc7\xa1\x87\x75\x51\x4b\xe1\x23\x69\x2a\xe2\xe8\x1d\xed\x38\xb2\x71\x8a\x8b\x40\x86\x03\x1a\xf6\x0b\x00\x27\x84\xd5\xf8\x89\x03\xa9\x61\xc8\x3d\xc4\xe2\xfd\x02\xc0\xe3\x96\xbc\xd6\x18\x00\xcc\xb9\x07\x35\xd4\xfd\x02\x20\x62\xa0\xf9\x16\x52\x1c\xd3\xb0\xd5\x8e\xa3\x1a\x7a\x4f\xd2\x35\x7b\x87\x39\xab\x4b\x03\x75\x2e\x85\x85\x66\x72\x15\x67\x94\x54\x72\x0f\x37\x63\x27\xf8\xf9\xb3\x0e\x8d\xc6\x24\x7c\xbc\x2f\x1f\x6b\xa8\xbf\x8f\x79\xed\x3a\xb5\xbc\xa9\xee\x0f\xb5\xa8\x77\x3f\x36\xb3\x67\xb5\x9f\x9f\xb9\x7e\x61\xb5\xe6\xce\xbe\x08\xfa\x8b\x66\x9a\x47\x39\x8e\xc5\xa3\x9c\xfb\x16\x00\xea\x52\xa6\x1e\x7e\xad\x55\x66\x74\x34\x2c\x00\x0e\x93\x20\xad\xca\xe5\xcc\xcf\xe1\x0e\x7d\xde\xe3\xdd\x84\xe6\xf6\x14\x70\x6a\x02\x20\x65\x8a\x3f\xfc\xfe\xfe\xf3\xdb\xcd\x99\x19\x20\x4b\xca\x24\xf6\xd8\xef\x74\x4e\x14\x3f\xb1\x02\x0c\xa4\x4e\x38\x5b\x1b\x85\x37\x15\x70\x8a\x82\xa1\x4a\x4d\x0a\xb6\xa7\x63\x69\x34\xcc\x35\x40\xda\x81\xed\x59\x41\x28\x0b\x29\x45\x6b\xf2\x9f\x01\x43\x0d\xc2\x08\x69\xfb\x07\x39\xeb\x60\x43\x52\x61\x40\xf7\xa9\xf8\x01\x5c\x8a\x07\x12\x03\x21\x97\xc6\xc8\x7f\x3d\x62\x2b\x58\x6a\x1f\xf5\x68\x34\x33\xfc\x74\x38\x1a\x49\x44\x0f\x07\xf4\x85\xbe\x05\x8c\x03\x04\x7c\x00\xa1\xfa\x15\x28\xf1\x04\xaf\x85\x68\x07\x1f\x92\x10\x70\xdc\xa5\x1e\xf6\x66\x59\xfb\xd5\x6a\x64\x3b\x4e\xba\x4b\x21\x94\xc8\xf6\xb0\x72\x29\x9a\xf0\xb6\x58\x12\x5d\x0d\x74\x20\xbf\x52\x1e\x97\x28\x6e\xcf\x46\xce\x8a\xd0\x0a\x33\x2f\x5b\xe9\xd1\xda\x73\x09\xc3\x37\x32\xbf\x0d\x7d\x73\x56\xab\x3d\xe4\x36\xe0\xc2\x71\x3c\x71\xb4\x11\xbb\xa1\x40\x9d\x33\x60\x05\x9c\x53\xa7\x2e\x9e\x88\xae\xa6\xca\xce\xc7\x9f\x36\x9f\xe0\xf8\xe9\x26\xc6\x25\xfb\x8d\xf7\xa7\x44\x7d\x92\xa0\x12\xc6\x71\x47\x32\x89\xb8\x93\x14\x1a\x26\xc5\x21\x27\x8e\xd6\x2e\xce\x33\xc5\x4b\xfa\xb5\x6c\x03\x5b\xd5\xfd\xcf\x42\x6a\x55\xab\x0e\xd6\x18\x63\x32\xd8\x12\x94\x3c\xa0\xd1\xd0\xc1\xfb\x08\x6b\x0c\xe4\xd7\xa8\xf4\xbf\x0b\x50\x99\xd6\x65\x25\xf6\xdf\x49\x70\xba\xb9\x2e\x83\x27\xd6\x4e\x1c\xc7\xb5\xf3\x82\x5e\xa7\x0b\x61\x93\xc9\x55\xe9\x2a\x7b\xf3\x3b\xd9\x25\x99\x42\x60\x8e\x99\x87\x12\x76\xec\xe9\x0c\xf5\xfa\xab\xad\x67\x8b\xee\xbe\xe4\x4b\xeb\xad\x8c\x7a\x50\xc6\xab\xf6\x17\x59\xb9\xc9\x42\x3d\xbb\xe2\x7d\xdd\x4a\xbf\x1d\x48\x84\x07\x7a\x8e\x7e\x03\x99\x03\x8e\x57\x32\x6e\xf7\x20\x34\xb2\x9a\x3c\xbc\xa2\x8f\x9a\x9c\x93\xb2\xa5\x57\xa6\x1b\x8e\xaf\xc8\xab\xef\x82\x85\x86\xe7\xa9\xcb\xc7\x6e\xae\xba\x8e\xb5\x5e\x71\x1a\x7e\x95\x4c\x01\xbf\xac\x53\x74\x45\x84\xa2\xbb\xd2\xfb\x2e\x49\x40\xab\x7f\xa0\xf6\xf6\xbb\x17\x80\xeb\x96\x1d\x49\x2e\xbc\xaf\x16\x5f\x48\x2d\xc9\x57\xcb\xff\x5f\x8f\xf0\x75\x71\x96\xf3\x03\xbb\x30\xb6\x81\xbd\xb0\x9d\x53\x7b\xe1\x9c\x9b\xfc\xe7\x9d\xf2\xcc\xa8\x75\x2d\x0f\x3d\x98\x94\x29\xbd\x02\xd5\xe7\x32\x59\xfe\x0e\x00\x00\xff\xff\x13\x3a\x68\x12\xac\x09\x00\x00") +var _installerStashAppscodeCom_stashmongodbsV1Yaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x56\x4d\x93\x23\x35\x0c\xbd\xe7\x57\xa8\x8a\xc3\x5e\x48\xa7\x86\xa5\x28\xaa\x6f\x90\xe5\xb0\x05\x0b\xd4\x66\x6b\xef\x8a\x5b\xe9\x88\x71\xdb\x46\x92\xc3\x0c\xbf\x9e\xb2\xbb\x33\x93\xf4\x64\x02\x33\xc5\xfa\x14\xeb\xe3\x59\x7a\xcf\x72\x07\x13\x7f\x26\x51\x8e\xa1\x05\x4c\x4c\x77\x46\xa1\xec\xb4\xb9\xfd\x5e\x1b\x8e\xab\xc3\xcd\xe2\x96\x43\xd7\xc2\x3a\xab\xc5\xe1\x23\x69\xcc\xe2\xe8\x1d\xed\x38\xb0\x71\x0c\x8b\x81\x0c\x3b\x34\x6c\x17\x00\x4e\x08\x8b\xf1\x13\x0f\xa4\x86\x43\x6a\x21\x64\xef\x17\x00\x1e\xb7\xe4\xb5\xc4\x00\x60\x4a\x2d\xa8\xa1\xee\x17\x00\x01\x07\x9a\x76\x43\x0c\x7d\xec\xb6\xda\x70\x50\x43\xef\x49\x9a\x6a\x6f\x30\x25\x75\xb1\xa3\xc6\xc5\x61\xa1\x89\x5c\xc1\xe9\x25\xe6\xd4\xc2\xd5\xd8\x11\x7e\x3a\xd6\xa1\x51\x1f\x85\x8f\xfb\xe5\x43\x0d\xe5\xf7\x31\xaf\x6e\xc7\x96\x37\xc5\xfd\xa1\x14\xf5\xee\xc7\x6a\xf6\xac\xf6\xf3\x13\xd7\x2f\xac\x56\xdd\xc9\x67\x41\x3f\x6b\xa6\x7a\x94\x43\x9f\x3d\xca\xb9\x6f\x01\xa0\x2e\x26\x6a\xe1\xd7\x52\x65\x42\x47\xdd\x02\xe0\x30\x0a\x52\xab\x5c\x4e\xfc\x1c\x6e\xd0\xa7\x3d\xde\x8c\x68\x6e\x4f\x03\x8e\x4d\x00\xc4\x44\xe1\x87\xdf\xdf\x7f\x7e\xbb\x39\x33\x03\x24\x89\x89\xc4\x1e\xfa\x1d\xd7\x89\xe2\x27\x56\x80\x8e\xd4\x09\x27\xab\x57\xe1\x4d\x01\x1c\xa3\xa0\x2b\x52\x93\x82\xed\xe9\x58\x1a\x75\x53\x0d\x10\x77\x60\x7b\x56\x10\x4a\x42\x4a\xc1\xaa\xfc\x67\xc0\x50\x82\x30\x40\xdc\xfe\x41\xce\x1a\xd8\x90\x14\x18\xd0\x7d\xcc\xbe\x03\x17\xc3\x81\xc4\x40\xc8\xc5\x3e\xf0\xdf\x0f\xd8\x0a\x16\xeb\xa1\x1e\x8d\x26\x86\x1f\x17\x07\x23\x09\xe8\xe1\x80\x3e\xd3\xd7\x80\xa1\x83\x01\xef\x41\xa8\x9c\x02\x39\x9c\xe0\xd5\x10\x6d\xe0\x43\x14\x02\x0e\xbb\xd8\xc2\xde\x2c\x69\xbb\x5a\xf5\x6c\xc7\x9b\xee\xe2\x30\xe4\xc0\x76\xbf\x72\x31\x98\xf0\x36\x5b\x14\x5d\x75\x74\x20\xbf\x52\xee\x97\x28\x6e\xcf\x46\xce\xb2\xd0\x0a\x13\x2f\x6b\xe9\xc1\xea\xb8\x0c\xdd\x57\x32\xcd\x86\xbe\x39\xab\xd5\xee\x53\xbd\xe0\xc2\xa1\x3f\x71\xd4\x2b\x76\x45\x81\x72\xcf\x80\x15\x70\x4a\x1d\xbb\x78\x24\xba\x98\x0a\x3b\x1f\x7f\xda\x7c\x82\xe3\xd1\x55\x8c\x39\xfb\x95\xf7\xc7\x44\x7d\x94\xa0\x10\xc6\x61\x47\x32\x8a\xb8\x93\x38\x54\x4c\x0a\x5d\x8a\x1c\xac\x6e\x9c\x67\x0a\x73\xfa\x35\x6f\x07\xb6\xa2\xfb\x9f\x99\xd4\x8a\x56\x0d\xac\x31\x84\x68\xb0\x25\xc8\xa9\x43\xa3\xae\x81\xf7\x01\xd6\x38\x90\x5f\xa3\xd2\x17\x17\xa0\x30\xad\xcb\x42\xec\x7f\x93\xe0\xf4\xe5\x9a\x07\x8f\xac\x9d\x38\x8e\xcf\xce\x33\x7a\x9d\x3e\x08\x9b\x44\xae\x48\x57\xd8\x9b\xe6\x64\x17\x65\x0c\x81\x29\x66\xba\x94\xb0\x63\x4f\x67\xa8\x97\xa7\xb6\xac\x2d\xba\xdb\x9c\xe6\xd6\x6b\x19\x65\xa1\xf4\x17\xed\xcf\xb2\x72\x95\x85\xb2\x76\xd9\xfb\xf2\x2a\xfd\x76\x20\x11\xee\xe8\x29\xfa\x15\x64\x1e\xb0\xbf\x90\x71\xbd\x07\xa1\x9e\xd5\xe4\xfe\x15\x7d\x94\xe4\x14\x95\x2d\xbe\x32\xdd\xb0\x7f\x45\x5e\x99\x0b\x16\xea\x9e\xa6\x2e\x1f\xba\xb9\xe8\x3a\xd6\x7a\xc1\x69\xf8\x22\x99\x06\xbc\x5b\xc7\xe0\xb2\x08\x05\x77\xa1\xf7\x5d\x94\x01\xad\x7c\x40\xed\xed\x37\xcf\x00\x97\x57\xb6\x27\x99\x79\x5f\x2d\xbe\x90\x5a\x94\x17\xcb\xff\xff\x5f\xe1\xbf\x90\xad\xfc\x47\x89\xd9\xae\x12\xf3\xdd\xb7\x2f\x20\xe6\xb2\xe6\xcb\x69\x6e\x67\xc6\x3a\x07\x33\xdb\xb9\x62\x33\xe7\xc4\xdd\xcc\x7a\xd2\xc8\xbf\x3f\x62\x4f\x8c\x5a\xbe\x03\x5d\x0b\x26\x79\x04\x2e\x47\x94\xf9\x1c\x2d\xff\x04\x00\x00\xff\xff\xa9\x5f\x6f\xb5\x1d\x0a\x00\x00") func installerStashAppscodeCom_stashmongodbsV1YamlBytes() ([]byte, error) { return bindataRead( @@ -93,12 +93,12 @@ func installerStashAppscodeCom_stashmongodbsV1Yaml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "installer.stash.appscode.com_stashmongodbs.v1.yaml", size: 2476, mode: os.FileMode(420), modTime: time.Unix(1573722179, 0)} + info := bindataFileInfo{name: "installer.stash.appscode.com_stashmongodbs.v1.yaml", size: 2589, mode: os.FileMode(420), modTime: time.Unix(1573722179, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _installerStashAppscodeCom_stashmongodbsYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x56\x5f\x6f\x1c\x35\x10\x7f\xbf\x4f\x31\x12\x48\x05\xc4\xee\x11\x2a\x21\xd8\x17\x04\x29\x48\x15\x2d\xa0\xa6\xf4\x25\x2a\xd2\x9c\x3d\xbb\x67\xe2\xb5\xcd\xcc\xec\x91\xe4\xd3\x23\x7b\x77\x2f\xf7\x37\x34\x08\xfc\x74\xfe\xcd\xff\xdf\xcc\xf8\x16\x93\x7b\x47\x2c\x2e\x86\x06\x30\x39\xba\x55\x0a\xf9\x26\xf5\xcd\xd7\x52\xbb\xb8\xdc\x5c\xac\x48\xf1\x62\x71\xe3\x82\x6d\xe0\x72\x10\x8d\xfd\x1b\x92\x38\xb0\xa1\x17\xd4\xba\xe0\xd4\xc5\xb0\xe8\x49\xd1\xa2\x62\xb3\x00\x30\x4c\x98\xc1\xb7\xae\x27\x51\xec\x53\x03\x61\xf0\x7e\x01\xe0\x71\x45\x5e\xb2\x0e\x00\xa6\xd4\x80\x28\xca\x7a\x01\x10\xb0\xa7\xe9\xd6\xc7\xd0\x45\xbb\x92\xda\x05\x51\xf4\x9e\xb8\x2e\x78\x8d\x29\x89\x89\x96\x6a\x13\xfb\x85\x24\x32\xd9\x4f\xc7\x71\x48\x0d\x3c\xaa\x3b\xba\x9f\xc2\x1a\x54\xea\x22\xbb\xf9\x5e\x6d\x73\xc8\xbf\x67\xbb\x72\x1d\x4b\xbe\xca\xe2\xd7\x39\xa9\x17\xdf\x17\xd8\x3b\xd1\x9f\x8e\x44\xaf\x9c\x68\x11\x27\x3f\x30\xfa\x83\x62\x8a\x44\x5c\xe8\x06\x8f\xbc\x2f\x5b\x00\x24\x26\x21\xde\xd0\x6f\xe1\x26\xc4\xbf\xc2\x8f\x8e\xbc\x95\x06\x5a\xf4\x92\x33\x11\x13\x13\x35\xf0\x73\x2e\x22\xa1\x21\xbb\x00\xd8\xa0\x77\xb6\xb0\x3c\x96\x11\x13\x85\xef\x7e\x7d\xf9\xee\xf9\x95\x59\x53\x8f\x23\x98\x3d\xc7\x44\xac\xdb\x6a\x47\xe2\xb7\x2d\xdf\x62\x00\x96\xc4\xb0\x4b\xc5\x23\x3c\xcb\xae\x46\x1d\xb0\xb9\xc9\x24\xa0\x6b\x82\xcd\x88\x91\x05\x29\x61\x20\xb6\xa0\x6b\x27\xc0\x54\x6a\x08\x5a\x52\xda\x71\x0b\x59\x05\x03\xc4\xd5\x1f\x64\xb4\x86\xab\x5c\x27\x0b\xc8\x3a\x0e\xde\x82\x89\x61\x43\xac\xc0\x64\x62\x17\xdc\xfd\xd6\xb3\x80\xc6\x12\xd2\xa3\xd2\xc4\xec\x7c\x5c\x50\xe2\x80\x3e\x93\x30\xd0\xe7\x80\xc1\x42\x8f\x77\xc0\x94\x63\xc0\x10\x76\xbc\x15\x15\xa9\xe1\x75\x64\x02\x17\xda\xd8\xc0\x5a\x35\x49\xb3\x5c\x76\x4e\xe7\x21\x37\xb1\xef\x87\xe0\xf4\x6e\x69\x62\x50\x76\xab\x41\x23\xcb\xd2\xd2\x86\xfc\x52\x5c\x57\x21\x9b\xb5\x53\x32\x3a\x30\x2d\x31\xb9\xaa\x24\x1e\xb4\x6c\x4a\x6f\x3f\xe2\x69\x23\xe4\xd9\x4e\xa6\x7a\x97\xca\x50\xb3\x0b\xdd\x16\x2e\x43\x75\x96\xf7\x3c\x57\xe0\x04\x70\x32\x1b\xf3\x7f\xa0\x37\x43\x99\x95\x37\x3f\x5c\xbd\x85\x39\x68\x69\xc1\x3e\xe7\x85\xed\x07\x33\x79\x20\x3e\x13\xe5\x42\x4b\x3c\x36\xae\xe5\xd8\x17\x8f\x14\x6c\x8a\x2e\x68\xb9\x18\xef\x28\xec\x93\x2e\xc3\xaa\x77\x9a\x3b\xfd\xe7\x40\xa2\xb9\x3f\x35\x5c\x62\x08\x51\x61\x45\x30\x24\x8b\x4a\xb6\x86\x97\x01\x2e\xb1\x27\x7f\x89\x42\xff\x3b\xed\x99\x61\xa9\x32\xa5\xff\x4c\xfc\xee\x0b\x35\x9f\x53\xeb\x91\x4f\x79\x8e\xf6\x10\x80\x1e\x6f\x5f\x51\xe8\x74\xdd\xc0\x57\xcf\x0f\x64\x09\x35\x8f\x64\x03\xbf\x5f\x63\x75\xff\xfe\x93\xeb\x0a\xab\xfb\x2f\xaa\x6f\xde\x7f\x76\x3d\xfd\xf8\xf4\xdb\x8f\x0f\x6c\x4e\x26\x39\xc3\x63\x03\xb7\xf0\xfc\xda\x9d\x1c\x9a\xdd\x57\xe8\x2a\x91\xc9\xf3\x93\x9b\x38\xad\x68\x1b\x79\x54\x81\x49\x67\xda\x09\x68\x9d\xa7\x0f\xe0\x62\x85\xe6\x66\x48\x87\x6c\x9c\xd3\xce\x07\xb9\x3b\x81\x9e\xad\xf8\x6c\xd5\xf9\xb4\x83\xf7\xb9\x1b\xbf\x6c\x88\xd9\xd9\xa3\xae\x9c\xf5\xe9\x7a\xec\x8e\xb4\x1f\xcb\x9a\xa9\x73\xa2\x7c\xf7\xc4\xcc\xb3\x61\x8a\xe2\x34\xfe\x0b\x53\xc5\xee\x89\x36\x79\xfd\x1c\x93\x3d\x34\xab\xb6\xf9\x9f\x10\xcc\xf9\x1d\x89\x14\x3f\xb8\x11\x3d\xde\x5e\xc6\x60\x06\x66\x0a\xe6\xa8\xd2\x36\x72\x8f\x9a\xff\x87\xf5\xf9\x97\x27\x5d\xe6\x47\xbb\x23\x3e\x5a\xb3\x27\x37\x96\x49\x34\xf2\x93\x5a\xfb\xdf\x0d\xe4\x29\xfa\xab\x69\x45\xf6\xa0\x32\x7e\x7b\xc8\x3e\x81\x7b\xa2\xa9\xa4\xc7\x5f\x81\x03\x68\x33\x7f\xb5\x6d\x2e\xd0\xa7\x35\x5e\x3c\x60\xa5\xd6\x6a\xfa\xa6\xda\x11\x03\x94\xaf\x0c\xdb\x80\xf2\x30\x46\xcb\x71\xf3\x9e\x8c\xc8\xdf\x01\x00\x00\xff\xff\x1f\x70\x3b\x99\x0d\x0a\x00\x00") +var _installerStashAppscodeCom_stashmongodbsYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x56\xdf\x6f\x1c\x45\x0c\x7e\xbf\xbf\xc2\x12\x48\x05\xc4\xde\x11\x82\x2a\xd8\x17\x04\x29\x48\x15\x2d\xa0\xa6\xf4\x25\x2a\x92\x6f\xd6\xb7\x67\x32\x3b\x33\xd8\xde\x6b\x92\xbf\x1e\xcd\xec\xde\xe5\x7e\x86\x04\xd1\x79\xba\xf9\xec\xf1\xd8\xdf\x67\xcf\x2d\x26\x7e\x47\xa2\x1c\x43\x0d\x98\x98\x6e\x8c\x42\xde\xe9\xf4\xfa\x5b\x9d\x72\x9c\xad\xce\xe6\x64\x78\x36\xb9\xe6\xd0\xd4\x70\xd1\xab\xc5\xee\x0d\x69\xec\xc5\xd1\x0b\x5a\x70\x60\xe3\x18\x26\x1d\x19\x36\x68\x58\x4f\x00\x9c\x10\x66\xf0\x2d\x77\xa4\x86\x5d\xaa\x21\xf4\xde\x4f\x00\x3c\xce\xc9\x6b\xf6\x01\xc0\x94\x6a\x50\x43\x5d\x4e\x00\x02\x76\x34\xee\xba\x18\xda\xd8\xcc\x75\xca\x41\x0d\xbd\x27\x99\x16\x7c\x8a\x29\xa9\x8b\x0d\x4d\x5d\xec\x26\x9a\xc8\xe5\x38\xad\xc4\x3e\xd5\xf0\xa0\xef\x10\x7e\xbc\xd6\xa1\x51\x1b\x85\xd7\xfb\x6a\x93\x43\xfe\xbd\x3e\x57\xb6\x43\xc9\x97\xd9\xfc\x3a\x27\xf5\xe2\xc7\x02\x7b\x56\xfb\xe5\xc0\xf4\x8a\xd5\x8a\x39\xf9\x5e\xd0\xef\x15\x53\x2c\xca\xa1\xed\x3d\xca\xae\x6d\x02\x90\x84\x94\x64\x45\x7f\x84\xeb\x10\x3f\x84\x9f\x99\x7c\xa3\x35\x2c\xd0\x6b\xce\x44\x5d\x4c\x54\xc3\xaf\xb9\x88\x84\x8e\x9a\x09\xc0\x0a\x3d\x37\x85\xe5\xa1\x8c\x98\x28\xfc\xf0\xfb\xcb\x77\xe7\x97\x6e\x49\x1d\x0e\x60\x8e\x1c\x13\x89\x6d\xaa\x1d\x88\xdf\x48\xbe\xc1\x00\x1a\x52\x27\x9c\x4a\x44\x78\x96\x43\x0d\x3e\xd0\x64\x91\x49\xc1\x96\x04\xab\x01\xa3\x06\xb4\x5c\x03\x71\x01\xb6\x64\x05\xa1\x52\x43\xb0\x92\xd2\x56\x58\xc8\x2e\x18\x20\xce\xff\x22\x67\x53\xb8\xcc\x75\x8a\x82\x2e\x63\xef\x1b\x70\x31\xac\x48\x0c\x84\x5c\x6c\x03\xdf\x6d\x22\x2b\x58\x2c\x57\x7a\x34\x1a\x99\x5d\x2f\x0e\x46\x12\xd0\x67\x12\x7a\xfa\x12\x30\x34\xd0\xe1\x2d\x08\xe5\x3b\xa0\x0f\x5b\xd1\x8a\x8b\x4e\xe1\x75\x14\x02\x0e\x8b\x58\xc3\xd2\x2c\x69\x3d\x9b\xb5\x6c\xeb\x26\x77\xb1\xeb\xfa\xc0\x76\x3b\x73\x31\x98\xf0\xbc\xb7\x28\x3a\x6b\x68\x45\x7e\xa6\xdc\x56\x28\x6e\xc9\x46\xce\x7a\xa1\x19\x26\xae\x4a\xe2\xc1\xca\xa4\x74\xcd\x27\x32\x4e\x84\x3e\xdb\xca\xd4\x6e\x53\x69\x6a\xe1\xd0\x6e\xe0\xd2\x54\x27\x79\xcf\x7d\x05\xac\x80\xe3\xb1\x21\xff\x7b\x7a\x33\x94\x59\x79\xf3\xd3\xe5\x5b\x58\x5f\x5a\x24\xd8\xe5\xbc\xb0\x7d\x7f\x4c\xef\x89\xcf\x44\x71\x58\x90\x0c\xc2\x2d\x24\x76\x25\x22\x85\x26\x45\x0e\x56\x36\xce\x33\x85\x5d\xd2\xb5\x9f\x77\x6c\x59\xe9\xbf\x7b\x52\xcb\xfa\x4c\xe1\x02\x43\x88\x06\x73\x82\x3e\x35\x68\xd4\x4c\xe1\x65\x80\x0b\xec\xc8\x5f\xa0\xd2\x47\xa7\x3d\x33\xac\x55\xa6\xf4\xdf\x89\xdf\x7e\xa1\xd6\xeb\xd8\x78\xe4\x55\x9e\xa3\x1d\x04\xa0\xc3\x9b\x57\x14\x5a\x5b\xd6\xf0\xfc\x7c\xcf\x96\xd0\x72\x4b\xd6\xf0\xe7\x15\x56\x77\xef\x3f\xbb\xaa\xb0\xba\xfb\xaa\xfa\xee\xfd\x17\x57\xe3\x8f\xcf\xbf\xff\x74\xef\xcc\xd1\x24\xd7\xf0\x20\xe0\x06\x5e\xbf\x76\x47\x9b\x66\xfb\x15\xba\x4c\xe4\x72\xff\x64\x11\xc7\x11\x5d\x44\x19\x5c\x60\xf4\x19\x67\x02\x16\xec\xe9\x11\x5c\xcc\xd1\x5d\xf7\x69\x9f\x8d\x53\xde\x79\xa1\xb4\x47\xd0\x93\x15\x9f\xac\x3a\xaf\x45\xef\x7d\x56\xe3\xb7\x15\x89\x70\x73\xa0\xca\xc9\x98\xdc\x61\x7b\xe0\xfd\x50\xd6\x42\x2d\xab\xc9\xed\x13\x33\xcf\x07\x53\x54\xb6\xf8\x1f\x8e\x1a\xb6\x4f\x3c\x93\xc7\x8f\x85\x9a\xfd\x63\xd5\x26\xff\x23\x86\x75\x7e\x07\x26\xc3\x47\x0b\xd1\xe1\xcd\x45\x0c\xae\x17\xa1\xe0\x0e\x2a\x5d\x44\xe9\xd0\xf2\xff\xb0\x9d\x7f\x7d\x34\x64\x7e\xb4\x5b\x92\x83\x31\x7b\xb2\xb0\x42\x6a\x51\x9e\x24\xed\xff\xd9\x90\x1f\x90\x2d\x7f\xd8\xc4\xde\x1e\x20\xe1\xf9\x37\x8f\x24\xe1\x98\x9e\xd5\x38\x73\x3b\x50\xe9\xe7\x1d\x64\x57\x91\x1d\xd3\xc8\xd1\x0e\xb6\x95\xf8\xc3\xcf\xcd\x1e\xb4\x5a\x7f\x1e\xae\xce\xd0\xa7\x25\x9e\xdd\x63\x85\xd4\x6a\xfc\x78\xdb\x32\x03\x94\xcf\x99\xa6\x06\x93\x7e\xc8\x22\xe7\x93\x07\x72\x40\xfe\x09\x00\x00\xff\xff\x0e\xa0\x5f\xfb\x76\x0a\x00\x00") func installerStashAppscodeCom_stashmongodbsYamlBytes() ([]byte, error) { return bindataRead( @@ -113,7 +113,7 @@ func installerStashAppscodeCom_stashmongodbsYaml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "installer.stash.appscode.com_stashmongodbs.yaml", size: 2573, mode: os.FileMode(420), modTime: time.Unix(1573722179, 0)} + info := bindataFileInfo{name: "installer.stash.appscode.com_stashmongodbs.yaml", size: 2678, mode: os.FileMode(420), modTime: time.Unix(1573722179, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -215,8 +215,8 @@ type bintree struct { } var _bintree = &bintree{nil, map[string]*bintree{ - "installer.stash.appscode.com_stashmongodbs.v1.yaml": &bintree{installerStashAppscodeCom_stashmongodbsV1Yaml, map[string]*bintree{}}, - "installer.stash.appscode.com_stashmongodbs.yaml": &bintree{installerStashAppscodeCom_stashmongodbsYaml, map[string]*bintree{}}, + "installer.stash.appscode.com_stashmongodbs.v1.yaml": {installerStashAppscodeCom_stashmongodbsV1Yaml, map[string]*bintree{}}, + "installer.stash.appscode.com_stashmongodbs.yaml": {installerStashAppscodeCom_stashmongodbsYaml, map[string]*bintree{}}, }} // RestoreAsset restores an asset under the given directory diff --git a/api/crds/installer.stash.appscode.com_stashmongodbs.v1.yaml b/api/crds/installer.stash.appscode.com_stashmongodbs.v1.yaml index 8bd401f04..eca0a2511 100644 --- a/api/crds/installer.stash.appscode.com_stashmongodbs.v1.yaml +++ b/api/crds/installer.stash.appscode.com_stashmongodbs.v1.yaml @@ -66,11 +66,15 @@ spec: args: type: string type: object + waitTimeout: + format: int64 + type: integer required: - backup - image - maxConcurrency - restore + - waitTimeout type: object type: object served: true diff --git a/api/crds/installer.stash.appscode.com_stashmongodbs.yaml b/api/crds/installer.stash.appscode.com_stashmongodbs.yaml index c2d042c17..e6b6c9fa5 100644 --- a/api/crds/installer.stash.appscode.com_stashmongodbs.yaml +++ b/api/crds/installer.stash.appscode.com_stashmongodbs.yaml @@ -70,11 +70,15 @@ spec: args: type: string type: object + waitTimeout: + format: int64 + type: integer required: - backup - image - maxConcurrency - restore + - waitTimeout type: object type: object version: v1alpha1 diff --git a/api/openapi-spec/swagger.json b/api/openapi-spec/swagger.json index 4de94354d..846b1a578 100644 --- a/api/openapi-spec/swagger.json +++ b/api/openapi-spec/swagger.json @@ -965,7 +965,8 @@ "image", "backup", "restore", - "maxConcurrency" + "maxConcurrency", + "waitTimeout" ], "properties": { "backup": { @@ -986,6 +987,10 @@ }, "restore": { "$ref": "#/definitions/dev.appscode.stash.mongodb.apis.installer.v1alpha1.MongoDBRestore" + }, + "waitTimeout": { + "type": "integer", + "format": "int64" } } }, diff --git a/apis/installer/v1alpha1/generated.pb.go b/apis/installer/v1alpha1/generated.pb.go index 306dddfea..b2a943235 100644 --- a/apis/installer/v1alpha1/generated.pb.go +++ b/apis/installer/v1alpha1/generated.pb.go @@ -21,15 +21,13 @@ package v1alpha1 import ( fmt "fmt" - io "io" - - proto "github.com/gogo/protobuf/proto" - math "math" math_bits "math/bits" reflect "reflect" strings "strings" + + proto "github.com/gogo/protobuf/proto" ) // Reference imports to suppress errors if they are not otherwise used. @@ -225,49 +223,50 @@ func init() { } var fileDescriptor_1fbafe8100657908 = []byte{ - // 658 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x53, 0x4f, 0x6f, 0xd3, 0x3c, - 0x18, 0x6f, 0xd6, 0x76, 0xeb, 0xeb, 0x76, 0x7d, 0x2b, 0xeb, 0xd5, 0xab, 0x68, 0x12, 0x59, 0xd5, - 0xd3, 0x0e, 0xe0, 0xd0, 0x08, 0xa1, 0x1d, 0x10, 0x62, 0x61, 0x42, 0x9a, 0xc4, 0x98, 0xe4, 0x71, - 0x42, 0x1c, 0x70, 0xd3, 0xa7, 0x69, 0x68, 0x13, 0x47, 0xb6, 0x5b, 0xd1, 0x1b, 0x77, 0x0e, 0xf0, - 0xb1, 0x76, 0xdc, 0x8d, 0x9d, 0x26, 0x56, 0xbe, 0x08, 0x8a, 0xe3, 0x76, 0xe9, 0x2a, 0xc4, 0xd8, - 0x6e, 0xf1, 0xe3, 0xdf, 0x9f, 0xe7, 0xe7, 0x3c, 0x0f, 0xf2, 0xa5, 0x62, 0x72, 0x48, 0x58, 0x9a, - 0xca, 0x80, 0xf7, 0x81, 0xf4, 0x61, 0xea, 0xc6, 0x3c, 0x09, 0x79, 0xbf, 0xe7, 0xb2, 0x34, 0x92, - 0x6e, 0x94, 0x48, 0xc5, 0xc6, 0x63, 0x10, 0xee, 0xb4, 0xcb, 0xc6, 0xe9, 0x90, 0x75, 0xdd, 0x10, - 0x12, 0x10, 0x4c, 0x41, 0x9f, 0xa4, 0x82, 0x2b, 0x8e, 0xbd, 0x75, 0x0d, 0x62, 0x34, 0x48, 0xa6, - 0x41, 0x96, 0x1a, 0x64, 0xa1, 0xb1, 0xf3, 0x28, 0x8c, 0xd4, 0x70, 0xd2, 0x23, 0x01, 0x8f, 0xdd, - 0x90, 0x87, 0xdc, 0xd5, 0x52, 0xbd, 0xc9, 0x40, 0x9f, 0xf4, 0x41, 0x7f, 0xe5, 0x16, 0x3b, 0x4f, - 0x46, 0xfb, 0x92, 0x44, 0x3c, 0x6b, 0x29, 0x66, 0xc1, 0x30, 0x4a, 0x40, 0xcc, 0xdc, 0x74, 0x14, - 0xe6, 0x3d, 0xc6, 0xa0, 0x98, 0x3b, 0x5d, 0x6b, 0x6c, 0xc7, 0xfd, 0x1d, 0x4b, 0x4c, 0x12, 0x15, - 0xc5, 0xb0, 0x46, 0x78, 0xfa, 0x27, 0x82, 0x0c, 0x86, 0x10, 0xb3, 0x9b, 0xbc, 0xce, 0x17, 0x0b, - 0xd5, 0x8e, 0x62, 0x16, 0x02, 0x85, 0x01, 0x7e, 0x88, 0x6a, 0x02, 0xc2, 0x48, 0x2a, 0x31, 0xb3, - 0xad, 0xb6, 0xb5, 0xf7, 0x8f, 0xdf, 0x3a, 0xbb, 0xdc, 0x2d, 0xcd, 0x2f, 0x77, 0x6b, 0xd4, 0xd4, - 0xe9, 0x12, 0x81, 0x3d, 0x84, 0x04, 0xa4, 0x5c, 0x46, 0x8a, 0x8b, 0x99, 0xbd, 0xa1, 0xf1, 0xd8, - 0xe0, 0x11, 0x5d, 0xde, 0xd0, 0x02, 0x0a, 0x3f, 0x40, 0x65, 0xc5, 0x42, 0xbb, 0xac, 0xc1, 0x75, - 0x03, 0x2e, 0xbf, 0x65, 0x21, 0xcd, 0xea, 0x9d, 0x2e, 0xda, 0x3e, 0xce, 0x9e, 0xff, 0xd0, 0xf7, - 0x59, 0x30, 0x9a, 0xa4, 0xb8, 0x8d, 0x2a, 0x4c, 0x84, 0xd2, 0x74, 0xd3, 0x30, 0x84, 0xca, 0x81, - 0x08, 0x25, 0xd5, 0x37, 0x1d, 0x0f, 0x35, 0x0d, 0x85, 0x82, 0x54, 0x5c, 0xc0, 0x2d, 0x38, 0x17, - 0x16, 0x6a, 0x9c, 0x66, 0x7f, 0xde, 0x30, 0xf1, 0x07, 0x54, 0xcb, 0xfe, 0x44, 0x9f, 0x29, 0xa6, - 0x69, 0x75, 0xef, 0x31, 0xc9, 0x1f, 0x94, 0x14, 0x1f, 0x94, 0xa4, 0xa3, 0x30, 0x9f, 0x8b, 0x0c, - 0x4d, 0xa6, 0x5d, 0x72, 0xd2, 0xfb, 0x08, 0x81, 0x3a, 0x06, 0xc5, 0xae, 0xa3, 0x5f, 0xd7, 0xe8, - 0x52, 0x15, 0x0f, 0x50, 0x45, 0xa6, 0x10, 0xe8, 0x67, 0xaa, 0x7b, 0x87, 0xe4, 0xef, 0x07, 0x8f, - 0x14, 0x3b, 0x3e, 0x4d, 0x21, 0xb8, 0x8e, 0x96, 0x9d, 0xa8, 0xd6, 0xef, 0x7c, 0xb7, 0x50, 0xab, - 0x08, 0x7c, 0x1d, 0x49, 0x85, 0xdf, 0xaf, 0xc5, 0x23, 0xb7, 0x8b, 0x97, 0xb1, 0x75, 0xb8, 0xe5, - 0x1c, 0x2c, 0x2a, 0x85, 0x68, 0x80, 0xaa, 0x91, 0x82, 0x58, 0xda, 0x1b, 0xed, 0xf2, 0x5e, 0xdd, - 0x7b, 0x71, 0xdf, 0x6c, 0xfe, 0xb6, 0x31, 0xab, 0x1e, 0x65, 0xb2, 0x34, 0x57, 0xef, 0x7c, 0xad, - 0xac, 0x26, 0xcb, 0x42, 0xe3, 0x7d, 0xd4, 0x48, 0x58, 0x0c, 0x27, 0x53, 0x10, 0x22, 0xea, 0x83, - 0xf9, 0xe7, 0xff, 0x19, 0x81, 0xc6, 0x9b, 0xc2, 0x1d, 0x5d, 0x41, 0xe2, 0x43, 0xd4, 0x1a, 0x4c, - 0xc6, 0xe3, 0x15, 0x76, 0x3e, 0xc3, 0xb6, 0x61, 0xb7, 0x5e, 0xdd, 0xb8, 0xa7, 0x6b, 0x0c, 0xcc, - 0x50, 0x35, 0xca, 0xb6, 0x47, 0x4f, 0x74, 0xdd, 0x7b, 0x76, 0x97, 0xec, 0x8b, 0xf5, 0x2b, 0xe4, - 0xd6, 0x95, 0x5c, 0x19, 0x47, 0x68, 0xb3, 0xa7, 0x97, 0xc1, 0xae, 0x68, 0x8f, 0x83, 0xbb, 0x78, - 0xac, 0x6c, 0x95, 0xdf, 0x34, 0x46, 0x9b, 0xf9, 0x99, 0x1a, 0x03, 0x1c, 0xa3, 0x2d, 0x91, 0x2f, - 0x91, 0x5d, 0xd5, 0x5e, 0xfe, 0x3d, 0xbc, 0xcc, 0x3a, 0xfa, 0xff, 0x1a, 0xb3, 0x2d, 0x53, 0xa0, - 0x0b, 0x0f, 0xfc, 0x1c, 0x35, 0x63, 0xf6, 0xe9, 0x25, 0x4f, 0x82, 0x89, 0x10, 0x90, 0x04, 0x33, - 0x7b, 0xb3, 0x6d, 0xed, 0x55, 0xfd, 0xff, 0x0d, 0xa3, 0x79, 0xbc, 0x72, 0x4b, 0x6f, 0xa0, 0x7d, - 0x72, 0x76, 0xe5, 0x94, 0xce, 0xaf, 0x9c, 0xd2, 0xc5, 0x95, 0x53, 0xfa, 0x3c, 0x77, 0xac, 0xb3, - 0xb9, 0x63, 0x9d, 0xcf, 0x1d, 0xeb, 0x62, 0xee, 0x58, 0x3f, 0xe6, 0x8e, 0xf5, 0xed, 0xa7, 0x53, - 0x7a, 0x57, 0x5b, 0x34, 0xf6, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x08, 0x28, 0x4a, 0x39, 0x32, 0x06, - 0x00, 0x00, + // 687 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x53, 0xcf, 0x6f, 0xd3, 0x3a, + 0x1c, 0x6f, 0xd6, 0x76, 0xeb, 0x73, 0xbb, 0xbe, 0xca, 0xef, 0xe9, 0x29, 0x9a, 0xf4, 0xb2, 0xaa, + 0xa7, 0x1e, 0xc0, 0xa1, 0x15, 0xa0, 0x1d, 0x10, 0x62, 0x61, 0x42, 0x9a, 0xc4, 0x98, 0xe4, 0x4d, + 0x42, 0x42, 0x1c, 0x70, 0x53, 0x37, 0x35, 0x6d, 0xe2, 0xc8, 0x76, 0x0a, 0xbd, 0x71, 0xe7, 0xc2, + 0x5f, 0x85, 0x76, 0xdc, 0x8d, 0x9d, 0x26, 0x56, 0xfe, 0x11, 0x14, 0xc7, 0x6d, 0xd3, 0x55, 0x88, + 0xb1, 0xdd, 0xe2, 0xef, 0xf7, 0xf3, 0xc3, 0x1f, 0xe7, 0xfb, 0x05, 0x9e, 0x54, 0x44, 0x0e, 0x11, + 0x89, 0x63, 0xe9, 0xf3, 0x3e, 0x45, 0x7d, 0x3a, 0x71, 0x43, 0x1e, 0x05, 0xbc, 0xdf, 0x73, 0x49, + 0xcc, 0xa4, 0xcb, 0x22, 0xa9, 0xc8, 0x78, 0x4c, 0x85, 0x3b, 0xe9, 0x90, 0x71, 0x3c, 0x24, 0x1d, + 0x37, 0xa0, 0x11, 0x15, 0x44, 0xd1, 0x3e, 0x8a, 0x05, 0x57, 0x1c, 0x76, 0xd7, 0x35, 0x90, 0xd1, + 0x40, 0xa9, 0x06, 0x5a, 0x68, 0xa0, 0xb9, 0xc6, 0xce, 0xfd, 0x80, 0xa9, 0x61, 0xd2, 0x43, 0x3e, + 0x0f, 0xdd, 0x80, 0x07, 0xdc, 0xd5, 0x52, 0xbd, 0x64, 0xa0, 0x4f, 0xfa, 0xa0, 0xbf, 0x32, 0x8b, + 0x9d, 0x87, 0xa3, 0x3d, 0x89, 0x18, 0x4f, 0xaf, 0x14, 0x12, 0x7f, 0xc8, 0x22, 0x2a, 0xa6, 0x6e, + 0x3c, 0x0a, 0xb2, 0x3b, 0x86, 0x54, 0x11, 0x77, 0xb2, 0x76, 0xb1, 0x1d, 0xf7, 0x57, 0x2c, 0x91, + 0x44, 0x8a, 0x85, 0x74, 0x8d, 0xf0, 0xf8, 0x77, 0x04, 0xe9, 0x0f, 0x69, 0x48, 0xae, 0xf3, 0x5a, + 0x9f, 0x2d, 0x50, 0x39, 0x0c, 0x49, 0x40, 0x31, 0x1d, 0xc0, 0x7b, 0xa0, 0x22, 0x68, 0xc0, 0xa4, + 0x12, 0x53, 0xdb, 0x6a, 0x5a, 0xed, 0xbf, 0xbc, 0xc6, 0xd9, 0xe5, 0x6e, 0x61, 0x76, 0xb9, 0x5b, + 0xc1, 0xa6, 0x8e, 0x17, 0x08, 0xd8, 0x05, 0x40, 0xd0, 0x98, 0x4b, 0xa6, 0xb8, 0x98, 0xda, 0x1b, + 0x1a, 0x0f, 0x0d, 0x1e, 0xe0, 0x45, 0x07, 0xe7, 0x50, 0xf0, 0x7f, 0x50, 0x54, 0x24, 0xb0, 0x8b, + 0x1a, 0x5c, 0x35, 0xe0, 0xe2, 0x29, 0x09, 0x70, 0x5a, 0x6f, 0x75, 0xc0, 0xf6, 0x51, 0xfa, 0xfc, + 0x07, 0x9e, 0x47, 0xfc, 0x51, 0x12, 0xc3, 0x26, 0x28, 0x11, 0x11, 0x48, 0x73, 0x9b, 0x9a, 0x21, + 0x94, 0xf6, 0x45, 0x20, 0xb1, 0xee, 0xb4, 0xba, 0xa0, 0x6e, 0x28, 0x98, 0x4a, 0xc5, 0x05, 0xbd, + 0x01, 0xe7, 0xc2, 0x02, 0xb5, 0x93, 0xf4, 0xcf, 0x1b, 0x26, 0x7c, 0x07, 0x2a, 0xe9, 0x9f, 0xe8, + 0x13, 0x45, 0x34, 0xad, 0xda, 0x7d, 0x80, 0xb2, 0x07, 0x45, 0xf9, 0x07, 0x45, 0xf1, 0x28, 0xc8, + 0xe6, 0x22, 0x45, 0xa3, 0x49, 0x07, 0x1d, 0xf7, 0xde, 0x53, 0x5f, 0x1d, 0x51, 0x45, 0x96, 0xd1, + 0x97, 0x35, 0xbc, 0x50, 0x85, 0x03, 0x50, 0x92, 0x31, 0xf5, 0xf5, 0x33, 0x55, 0xbb, 0x07, 0xe8, + 0xcf, 0x07, 0x0f, 0xe5, 0x6f, 0x7c, 0x12, 0x53, 0x7f, 0x19, 0x2d, 0x3d, 0x61, 0xad, 0xdf, 0xfa, + 0x66, 0x81, 0x46, 0x1e, 0xf8, 0x92, 0x49, 0x05, 0xdf, 0xae, 0xc5, 0x43, 0x37, 0x8b, 0x97, 0xb2, + 0x75, 0xb8, 0xc5, 0x1c, 0xcc, 0x2b, 0xb9, 0x68, 0x14, 0x94, 0x99, 0xa2, 0xa1, 0xb4, 0x37, 0x9a, + 0xc5, 0x76, 0xb5, 0xfb, 0xec, 0xae, 0xd9, 0xbc, 0x6d, 0x63, 0x56, 0x3e, 0x4c, 0x65, 0x71, 0xa6, + 0xde, 0xfa, 0x5a, 0x5a, 0x4d, 0x96, 0x86, 0x86, 0x7b, 0xa0, 0x16, 0x91, 0x90, 0x1e, 0x4f, 0xa8, + 0x10, 0xac, 0x4f, 0xcd, 0x3f, 0xff, 0xd7, 0x08, 0xd4, 0x5e, 0xe5, 0x7a, 0x78, 0x05, 0x09, 0x0f, + 0x40, 0x63, 0x90, 0x8c, 0xc7, 0x2b, 0xec, 0x6c, 0x86, 0x6d, 0xc3, 0x6e, 0xbc, 0xb8, 0xd6, 0xc7, + 0x6b, 0x0c, 0x48, 0x40, 0x99, 0xa5, 0xdb, 0xa3, 0x27, 0xba, 0xda, 0x7d, 0x72, 0x9b, 0xec, 0xf3, + 0xf5, 0xcb, 0xe5, 0xd6, 0x95, 0x4c, 0x19, 0x32, 0xb0, 0xd9, 0xd3, 0xcb, 0x60, 0x97, 0xb4, 0xc7, + 0xfe, 0x6d, 0x3c, 0x56, 0xb6, 0xca, 0xab, 0x1b, 0xa3, 0xcd, 0xec, 0x8c, 0x8d, 0x01, 0x0c, 0xc1, + 0x96, 0xc8, 0x96, 0xc8, 0x2e, 0x6b, 0x2f, 0xef, 0x0e, 0x5e, 0x66, 0x1d, 0xbd, 0xbf, 0x8d, 0xd9, + 0x96, 0x29, 0xe0, 0xb9, 0x07, 0x7c, 0x0a, 0xea, 0x21, 0xf9, 0xf8, 0x9c, 0x47, 0x7e, 0x22, 0x04, + 0x8d, 0xfc, 0xa9, 0xbd, 0xd9, 0xb4, 0xda, 0x65, 0xef, 0x3f, 0xc3, 0xa8, 0x1f, 0xad, 0x74, 0xf1, + 0x35, 0x34, 0x7c, 0x04, 0xaa, 0x1f, 0x08, 0x53, 0xa7, 0x2c, 0xa4, 0x3c, 0x51, 0xf6, 0x56, 0xd3, + 0x6a, 0x17, 0xbd, 0x7f, 0x0c, 0xb9, 0xfa, 0x7a, 0xd9, 0xc2, 0x79, 0x9c, 0x87, 0xce, 0xae, 0x9c, + 0xc2, 0xf9, 0x95, 0x53, 0xb8, 0xb8, 0x72, 0x0a, 0x9f, 0x66, 0x8e, 0x75, 0x36, 0x73, 0xac, 0xf3, + 0x99, 0x63, 0x5d, 0xcc, 0x1c, 0xeb, 0xfb, 0xcc, 0xb1, 0xbe, 0xfc, 0x70, 0x0a, 0x6f, 0x2a, 0xf3, + 0x3c, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x1a, 0x4a, 0xb7, 0xb0, 0x69, 0x06, 0x00, 0x00, } func (m *ImageRef) Marshal() (dAtA []byte, err error) { @@ -474,6 +473,9 @@ func (m *StashMongoDBSpec) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + i = encodeVarintGenerated(dAtA, i, uint64(m.WaitTimeout)) + i-- + dAtA[i] = 0x38 i = encodeVarintGenerated(dAtA, i, uint64(m.MaxConcurrency)) i-- dAtA[i] = 0x30 @@ -615,6 +617,7 @@ func (m *StashMongoDBSpec) Size() (n int) { l = m.Restore.Size() n += 1 + l + sovGenerated(uint64(l)) n += 1 + sovGenerated(uint64(m.MaxConcurrency)) + n += 1 + sovGenerated(uint64(m.WaitTimeout)) return n } @@ -694,6 +697,7 @@ func (this *StashMongoDBSpec) String() string { `Backup:` + strings.Replace(strings.Replace(this.Backup.String(), "MongoDBBackup", "MongoDBBackup", 1), `&`, ``, 1) + `,`, `Restore:` + strings.Replace(strings.Replace(this.Restore.String(), "MongoDBRestore", "MongoDBRestore", 1), `&`, ``, 1) + `,`, `MaxConcurrency:` + fmt.Sprintf("%v", this.MaxConcurrency) + `,`, + `WaitTimeout:` + fmt.Sprintf("%v", this.WaitTimeout) + `,`, `}`, }, "") return s @@ -1475,6 +1479,25 @@ func (m *StashMongoDBSpec) Unmarshal(dAtA []byte) error { break } } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field WaitTimeout", wireType) + } + m.WaitTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.WaitTimeout |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) diff --git a/apis/installer/v1alpha1/generated.proto b/apis/installer/v1alpha1/generated.proto index 064231a00..25730edcb 100644 --- a/apis/installer/v1alpha1/generated.proto +++ b/apis/installer/v1alpha1/generated.proto @@ -77,5 +77,7 @@ message StashMongoDBSpec { optional MongoDBRestore restore = 5; optional int32 maxConcurrency = 6; + + optional int64 waitTimeout = 7; } diff --git a/apis/installer/v1alpha1/openapi_generated.go b/apis/installer/v1alpha1/openapi_generated.go index dae1d163c..bc45a8b69 100644 --- a/apis/installer/v1alpha1/openapi_generated.go +++ b/apis/installer/v1alpha1/openapi_generated.go @@ -15715,8 +15715,14 @@ func schema_mongodb_apis_installer_v1alpha1_StashMongoDBSpec(ref common.Referenc Format: "int32", }, }, + "waitTimeout": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int64", + }, + }, }, - Required: []string{"image", "backup", "restore", "maxConcurrency"}, + Required: []string{"image", "backup", "restore", "maxConcurrency", "waitTimeout"}, }, }, Dependencies: []string{ diff --git a/apis/installer/v1alpha1/stash_mongodb_types.go b/apis/installer/v1alpha1/stash_mongodb_types.go index c17a3eeab..6368b870c 100644 --- a/apis/installer/v1alpha1/stash_mongodb_types.go +++ b/apis/installer/v1alpha1/stash_mongodb_types.go @@ -51,6 +51,7 @@ type StashMongoDBSpec struct { Backup MongoDBBackup `json:"backup" protobuf:"bytes,4,opt,name=backup"` Restore MongoDBRestore `json:"restore" protobuf:"bytes,5,opt,name=restore"` MaxConcurrency int32 `json:"maxConcurrency" protobuf:"varint,6,opt,name=maxConcurrency"` + WaitTimeout int64 `json:"waitTimeout" protobuf:"varint,7,opt,name=waitTimeout"` } type ImageRef struct { diff --git a/apis/installer/v1alpha1/stash_mongodb_types_test.go b/apis/installer/v1alpha1/stash_mongodb_types_test.go index 18cbdd617..36c09b221 100644 --- a/apis/installer/v1alpha1/stash_mongodb_types_test.go +++ b/apis/installer/v1alpha1/stash_mongodb_types_test.go @@ -41,7 +41,7 @@ func TestStashMongoDBDefaultValues(t *testing.T) { } func compareStashMongoDBDefaultValues() (string, error) { - data, err := ioutil.ReadFile("../../../../mongodb/charts/stash-mongodb/values.yaml") + data, err := ioutil.ReadFile("../../../charts/stash-mongodb/values.yaml") if err != nil { return "", err } diff --git a/charts/stash-mongodb/README.md b/charts/stash-mongodb/README.md index b572a9768..ebb952f1c 100644 --- a/charts/stash-mongodb/README.md +++ b/charts/stash-mongodb/README.md @@ -54,6 +54,7 @@ The following table lists the configurable parameters of the `stash-mongodb` cha | backup.args | Arguments to pass to `mongodump` command during backup process | `""` | | restore.args | Arguments to pass to `mongorestore` command during restore process | `""` | | maxConcurrency | Maximum concurrency to perform backup or restore tasks | `3` | +| waitTimeout | Number of seconds to wait for the database to be ready before backup/restore process. | `300` | Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example: diff --git a/charts/stash-mongodb/templates/mongodb-backup-function.yaml b/charts/stash-mongodb/templates/mongodb-backup-function.yaml index 9d7b07865..2411097e6 100644 --- a/charts/stash-mongodb/templates/mongodb-backup-function.yaml +++ b/charts/stash-mongodb/templates/mongodb-backup-function.yaml @@ -21,6 +21,7 @@ spec: - --hostname=${HOSTNAME:=} - --mongo-args=${args:={{ .Values.backup.args }}} # optional arguments pass to mgdump command - --max-concurrency=${MAX_CONCURRENCY:={{ .Values.maxConcurrency}}} + - --wait-timeout=${waitTimeout:={{ .Values.waitTimeout}}} # target information - --namespace=${NAMESPACE:=default} - --appbinding=${TARGET_NAME:=} diff --git a/charts/stash-mongodb/templates/mongodb-restore-function.yaml b/charts/stash-mongodb/templates/mongodb-restore-function.yaml index 122082183..ccf16b0a6 100644 --- a/charts/stash-mongodb/templates/mongodb-restore-function.yaml +++ b/charts/stash-mongodb/templates/mongodb-restore-function.yaml @@ -22,6 +22,7 @@ spec: - --source-hostname=${SOURCE_HOSTNAME:=} - --mongo-args=${args:={{ .Values.restore.args }}} # optional arguments pass to mgdump command - --max-concurrency=${MAX_CONCURRENCY:={{ .Values.maxConcurrency}}} + - --wait-timeout=${waitTimeout:={{ .Values.waitTimeout}}} # target information - --namespace=${NAMESPACE:=default} - --appbinding=${TARGET_NAME:=} diff --git a/charts/stash-mongodb/values.openapiv3_schema.yaml b/charts/stash-mongodb/values.openapiv3_schema.yaml index 5deac8bf0..fa062fcfe 100644 --- a/charts/stash-mongodb/values.openapiv3_schema.yaml +++ b/charts/stash-mongodb/values.openapiv3_schema.yaml @@ -29,9 +29,13 @@ properties: args: type: string type: object + waitTimeout: + format: int64 + type: integer required: - backup - image - maxConcurrency - restore +- waitTimeout type: object diff --git a/charts/stash-mongodb/values.yaml b/charts/stash-mongodb/values.yaml index 2c0054674..3d2c0a074 100644 --- a/charts/stash-mongodb/values.yaml +++ b/charts/stash-mongodb/values.yaml @@ -26,3 +26,6 @@ restore: # Maximum concurrency to perform backup or restore tasks maxConcurrency: 3 + +# Number of seconds to wait for the database to be ready before backup/restore process. +waitTimeout: 300 diff --git a/pkg/backup.go b/pkg/backup.go index c95fa4a14..c129ee585 100644 --- a/pkg/backup.go +++ b/pkg/backup.go @@ -73,6 +73,7 @@ func NewCmdBackup() *cobra.Command { masterURL string kubeconfigPath string opt = mongoOptions{ + waitTimeout: 300, setupOptions: restic.SetupOptions{ ScratchDir: restic.DefaultScratchDir, EnableCache: false, @@ -147,6 +148,7 @@ func NewCmdBackup() *cobra.Command { } cmd.Flags().StringVar(&opt.mongoArgs, "mongo-args", opt.mongoArgs, "Additional arguments") + cmd.Flags().Int32Var(&opt.waitTimeout, "wait-timeout", opt.waitTimeout, "Number of seconds to wait for the database to be ready") cmd.Flags().StringVar(&masterURL, "master", masterURL, "The address of the Kubernetes API server (overrides any value in kubeconfig)") cmd.Flags().StringVar(&kubeconfigPath, "kubeconfig", kubeconfigPath, "Path to kubeconfig file with authorization information (the master location is set by the master flag).") @@ -206,7 +208,7 @@ func (opt *mongoOptions) backupMongoDB() (*restic.BackupOutput, error) { } // wait for DB ready - waitForDBReady(appBinding.Spec.ClientConfig.Service.Name, appBinding.Spec.ClientConfig.Service.Port) + waitForDBReady(appBinding.Spec.ClientConfig.Service.Name, appBinding.Spec.ClientConfig.Service.Port, opt.waitTimeout) // unmarshal parameter is the field has value parameters := v1alpha1.MongoDBConfiguration{} diff --git a/pkg/restore.go b/pkg/restore.go index 3001c7465..9e7a6ecf8 100644 --- a/pkg/restore.go +++ b/pkg/restore.go @@ -49,6 +49,7 @@ func NewCmdRestore() *cobra.Command { masterURL string kubeconfigPath string opt = mongoOptions{ + waitTimeout: 300, setupOptions: restic.SetupOptions{ ScratchDir: restic.DefaultScratchDir, EnableCache: false, @@ -111,6 +112,7 @@ func NewCmdRestore() *cobra.Command { } cmd.Flags().StringVar(&opt.mongoArgs, "mongo-args", opt.mongoArgs, "Additional arguments") + cmd.Flags().Int32Var(&opt.waitTimeout, "wait-timeout", opt.waitTimeout, "Number of seconds to wait for the database to be ready") cmd.Flags().StringVar(&masterURL, "master", masterURL, "The address of the Kubernetes API server (overrides any value in kubeconfig)") cmd.Flags().StringVar(&kubeconfigPath, "kubeconfig", kubeconfigPath, "Path to kubeconfig file with authorization information (the master location is set by the master flag).") @@ -319,7 +321,7 @@ func (opt *mongoOptions) restoreMongoDB() (*restic.RestoreOutput, error) { log.Infoln("processing restore.") // wait for DB ready - waitForDBReady(appBinding.Spec.ClientConfig.Service.Name, appBinding.Spec.ClientConfig.Service.Port) + waitForDBReady(appBinding.Spec.ClientConfig.Service.Name, appBinding.Spec.ClientConfig.Service.Port, opt.waitTimeout) // init restic wrapper resticWrapper, err := restic.NewResticWrapper(opt.setupOptions) diff --git a/pkg/utils.go b/pkg/utils.go index 56ad7d871..f2c01d9cb 100644 --- a/pkg/utils.go +++ b/pkg/utils.go @@ -54,6 +54,7 @@ type mongoOptions struct { appBindingName string mongoArgs string maxConcurrency int + waitTimeout int32 outputDir string setupOptions restic.SetupOptions @@ -63,9 +64,9 @@ type mongoOptions struct { defaultDumpOptions restic.DumpOptions } -func waitForDBReady(host string, port int32) { +func waitForDBReady(host string, port, waitTimeout int32) { log.Infoln("Checking database connection") - cmd := fmt.Sprintf(`nc "%s" "%d" -w 30`, host, port) + cmd := fmt.Sprintf(`nc "%s" "%d" -w %d`, host, port, waitTimeout) for { if err := exec.Command(cmd).Run(); err != nil { break