Skip to content

Releases: ptarmiganlabs/butler

butler-v6.1.0

19 Oct 05:44
09a5a12
Compare
Choose a tag to compare

Features

  • API: Add POST endpoint for starting tasks (ba214c7), closes #185
  • API: Start tasks based on tags, CPs, task array (55c8eee)

Bug Fixes

  • API: API calls logs IP of calling IP (f36c56c), closes #242
  • Logging of REST calls now respect config file (3e1431e)

Miscellaneous

  • deps: Updated dependencies (947442c)
  • deps: Updated dependencies (01d7267)
  • deps: Updated dependencies (afe621a)
  • Docker: Update image version in docker-compose (813c71c)

butler-v6.0.1

13 Oct 17:58
6ab2005
Compare
Choose a tag to compare

Documentation

butler-v6.0.0

13 Oct 16:58
e27cfa6
Compare
Choose a tag to compare

⚠ BREAKING CHANGES

  • Refactor the entire REST API. This includes many endpoints getting new/more appropriate error (and in some cases success) codes. Please see butler.ptarmiganlabs.com for details.
  • MQTT message now taken from body rather than from URL params

Features

  • api: Make error messages more descriptive (dde2c42), closes #224

Bug Fixes

  • File copy/move now returns 201 (86d63ca), closes #216
  • Key-value store now working as intended (4fb9201), closes #222
  • MQTT message now taken from body (a92bdf1), closes #217
  • security: Better cert handling, fixes #192 (da933bd)

Miscellaneous

  • deps: Update dependencies
  • Update base base image for Docker builds (e50154a)
  • A few new config file settings related to (dis)allowing unverified TLS certificates.
  • A new config setting backgroundServerPort used to implement the X-HTTP-Method-Override feature (see below). Can be set to any free port number. Only used within Butler itself (does not need to be accessible from outside).

Refactoring

  • Add support for X-HTTP-Method-Override using Fastify (ecaa685), closes #211
  • Linted and formatted all source code (368f1a7)
  • Refactor the entire REST API (da18041)
  • Switch API docs to use Fastify-Swagger (b886f31)

butler v5.4.3

28 Sep 11:07
2171555
Compare
Choose a tag to compare

Features

Bug Fixes

Some Docker love

10 Jun 15:53
6a5d0bb
Compare
Choose a tag to compare

This release doesn't add any new features nor does it address any bugs.

It simply switches to using GitHub Actions for building the linux/amd64 Docker images.
A bit simpler to maintain, a bit faster builds. Nice.

Updated dependencies

10 Jun 05:46
44a6057
Compare
Choose a tag to compare

Staying sharp - updated deps to stay secure and fast.

Bug fix & documentation updates

22 Apr 20:56
85a2daf
Compare
Choose a tag to compare

New features

Fixes and patches

Changed behavior and/or breaking changes

Key-value store refinements

12 Apr 11:46
1bcfd8d
Compare
Choose a tag to compare

New features (in no particular order)

  1. Added REST API endpoint for getting a list of all keys that exist in a given key-value store namespace.
    Useful when you need to iterate over all KV pairs in a namespace. #150.

Fixed bugs

  1. The parsing of the YAML config file is now a bit more robust and tolerant for sections that have a header but no contents. #152.

Reload task parameters, anyone? Yes we can!

18 Mar 18:56
5fe07ee
Compare
Choose a tag to compare

This has been a pain point of Qlik Sense even since it was first launched.

Of course it should be possible to send parameters to reload tasks.... except you can't.
At least not from the QMC.

Task parameters can be implemented in different ways, with Butler v5.2 we went for a rather generic solution that can be extended quite far, if needed.

Key-value pairs as parameters

The idea is simple:

When starting a task using Butler's REST API you specify

  1. The task ID
  2. An array of key-value pairs. Each KV pair lives in a namespace (used to partition KV pairs as needed) and has an optional time-to-live value, after which it is deleted. You can pass in zero, one, ten or a hundred KV pairs - there's no firm limit set except that each namespace is limited by default to 1000 KV pairs.
  3. The parameters are stored in Butler's KV store. From there they can be accessed by Butler's regular REST API, just as any other KV pairs.
  4. When a downstream app during its reload need some data from as previous app (or from the external start-task event), it just pulls the needed KV pair from the KV store and that's it. Task parameters for dummies.

To make things even easier there are helper functions that wrap the actual calls to Butler's REST API.
Starting a reload task from a Sense load script - and pass along parameters - is as easy as

Call StartTask_KeyValue('fbf645f0-0c92-40a4-af9a-6e3eb1d3c35c', 'MyNamespace', 'An important key', 'The value', 3000)

Sharing is caring - let's make future Butler versions great!

03 Mar 16:17
a6e8954
Compare
Choose a tag to compare

It's only been a week since 5.0.0 was released but here is already another release from you friendly Butler team.

It's not the biggest of updates, it's more about setting the stage for things to come.
The one thing that's new is... drum roll...

Telemetry

Wait - is that a good thing??

In this case it is.
We've given this one a lot of thought. Let's give it some context first though.

Historically, the development of Butler has largely been driven by what features were needed at some specific point in time.
That's fine, but it also means that the Butler developers have been in the dark as to

  • which Butler features are actually used
  • which features no-one uses
  • on which operating systems Butler is used etc.

On the other hand: If team Butler would know which features are used most, which OSs Butler is used on etc, they could focus future work towards those high-value features and platforms.

In other words. Adding telemetry is about making future Butler versions better for you.

100% anonymous

This one we won't compromise on.

Only anonymized data leaves your Butler instance(s).
Not even the IP of the computer sending the telemetry data is kept.
We're serious about this one - full discussion and transparency at butler.ptarmiganlabs.com.

Full list of changes available in the changelog.

Documentation available at butler.ptarmiganlabs.com, as always.