Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean up structure of Butler config file #1242

Closed
mountaindude opened this issue Oct 1, 2024 · 0 comments · Fixed by #1192 or #1269
Closed

Clean up structure of Butler config file #1242

mountaindude opened this issue Oct 1, 2024 · 0 comments · Fixed by #1192 or #1269

Comments

@mountaindude
Copy link
Collaborator

mountaindude commented Oct 1, 2024

Overview

The config file has become somewhat inconsistent over the years, which is not surprising.
All in all it has served well, but a cleanup is motivated when a major Butler release (with breaking features) is planned.

This ticket details the changes that will be done in the config file format.

Changes to config file

Change "Adress" to "Address" everywhere

Use correct spelling of that word throughout the config file.

Specifically:

  • fromAdress --> fromAddress

Change apiListEnbledEndpoints to apiListEnabledEndpoints

The new property path will be: Butler.restServerEndpointsEnable.apiListEnabledEndpoints

Remove Butler.influxDb.instanceTag

That setting can be handled either by the various feature-specific static tag properties Butler.influxDb.instanceTag.reloadTaskFailure.tag.static, Butler.influxDb.instanceTag.reloadTaskSuccess.tag.static etc, or in a new, shared setting Butler.influxDb.tag.static:

Butler:
  influxDb:
    tag:
      static:
        - name: butler_instance
          value: dev

Note that the previously used instanceTag property was assigned to a InfluxDB tag called butler_instance. Thus the suggested format above.

Generalise http header def in Butler.configEngine.headers

Currently looks like this:

Butler:
  configEngine: 
    headers: 
      X-Qlik-User: UserDirectory=Internal;UserId=sa_repository

Make it an array like this, using the name-value model used elsewhere in the config file:

Butler:
  configEngine: 
    headers: 
      static:
        - name: X-Qlik-User                             # Mandatory, this header must be present!
          value: UserDirectory=Internal; UserId=sa_repository

This will allow for using both the mandatory X-Qlik-User header (Butler will verify that this header is defined in the config file!) and other headers, if such are needed.

Generalise http headers for use with the QRS config settings

Currently looks like this:

Butler:
  configQRS: 
    headerKey: 
      headerValue: UserDirectory=Internal; UserId=sa_repository

Change to this:

Butler:
  configQRS:
    headers: 
      static: 
        - name: X-Qlik-User                             # Mandatory, this header must be present!
          value: UserDirectory=Internal; UserId=sa_repository

Butler will verify that the mandatory X-Qlik-User header is present, but other headers can be added too, if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant