velero/pkg/builder
Andrew Reed 0547b1d945
Restore hooks exec (#2804)
* Exec hooks in restored pods

Signed-off-by: Andrew Reed <andrew@replicated.com>

* WaitExecHookHandler implements ItemHookHandler

This required adding a context.Context argument to the ItemHookHandler
interface which is unused by the DefaultItemHookHandler implementation.
It also means passing nil for the []ResourceHook argument since that
holds BackupResourceHook.

Signed-off-by: Andrew Reed <andrew@replicated.com>

* WaitExecHookHandler unit tests

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Changelog and go fmt

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Fix double import

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Default to first contaienr in pod

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Use constants for hook error modes in tests

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Revert to separate WaitExecHookHandler interface

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Negative tests for invalid timeout annotations

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Rename NamedExecRestoreHook PodExecRestoreHook

Also make field names more descriptive.

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Cleanup test names

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Separate maxHookWait and add unit tests

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Comment on maxWait <= 0

Also info log container is not running for hooks to execute in.
Also add context error to hooks not executed errors.

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Remove log about default for invalid timeout

There is no default wait or exec timeout.

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Linting

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Fix log message and rename controller to podWatcher

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Comment on exactly-once semantics for handler

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Fix logging and comments

Use filed logger for pod in handler.
Add comment about pod changes in unit tests.
Use kube util NamespaceAndName in messages.

Signed-off-by: Andrew Reed <andrew@replicated.com>

* Fix maxHookWait

Signed-off-by: Andrew Reed <andrew@replicated.com>
2020-09-08 11:33:15 -07:00
..
backup_builder.go Enhance Backup to backup resources in specific order. (#2724) 2020-08-12 17:17:31 -07:00
backup_storage_location_builder.go Add a BSL controller to handle validation + update BSL status phase (#2674) 2020-07-14 17:47:00 -04:00
config_map_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
container_builder.go 🐛 Supply command to run restic-wait init container 2020-08-11 11:05:30 -07:00
container_builder_test.go Add --plugins flag to velero install (#1930) 2019-10-03 16:44:52 -07:00
customresourcedefinition_builder.go Wait for CRDs to be ready before restoring CRs (#1937) 2020-01-30 09:19:13 -08:00
deployment_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
json_schema_props_builder.go Fix int/float conversion issues in CRD version remapping plugin (#2322) 2020-03-10 09:24:22 -06:00
namespace_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
node_builder.go add restore item action to update PVC selected-node annotation (#2377) 2020-04-03 08:01:34 -07:00
object_meta.go Restore hooks exec (#2804) 2020-09-08 11:33:15 -07:00
persistent_volume_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
persistent_volume_claim_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
pod_builder.go Restore hooks exec (#2804) 2020-09-08 11:33:15 -07:00
pod_volume_backup_builder.go Updates for org move to vmware-tanzu (#1920) 2019-09-30 17:26:56 -04:00
restore_builder.go Add StartTimestamp and CompletionTimestamp in Restore Status (#2748) 2020-07-22 11:40:39 -07:00
role_builder.go store backup resource list metadata in object storage (#1709) 2019-08-05 11:15:55 -06:00
schedule_builder.go use pointer types for metav1.Time fields (#1951) 2019-10-14 10:20:28 -06:00
secret_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
server_status_request_builder.go Migrate ServerStatusRequest controller and resource to kubebuilder (#2838) 2020-09-01 14:15:23 -07:00
service_account_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
storage_class_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
v1_customresourcedefinition_builder.go Fix int/float conversion issues in CRD version remapping plugin (#2322) 2020-03-10 09:24:22 -06:00
volume_builder.go Update tests to use object builders in pkg/builder (#1707) 2019-07-31 07:46:48 -07:00
volume_mount_builder.go Add resource limits to restic init container (#1677) 2019-08-05 13:18:11 -06:00
volume_snapshot_location_builder.go Updates for org move to vmware-tanzu (#1920) 2019-09-30 17:26:56 -04:00