Skip to content

Comments

feat(ci): add integration tests for AutoTLS in Beekeeper workflow#5350

Open
akrem-chabchoub wants to merge 19 commits intomasterfrom
feat/autotls-integration-test
Open

feat(ci): add integration tests for AutoTLS in Beekeeper workflow#5350
akrem-chabchoub wants to merge 19 commits intomasterfrom
feat/autotls-integration-test

Conversation

@akrem-chabchoub
Copy link
Contributor

@akrem-chabchoub akrem-chabchoub commented Feb 5, 2026

Checklist

  • I have read the coding guide.
  • My change requires a documentation update, and I have done it.
  • I have added tests to cover my changes.
  • I have filled out the description and linked the related issues.

Description

  • Updated the Beekeeper GitHub Actions workflow to run the CI against temporary Beelocal and Beekeeper feature branches.
  • Added a second test flow targeting the local-dns-autotls cluster.
  • ReRun Beekeeper checks for the AutoTLS setup (pingpong, full connectivity, retrieval and autotls checks).
  • Extended the debug artifacts collection to support the new AutoTLS cluster.

Why this is needed

AutoTLS and WSS support are currently being validated on dedicated Beelocal and Beekeeper feature branches.
The existing CI only covered the standard local-dns cluster and does not exercise the AutoTLS setup.

This change allows the CI pipeline to:

  • validate the AutoTLS cluster configuration,
  • detect regressions in connectivity and retrieval when AutoTLS is enabled,
  • and provide proper debugging artifacts when AutoTLS related checks fail.

Files changed

  • .github/workflows/beekeeper.yml

Open API Spec Version Changes (if applicable)

Motivation and Context (Optional)

Related Issue (Optional)

Screenshots (if appropriate):

@akrem-chabchoub akrem-chabchoub self-assigned this Feb 5, 2026
@akrem-chabchoub akrem-chabchoub marked this pull request as ready for review February 5, 2026 23:04
- name: Collect debug artifacts
if: failure()
- name: Collect debug artifacts (local-dns)
if: failure() && (steps.pingpong.outcome == 'failure' || steps.fullconnectivity.outcome == 'failure' || steps.settlements.outcome == 'failure' || steps.pss.outcome == 'failure' || steps.soc.outcome == 'failure' || steps.gsoc.outcome == 'failure' || steps.pushsync-chunks-1.outcome == 'failure' || steps.pushsync-chunks-2.outcome == 'failure' || steps.retrieval.outcome == 'failure' || steps.manifest.outcome == 'failure' || steps.manifest-v1.outcome == 'failure' || steps.postage-stamps.outcome == 'failure' || steps.stake.outcome == 'failure' || steps.withdraw.outcome == 'failure' || steps.redundancy.outcome == 'failure' || steps.act.outcome == 'failure' || steps.feeds.outcome == 'failure' || steps.feeds-v1.outcome == 'failure')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this line are super long, can we just use if: failure()?

curl -sSf -X POST -H "Content-Type: application/json" -d "{\"text\": \"**${RUN_TYPE}** Beekeeper Autotls Error\nBranch: \`${{ github.head_ref }}\`\nUser: @${{ github.event.pull_request.user.login }}\nDebugging artifacts: [click](https://$BUCKET_NAME.$AWS_ENDPOINT/artifacts_$VERTAG.tar.gz)\nStep failed: \`${FAILED}\`\"}" https://beehive.ethswarm.org/hooks/${{ secrets.TUNSHELL_KEY }}
echo "Failed test: ${FAILED}"
- uses: actions/upload-artifact@v4
if: failure() && (steps.pingpong-autotls.outcome == 'failure' || steps.fullconnectivity-autotls.outcome == 'failure' || steps.retrieval-autotls.outcome == 'failure' || steps.autotls.outcome == 'failure')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This as well

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, simplifying to if: failure() is much more readable.
One small tradeoff worth noting: if a local-dns test fails, failure() will also trigger the local-dns-autotls artifact collection and notification, even though autotls tests were just skipped (not failed).
So we could get a misleading alert when the actual issue was in local-dns.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants