Commit Graph

40 Commits

Author SHA1 Message Date
Antoine Cotten 12dc0a4b74
Revert "ci: Pin Compose version to v2.2.3"
This reverts commit 897720fa91.

A new version of Compose was released, with a fix for the issue we were
encountering.
2022-03-09 01:57:19 +01:00
Antoine Cotten 4fe6f68339
ci: Update list of auto-mergeable branch names 2022-03-06 11:07:29 +01:00
Antoine Cotten 897720fa91
ci: Pin Compose version to v2.2.3
v2.3.0 introduced a regression which causes the test CI workflow to
fail: https://github.com/docker/compose/issues/9234
2022-03-06 10:28:48 +01:00
Antoine Cotten eb1c6fa27e
chore: Rename ELK_VERSION to ELASTIC_VERSION
More appropriate name considering that extensions, which aren't part of
the "ELK" stack, also rely on this variable.
2022-02-28 09:10:30 +01:00
Antoine Cotten 9877b39900
Automate management of required roles and user passwords (#671) 2022-02-21 11:19:43 +01:00
Antoine Cotten ca98168da1
Quote passwords to prevent interpreting leading special chars
Closes #667
2022-02-11 19:10:58 +01:00
Antoine Cotten 370ebbfaf4
doc: Update "Initial Setup" section for v8.0.0
Starting with Elastic v8.0.0, it is no longer possible to run Kibana
using the bootstraped privileged `elastic` user.

Closes #666
2022-02-11 14:48:00 +01:00
Antoine Cotten 6704d9f1d7
Update to v8.0.0 (#544)
List of changes impacting docker-elk:

- [logstash]: The output to Elasticsearch is handled as a data stream.

  Starting with v8.0.0, the `elasticsearch` output for Logstash sends
  log data to a data stream instead of `logstash-*` indices by default.
  The name of the default data stream is `logs-generic-default`.
  docker-elk remains unopinionated and simply uses Elastic's defaults
  like it always has, so users who prefer to retain the old behaviour
  need to explicitly opt-out of data streams in their Logstash
  pipelines.

  Refs:
  - https://www.elastic.co/guide/en/elasticsearch/reference/current/data-streams.html
  - https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html#plugins-outputs-elasticsearch-data-streams

- [logstash]: The (legacy) monitoring data collection is now disabled.

  This feature was deprecated since v7.9.0, and removed in v8.0.0.

  Ref: https://www.elastic.co/guide/en/logstash/current/monitoring-internal-collection-legacy.html

- [kibana]: An index pattern for `logs-*` indices is automatically
  created.

  It used to be required to manually create an index pattern for indices
  managed by Logstash, even when using the default Logstash indices.
  This is no longer the case since the output data is now being handled
  as a data stream, and Kibana automatically creates index patterns for
  these.

- [elasticsearch]: The command line tool `elasticsearch-setup-passwords`
  was deprecated in favour of a new `elasticsearch-reset-password` tool.

  Passwords for built-in users must now be generated one by one.

  Ref: https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-passwords.html

- [enterprise-search]: Kibana is now the new management interface, and
  the only one available moving forward.

  The old standalone Enterprise Search interface was removed in v8.0.0.

  Ref: https://www.elastic.co/guide/en/enterprise-search/current/user-interfaces.html
2022-02-10 17:19:04 +01:00
Antoine Cotten 3ce7fc0ae3
ci: Fix race condition while checking container IP
Be resilient and recheck the container's status if its IP address
couldn't be determined on the first attempt.
2021-12-28 20:16:54 +01:00
Antoine Cotten 1815972838
Add Filebeat extension 2021-12-04 02:17:41 +01:00
Antoine Cotten e6f9ec49d2
ci: Delete branch after successful Elastic update merge 2021-11-11 19:08:42 +01:00
Antoine Cotten 9a523626ef
ci: Automatically merge bot PRs for Elastic updates
Merges pull requests from docker-elk-updater[bot] if CI checks pass.
2021-11-09 02:54:27 +01:00
Antoine Cotten b826d7bbdf
ci: Always use _search API instead of _count
Makes it easier to troubleshoot returned documents by inspecting the
logs of CI runs.
2021-11-06 12:06:31 +01:00
Antoine Cotten e9903fecf6
ci: Run tests using latest Compose V2 release 2021-11-06 10:38:41 +01:00
Antoine Cotten 233c4e0b8c
ci: Use token from GitHub App in auto-update workflow 2021-11-03 14:37:26 +01:00
Antoine Cotten 9fde1ac351
ci(core): Retry sending data over TCP in case of error
The first attempt occasionally fails, probably due to a race with the
listener's startup.

Additionally, perform minor adjustments to the output written to stderr
to ensure it is properly flushed in the CI environment.
2021-10-28 17:56:39 +02:00
Antoine Cotten c3cc7ae15c
ci: Check for readiness of Logstash in Logspout test
Since we restart Logstash to enable the UDP input prior to running this
test, we should also ensure it has successfully come back, otherwise we
start searching for the expected documents in Elasticsearch way too
early and often run into timeouts.
2021-10-28 15:05:17 +02:00
Antoine Cotten 29d105e663
ci(update): Checkout repo after running Node.js steps
Ensures the workspace is clean before attempting to update any file.
Removes the need for explicitly ignoring Node.js artifacts in Git, since
they get cleaned up by the 'checkout' action before fetching.
2021-10-26 23:48:47 +02:00
Antoine Cotten c8f5f01b7f
ci: Update all release series from single workflow
Run the update job for each currently supported release series, so that
automated updates can be orchestrated from the main branch via a single
scheduled workflow.
2021-10-26 23:08:40 +02:00
Antoine Cotten 04fdb981eb
Restore "Send automated PR upon new stack release"
This reverts commit 9016e00e7b and updates
the 'latest' version detection logic to iterate over releases and pick
the latest matching semver, instead of relying on GitHub's
'/releases/latest' API.
2021-10-26 19:39:01 +02:00
Antoine Cotten 51b8525767
ci: Build/pull all images ahead of actual tests 2021-10-07 01:27:27 +02:00
Antoine Cotten 9a541d14f8
ci: Fix Metricbeat test
The naming scheme of containers created by Compose has changed in V2.

Ref. docker/compose#8655
2021-10-07 01:18:14 +02:00
Antoine Cotten b3abdb1d2e
ci: Use Compose v2 2021-10-07 00:09:07 +02:00
Antoine Cotten c8fc437bdb
ci: Always search in explicit index pattern 2021-08-27 00:32:16 +02:00
Antoine Cotten f3940477f9
ci: Print result of search query in Logspout test 2021-08-27 00:21:46 +02:00
Antoine Cotten 9016e00e7b
Revert "Send automated PR upon new stack release"
This reverts commit 730ffa8de5.

Lately, Elastic's release pipeline has been tagging releases from the
older 6.x series as "latest" in place of releases from the current 7.x
series. This results in weekly PRs from GitHub Actions for _downgrading_
our stack from 7.x to 6.x.

In order to avoid receiving those PRs, we disable the update workflow
entirely until the Elastic 6.x release series is marked as EOL.

Ref. elastic/elasticsearch#75436
Closes #611
2021-08-26 00:55:53 +02:00
Antoine Cotten 57298791e0
ci: Increase readiness timeout to 5m
It takes longer for Kibana to start with every major release. Increase
this timeout in anticipation for the v8.0.0 release.
2021-08-23 12:21:45 +02:00
Antoine Cotten 7d03e1fc5f
ci: Avoid unbound integer variable
Fixes #578
2021-02-21 16:17:44 +01:00
github-actions[bot] 75ebebcebb
Update to v7.11.0 (#575)
ci: Update Enterprise Search test for v3 index

App Search API keys are now encrypted in Elasticsearch, so we simply
ensure they exist and don't try to read their value.
2021-02-11 13:48:22 +01:00
Antoine Cotten 980c5c480f
Rename master branch to main (#571) 2021-01-20 08:12:56 +13:00
Mustafa Guney f592f221c4
Add Metricbeat extension (#567)
Co-authored-by: Antoine Cotten <hello@acotten.com>
2021-01-16 21:11:24 +01:00
Antoine Cotten fff244e45a
ci: Avoid printing unnecessary empty lines 2021-01-07 20:35:27 +01:00
Antoine Cotten 282a8bbc85
ci: Add test for Logspout extension 2021-01-07 19:53:50 +01:00
Antoine Cotten 730ffa8de5
Send automated PR upon new stack release 2020-11-09 14:44:54 +01:00
Antoine Cotten ace6e71cff
Enable linter for Markdown files 2020-10-18 20:32:23 +02:00
Antoine Cotten b908c5b2ec
Add Action to track dead links in docs 2020-10-18 18:49:57 +02:00
Antoine Cotten df7aca5332
ci: Remove unnecessary MODE declarations 2020-10-16 22:02:52 +02:00
Antoine Cotten b13d73def4
ci: Accept arbitrary curl arguments for polling 2020-10-16 21:59:33 +02:00
Antoine Cotten 25e0a5471b
Ensure CI initializes passwords over localhost
Prevents the occasional connection timeout when the tool randomly picks
the IP of the ingress interface (usually 10.0.0.x/24) instead of the elk
interface (usually 10.0.1.x/24) in Swarm mode.
2020-10-14 02:37:09 +02:00
Antoine Cotten b599285dac
Move CI flow from Travis CI to GitHub Actions 2020-10-14 00:32:17 +02:00