Skip to content
This repository has been archived by the owner on Jan 30, 2020. It is now read-only.

Releases: coreos/fleet

v0.8.0

05 Sep 18:46
v0.8.0
Compare
Choose a tag to compare

The major new feature in this release is global units. These allow users to define units which will run on every agent in their fleet cluster. For full details, see the unit files and scheduling documentation.

New Features

  • #786: fleet now supports global units
  • #794: the API now serves its discovery document
  • #814: the API now supports query parameters when retrieving units

Changes

  • #621: the X- and X-Condition prefixes of certain unit options are now deprecated and should be removed from unit files
  • #802: fleet no longer depends on glog and instead uses its own simplified log package
  • #807: the fleet binary is now called fleetd. Users may need to adjust their init scripts appropriately.
  • #809: the documentation was significantly reworked, with many examples updated and similar documents combined
  • #810: resource reservation options are no longer parsed in unit files. These were never actually considered by fleet, so this is a no-op
  • #868: the TMACHINE field in fleetctl output has been renamed to TARGET. The old name will still function but is deprecated; users should migrate to TARGET

Bugs Fixed

  • #793: units with invalid names no longer cause issues with state publishing
  • #855: the schema ID for unit delete operations in the API is fixed
  • #861: when detecting the local IP address, fleetd only considers global unicast addresses
  • #862: the API returns clearer errors when invalid units are submitted

v0.7.1

20 Aug 23:56
Compare
Choose a tag to compare

Bugs Fixed

  • #646: serialize systemd operations within a single fleet agent
  • #783: use TTLs to clean up stale state in etcd

v0.7.0

18 Aug 17:22
Compare
Choose a tag to compare

The fleet engine no longer uses bidding to schedule work to the cluster. This caused a lot of unnecessary stress on etcd and was not able to quickly schedule units into the cluster. This mechanism was replaced with a monolithic scheduler running in a single engine. Each engine master-elects this responsibility to provide quick failover in the event of a single machine going down.

We made a great amount of progress on fleet’s HTTP API. Its current resource layout will likely be what is released as the official API.

The relationship between unit state and the underlying fleet agents has been modified to allow multiple agents to report state under the same unit name. This change not only helps communicate what is actually happening in the cluster at any given time, but paves the way for global units (#681). This did have some consequences for fleetctl - the state and dstate fields moved from list-units to list-unit-files.

Unit signing has been removed. The related flags and commands no longer function.

v0.6.2

05 Aug 23:21
Compare
Choose a tag to compare

Bugs Fixed

  • #709: clarify fleetctl destroy activity
  • #729: limit amount of work done within a single engine reconciliation attempt
  • #733: remove unnecessary etcd traffic
  • #737: don't mask unit files when loading
  • #742: limit what events trigger engine & agent reconciliation
  • #743: raise default value of fleetctl's --request-timeout flag to 3s

v0.6.1

29 Jul 14:16
Compare
Choose a tag to compare

Bugs Fixed

  • #726: make etcd timeouts configurable

v0.6.0

28 Jul 19:11
Compare
Choose a tag to compare

Both the Engine and the Agent have switched from an event-driven model to a periodic reconciliation model. This was done to ensure fleet is always making progress towards doing the Right Thing™. Unit state is also published at an interval, so stale data in etcd should be much less of a problem.

The signed units feature is deprecated as of this release, primarily because the feature does not fit well with the coming HTTP API. Authentication and authorization are important to get right, and the way the signed units feature is designed just doesn't offer enough security.

New Features

  • #688: New list-unit-files command
  • #677: Allow configuration of etcd SSL certs in fleet and fleetctl
  • #663: New fields TSTATE and DSTATE added to fleetctl list-units, while LOAD and SUB were removed from default field list

Bugs Fixed

  • #697: Refuse to start up with empty machine-id
  • #652: Missing events from etcd no longer affects Agent
  • #628: Manual unit state changes are now propagated to etcd

v0.5.4

14 Jul 22:20
Compare
Choose a tag to compare

Bugs Fixed

  • #660: fix panic when Job data not found in Registry
  • #639: lease engine role for extended period of time
  • #636: remove redundant etcd requests when listing machines
  • #630: asynchronously stop zombie jobs on startup

v0.5.3

09 Jul 23:16
Compare
Choose a tag to compare

Bugs Fixed

  • #500, #624, #625, #629: switch to reconciler model in engine
  • #626: fix a race condition in go-systemd

v0.5.2

08 Jul 05:08
Compare
Choose a tag to compare

Like the previous release, the majority of effort was spent on the HTTP API (#545) and internal refactoring during this release cycle. While there weren't any new features released, there were a few notable changes:

  • switched from goven to godep
  • improved internal logging, dropping the fleetctl --verbosity flag

Bugs Fixed

  • #582: use consistent=true with etcd GET requests
  • #579: fix handling of unit names with underscores and other special characters
  • #620: plug file descriptor leak

v0.5.1

23 Jun 20:04
Compare
Choose a tag to compare

Lots of effort was spent on the new experimental HTTP API (#545) and internal refactoring this release cycle. While there weren't any new features released, there were two notable changes:

  • #537: Functional tests run twice as quickly and are much more reliable
  • #542: fleetctl debug-info was removed

Bugs

  • #530: Drop unnecessary tabwriter usage, prevent panic
  • #540: Manually fetch systemd state when starting units
  • #546: Parse malformed systemd unit file carefully, prevent panic
  • #553: Be careful about type assertions, prevent panic
  • #556: Propagate internal Registry initialization failures up