diff --git a/pkg/deploy/helm/annotations.go b/pkg/deploy/helm/annotations.go index 18ce5a60b4..8e0bbada35 100644 --- a/pkg/deploy/helm/annotations.go +++ b/pkg/deploy/helm/annotations.go @@ -11,6 +11,8 @@ const ( IgnoreReadinessProbeFailsForPrefix = "werf.io/ignore-readiness-probe-fails-for-" + NoActivityTimeoutName = "werf.io/no-activity-timeout" + SkipLogsAnnoName = "werf.io/skip-logs" SkipLogsForContainersAnnoName = "werf.io/skip-logs-for-containers" ShowLogsOnlyForContainers = "werf.io/show-logs-only-for-containers" diff --git a/pkg/deploy/helm/resources_waiter.go b/pkg/deploy/helm/resources_waiter.go index e24bce36bb..3b573cb58a 100644 --- a/pkg/deploy/helm/resources_waiter.go +++ b/pkg/deploy/helm/resources_waiter.go @@ -297,6 +297,15 @@ mainLoop: } return nil, fmt.Errorf("%w: choose one of %v", invalidAnnoValueError, values) + case NoActivityTimeoutName: + noActivityTimeout, err := time.ParseDuration(annoValue) + if err != nil { + return nil, fmt.Errorf("%s: %w", invalidAnnoValueError, err) + } else if noActivityTimeout.Seconds() < 1 { + return nil, fmt.Errorf("%w: can't be less than 1 second", invalidAnnoValueError) + } + + genericSpec.NoActivityTimeout = &noActivityTimeout } }