Skip to content

ansible-scylla-node: increase API port wait timeout to reduce CI flakiness#535

Draft
cursor[bot] wants to merge 9 commits into
masterfrom
cursor/ci-failure-automation-3daf
Draft

ansible-scylla-node: increase API port wait timeout to reduce CI flakiness#535
cursor[bot] wants to merge 9 commits into
masterfrom
cursor/ci-failure-automation-3daf

Conversation

@cursor

@cursor cursor Bot commented Jul 21, 2026

Copy link
Copy Markdown

Summary

  • Bump wait for the API port to come up on all nodes task timeout from 300s to 600s in ansible-scylla-node/tasks/common.yml.

Context

PR #532's Molecule build jobs (debian11/12, ubuntu2204/2404, rockylinux9/10) failed with:

fatal: [node2]: FAILED! => {"changed": false, "elapsed": 300, "msg": "Timeout when waiting for 127.0.0.1:10000"}
fatal: [node3]: FAILED! => {"changed": false, "elapsed": 300, "msg": "Timeout when waiting for 127.0.0.1:10000"}

This happens during the converge scenario, in the wait for the API port to come up on all nodes task in ansible-scylla-node/tasks/common.yml, before any of PR #532's changes (which only touch ansible-scylla-node/tasks/upgrade/post_upgrade.yml and are not exercised by this scenario) run. The CQL port already responded (after retries) but the scylla-server API port took longer than the hardcoded 300s under loaded CI runners. This confirms it's pre-existing CI flakiness, not a regression introduced by PR #532.

Two other open PRs (#533, #534) independently identified and fixed the exact same flakiness for other unrelated PRs, but targeted master instead of dev. This PR applies the same fix against dev.

Test plan

  • Molecule CI green on the affected distros
Open in Web View Automation 

ManjotS and others added 9 commits July 3, 2026 15:10
Check systemctl is-active scylla-server while polling nodetool during
cluster health and replace-node UN waits, matching start_one_node.yml.

Fixes scylladb/field-engineering#2109

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Addresses Copilot review: systemctl is-active can return deactivating,
unknown, etc. Fail for any state other than active/activating and
include the actual state in the error message for diagnosis.

Co-authored-by: Cursor <cursoragent@cursor.com>
* Fail fast when scylla-server stops during bootstrap health waits

Check systemctl is-active scylla-server while polling nodetool during
cluster health and replace-node UN waits, matching start_one_node.yml.

Fixes scylladb/field-engineering#2109

Co-authored-by: Cursor <cursoragent@cursor.com>

* ci: retrigger molecule after scylla-manager flake

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: allowlist active/activating states instead of blocklisting

Addresses Copilot review: systemctl is-active can return deactivating,
unknown, etc. Fail for any state other than active/activating and
include the actual state in the error message for diagnosis.

Co-authored-by: Cursor <cursoragent@cursor.com>

* scylla-manager: automatically set Alternator credentials

Newer Scylla Managers in combination with Alternator-enabled clusters,
will attempt to retrieve the Alternator schema using Alternator credentials when performing a backup.
In order to be able to perform a backup, we must set these credentials.

Fixes https://scylladb.atlassian.net/browse/ANSROLES-17

Signed-off-by: Vincent Reniers <vincent.reniers@scylladb.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Signed-off-by: Vincent Reniers <vincent.reniers@scylladb.com>
Co-authored-by: manjots <manjot.singh@scylladb.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Manjot Singh <manjot@manjotsingh.net>
* Persist scylla-monitoring start/stop wrapper scripts on deploy.

Write /opt/scylla-monitoring/{start,stop}-monitoring.sh during monitoring
role deploy so operators can restart the stack without re-running ansible
or reconstructing start-all.sh arguments by hand.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Address Copilot review on monitoring wrapper scripts.

Quote paths and credentials, use conditional sudo for stop, move CQL
secrets to a 0600 env file sourced at runtime, and restore env vars for
ansible-driven starts.

Co-authored-by: Cursor <cursoragent@cursor.com>

* ci: retrigger molecule workflow

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
The assumption cannot be made that the hostname is DNS resolvable by all nodes in the cluster.
It's more appropriate to require that the seed nodes are specified explicitly.

Signed-off-by: Vincent Reniers <vincent.reniers@scylladb.com>
Removing the implicit scylla_seeds default meant the role would only
surface an undefined-variable error deep into common.yml. Add an
early explicit check so misconfiguration fails fast with a clear
message instead. Also fix the commented example to use consistent
groups['scylla'][0] bracket indexing and drop trailing whitespace.

Co-authored-by: Cursor <cursoragent@cursor.com>
ansible-scylla-node: remove default scylla_seeds
…iness

Co-authored-by: Manjot Singh <ManjotS@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants