A detailed changelog is available in our GitHub release page.
We will list in this document any breaking changes between versions, that require modifications of the task templates you maintain.
- Added a new
notification_type
:task_validation
that fires every time a new task need a human validation. To integrate differentnotification_strategy
, allnotification_strategy
are scopped to thenotification_type
. Then,default_notification_strategy
is now an object containing thenotification_type
as key, and thestrategy
as value ; andtemplate_notification_strategies
is now an object containing thenotification_type
as key, and the strategies array as value. - Changed the configuration key
task_state_action
(in thenotify_action
section) to the new valuetask_state_update
(to match thenotification_type
value).
005_resolution_creation_timestamp.sql
migration file should be applied while upgrading. It adds a columncreated
in theresolution
table to keep track of the resolution creation timestamp.
- The Prometheus gauges used to record the number of tasks by state haven been moved to a single
GaugeVec
namedutask_task_state
.
jsonmarshal
function has been deleted. It was obsolete since thesprig
package used by utask provides many JSON related functions (e.g.toJson
).jsonfield
function has been deleted. It was obsolete since a pipeline such as{{ field `foo` | toJson }}
achieves the same thing.
/resolution
:resolution.payload
(deprecated, duplicate of / replaced byresolution.output
since 1.0) has finally been deleted.
GET /resolution
API route has been deleted. We decided that resolutions should always be accessed through tasks
resolver_usernames
configuration field deleted. Global resolver is not a feature we want to support, and its usage was misguided.
001_resolver_watcher_usernames_indexes.sql
migration file should be applied while upgrading. This migration is non-breaking but will boost performance on big instances for tasks listing.
timeout_seconds
configuration field deleted. It has been replaced by the fieldtimeout
, using the Golang time.Duration format (5s, 1m, ...), for consistency with other plugins and to express timeout durations inferior than 1 second. #86parameters
configuration field deleted. It has been replaced by the fieldquery_parameters
: the name is now clearer, and the object format is similar to theheaders
configuration field. #86deny_redirects
configuration field deleted. It has been replaced by the fieldfollow_redirect
: the new default behavior will be to never follow redirections, unless specified by this configuration field. #86
allow_exit_non_zero
configuration field deleted. This field has no strict replacement, as its behavior was not in the uTask philosophy. The fieldexit_codes_unrecoverable
has been introduced to catch some exit codes asCLIENT_ERROR
if the error is not recoverable (to either halt the execution or change to a custom status via check conditions). #85exit_status
metadata field renamedexit_code
. This field's name is now consistent between the ssh and script plugins. #85
allow_exit_non_zero
configuration field deleted. This field has no strict replacement, as its behavior was not in the uTask philosophy. The fieldexit_codes_unrecoverable
has been introduced to catch some exit codes asCLIENT_ERROR
if the error is not recoverable (to either halt the execution or change to a custom status via check conditions). #87last_line_not_json
configuration field deleted. It has been replaced by the fieldoutput_mode
which supports more options, and can be configured to the valuedisabled
to reproduce the same behavior. #87