-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
[Uptime] [Synthetics Integration] fall back to checking verification mode to determine if tls is enabled #117181
[Uptime] [Synthetics Integration] fall back to checking verification mode to determine if tls is enabled #117181
Conversation
Pinging @elastic/uptime (Team:uptime) |
@elasticmachine merge upstream |
@elasticmachine merge upstream |
@elasticmachine merge upstream |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Tested locally !!
@elasticmachine merge upstream |
💛 Build succeeded, but was flaky
Test Failures
Metrics [docs]Async chunks
History
To update your PR or re-run it, just comment with: |
The following labels were identified as gaps in your version labels and will be added automatically:
If any of these should not be on your pull request, please manually remove them. |
…tls is enabled (elastic#117181) Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
…tls is enabled (elastic#117181) Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
…tls is enabled (elastic#117181) Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
…tls is enabled (#117181) Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Summary
Fixes #115009
The Elastic Synthetics integration must provide backwards compatibility for integration policies created in earlier versions, because Fleet will not ship with auto upgrading package policies for the Elastic Synthetics integration until 8.1.0.
To support this backwards compatibility, #114914 was added to ensure that older policies are able to be upgraded to the most recent package version when editing. This resolves 99% of the compatibility issues.
However, we also changed the way we handle determining whether or not TLS is enabled during the package policy edit flow. This PR resolves those issues.
In 7.16, we added new logic to put a key onto the integration policy to determine if TLS had been enabled. This new key is used exclusively by the UI, not heartbeat, in order to render the TLS toggle as checked in the edit integration flow. That key is
__ui.is_tls_enabled
and__ui.is_zip_url_tls_enabled
for normal http/tcp tls and for Zip URL tls, respectively.However, policies created earlier than than 7.16 will not have this key. In order to support backwards compatibility, we check if
ssl.verification_mode
has been added the policy as a back up.In reality, adding these new
__ui
keys for tls was not necessary and were added prematurely. The truth presence ofssl.verification_mode
is sufficient way to check if tls has been abled for that policy, becausessl.verification_mode
is always defined on every policy that hasssl
enabled.I don't feel comfortable removing the new
__ui.is_tls_enabled
and__ui.is_zip_url_tls_enabled
after feature freeze, as it's working as expected for new policies. However, we should consider removing this in 8.0.0, as it's extra, unnecessary logic.Testing
elastic-package stack up --version 8.0.0-SNAPSHOT -v
curl -u elastic:changeme -X POST "http://localhost:9200/_security/user/kibana_system/_password?pretty" -H 'Content-Type: application/json' -d' { "password" : "changeme" } '
localhost:5602
http://localhost:5602/axi/app/integrations/detail/synthetics-0.3.0/overview