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

[Fleet] Display next steps and actions in agentless integrations flyout #203824

Merged
merged 7 commits into from
Dec 17, 2024

Conversation

criamico
Copy link
Contributor

@criamico criamico commented Dec 11, 2024

Summary

Display next steps and actions in agentless integrations flyout. This PR is based off the following changes:

Agentless flyout
Introduced with #199567

package-spec
The definitions for package-spec have been updated in these two PRs:

Connectors
Agentless integration now expose connectors name and id in the package policy (see code here for elastic connectors integration).
Screenshot 2024-12-16 at 16 30 22

This PR creates a dynamic link to the connector configured in the policy and shows it in the agentless flyout.

Testing

  • First of all, enable agentless following the steps under Testing in this PR. Follow up to step 3
  • Instead of installing CSPM, install this test package agentless_package_links-0.0.1.zip with the upload command
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOURPATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.1.zip
  • Once appears installed, create a package policy with this new integration. Make sure to choose agentless as deployment mode
Screenshot 2024-12-16 at 16 22 09
  • Enroll an agent to the newly created "agentless" policy by using the token (it's available in the token page)
  • Go back to integrations, you should see a page like this one:
Screenshot 2024-12-16 at 16 38 18
  • Click on the state ("pending"/"healhty"/"unhealthy") and see the flyout. If the enrollment was successful, you should see some cards and buttons that link to internal and external links in kibana
Screenshot 2024-12-16 at 16 21 57

Testing the connector cards

  • First create a new connector: go to app/elasticsearch/content/connectors and click on "new connector". For this purpose there's no need to complete the procedure
  • Note down the name and id of the connector
Screenshot 2024-12-16 at 16 42 00 Screenshot 2024-12-16 at 16 42 00 - Go back to the integration policy previously installed. Enable the "Test Connector" input and add the name and id from above. - The agentless flyout should now have a card that will link the user to `app/elasticsearch/content/connectors/`

Checklist

@criamico criamico self-assigned this Dec 11, 2024
@criamico
Copy link
Contributor Author

@elasticmachine merge upstream

@criamico
Copy link
Contributor Author

@elasticmachine merge upstream

@criamico criamico added Team:Fleet Team label for Observability Data Collection Fleet team release_note:skip Skip the PR/issue when compiling release notes backport:skip This commit does not require backporting labels Dec 16, 2024
@criamico criamico marked this pull request as ready for review December 16, 2024 15:47
@criamico criamico requested a review from a team as a code owner December 16, 2024 15:47
@elasticmachine
Copy link
Contributor

Pinging @elastic/fleet (Team:Fleet)

@juliaElastic
Copy link
Contributor

Should't we backport to 8.18 and add release notes enhancement or feature?

Copy link
Contributor

@juliaElastic juliaElastic left a comment

Choose a reason for hiding this comment

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

LGTM

@criamico criamico added v8.18.0 v9.0.0 release_note:feature Makes this part of the condensed release notes backport:prev-minor Backport to (9.0) the previous minor version (i.e. one version back from main) and removed backport:skip This commit does not require backporting release_note:skip Skip the PR/issue when compiling release notes labels Dec 17, 2024
@criamico
Copy link
Contributor Author

@elasticmachine merge upstream

@elasticmachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
fleet 1250 1251 +1

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
fleet 1.7MB 1.7MB +2.6KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
fleet 173.8KB 173.9KB +52.0B

History

cc @criamico

@criamico criamico merged commit 790c589 into elastic:main Dec 17, 2024
8 checks passed
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.x

https://github.com/elastic/kibana/actions/runs/12373766430

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Dec 17, 2024
…ut (elastic#203824)

## Summary

Display next steps and actions in agentless integrations flyout. This PR
is based off the following changes:

**Agentless flyout**
Introduced with elastic#199567

**package-spec**
The definitions for package-spec have been updated in these two PRs:
- elastic/package-spec#834
- elastic/package-spec#844
Any agentless package can now define internal links with format
`kbn:/app/...` and external links with format `https://...`. This PR
shows a card or a button linking to these urls in the new agentless
flyout

**Connectors**
Agentless integration now expose connectors name and id in the package
policy (see code
[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)
for elastic connectors integration).
<img width="1003" alt="Screenshot 2024-12-16 at 16 30 22"
src="https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26"
/>

This PR creates a dynamic link to the connector configured in the policy
and shows it in the agentless flyout.

### Testing
- First of all, enable agentless following the steps under `Testing` in
[ this PR](elastic#199567). Follow up to
step 3
- Instead of installing CSPM, install this test package
[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)
with the upload command
```
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOURPATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.1.zip
```
- Once appears installed, create a package policy with this new
integration. Make sure to choose `agentless` as deployment mode
<img width="1278" alt="Screenshot 2024-12-16 at 16 22 09"
src="https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951"
/>

- Enroll an agent to the newly created "agentless" policy by using the
token (it's available in the token page)
- Go back to integrations, you should see a page like this one:
<img width="1569" alt="Screenshot 2024-12-16 at 16 38 18"
src="https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926"
/>

- Click on the state ("pending"/"healhty"/"unhealthy") and see the
flyout. If the enrollment was successful, you should see some cards and
buttons that link to internal and external links in kibana

<img width="878" alt="Screenshot 2024-12-16 at 16 21 57"
src="https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e"
/>

### Testing the connector cards
- First create a new connector: go to
`app/elasticsearch/content/connectors` and click on "new connector". For
this purpose there's no need to complete the procedure
- Note down the name and id of the connector
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca"
/>
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db"
/>
- Go back to the integration policy previously installed. Enable the
"Test Connector" input and add the name and id from above.
- The agentless flyout should now have a card that will link the user to
`app/elasticsearch/content/connectors/<id>`

### Checklist

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
(cherry picked from commit 790c589)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.x

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

@criamico criamico deleted the agentless_next_steps_links branch December 17, 2024 13:41
kibanamachine added a commit that referenced this pull request Dec 17, 2024
…s flyout (#203824) (#204573)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[Fleet] Display next steps and actions in agentless integrations
flyout (#203824)](#203824)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Cristina
Amico","email":"criamico@users.noreply.github.com"},"sourceCommit":{"committedDate":"2024-12-17T13:13:58Z","message":"[Fleet]
Display next steps and actions in agentless integrations flyout
(#203824)\n\n## Summary\r\n\r\nDisplay next steps and actions in
agentless integrations flyout. This PR\r\nis based off the following
changes:\r\n\r\n**Agentless flyout**\r\nIntroduced with
https://github.com/elastic/kibana/pull/199567\r\n\r\n**package-spec**\r\nThe
definitions for package-spec have been updated in these two PRs:\r\n-
https://github.com/elastic/package-spec/pull/834\r\n-
https://github.com/elastic/package-spec/pull/844\r\nAny agentless
package can now define internal links with format\r\n`kbn:/app/...` and
external links with format `https://...`. This PR\r\nshows a card or a
button linking to these urls in the new
agentless\r\nflyout\r\n\r\n**Connectors**\r\nAgentless integration now
expose connectors name and id in the package\r\npolicy (see
code\r\n[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)\r\nfor
elastic connectors integration).\r\n<img width=\"1003\" alt=\"Screenshot
2024-12-16 at 16 30
22\"\r\nsrc=\"https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26\"\r\n/>\r\n\r\nThis
PR creates a dynamic link to the connector configured in the
policy\r\nand shows it in the agentless flyout.\r\n\r\n### Testing\r\n-
First of all, enable agentless following the steps under `Testing`
in\r\n[ this PR](#199567). Follow
up to\r\nstep 3\r\n- Instead of installing CSPM, install this test
package\r\n[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)\r\nwith
the upload command\r\n```\r\ncurl -XPOST -H 'content-type:
application/zip' -H 'kbn-xsrf: true'
http://localhost:5601/YOURPATH/api/fleet/epm/packages -u
elastic:changeme --data-binary
@agentless_package_links-0.0.1.zip\r\n```\r\n- Once appears installed,
create a package policy with this new\r\nintegration. Make sure to
choose `agentless` as deployment mode\r\n<img width=\"1278\"
alt=\"Screenshot 2024-12-16 at 16 22
09\"\r\nsrc=\"https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951\"\r\n/>\r\n\r\n-
Enroll an agent to the newly created \"agentless\" policy by using
the\r\ntoken (it's available in the token page)\r\n- Go back to
integrations, you should see a page like this one:\r\n<img
width=\"1569\" alt=\"Screenshot 2024-12-16 at 16 38
18\"\r\nsrc=\"https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926\"\r\n/>\r\n\r\n-
Click on the state (\"pending\"/\"healhty\"/\"unhealthy\") and see
the\r\nflyout. If the enrollment was successful, you should see some
cards and\r\nbuttons that link to internal and external links in
kibana\r\n\r\n<img width=\"878\" alt=\"Screenshot 2024-12-16 at 16 21
57\"\r\nsrc=\"https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e\"\r\n/>\r\n\r\n###
Testing the connector cards\r\n- First create a new connector: go
to\r\n`app/elasticsearch/content/connectors` and click on \"new
connector\". For\r\nthis purpose there's no need to complete the
procedure\r\n- Note down the name and id of the connector\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca\"\r\n/>\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db\"\r\n/>\r\n-
Go back to the integration policy previously installed. Enable
the\r\n\"Test Connector\" input and add the name and id from above.\r\n-
The agentless flyout should now have a card that will link the user
to\r\n`app/elasticsearch/content/connectors/<id>`\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or
tutorials\r\n\r\n---------\r\n\r\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"790c58932f797f338b10a7d6a93627313c42671e","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Fleet","v9.0.0","release_note:feature","backport:prev-minor","v8.18.0"],"title":"[Fleet]
Display next steps and actions in agentless integrations
flyout","number":203824,"url":"https://github.com/elastic/kibana/pull/203824","mergeCommit":{"message":"[Fleet]
Display next steps and actions in agentless integrations flyout
(#203824)\n\n## Summary\r\n\r\nDisplay next steps and actions in
agentless integrations flyout. This PR\r\nis based off the following
changes:\r\n\r\n**Agentless flyout**\r\nIntroduced with
https://github.com/elastic/kibana/pull/199567\r\n\r\n**package-spec**\r\nThe
definitions for package-spec have been updated in these two PRs:\r\n-
https://github.com/elastic/package-spec/pull/834\r\n-
https://github.com/elastic/package-spec/pull/844\r\nAny agentless
package can now define internal links with format\r\n`kbn:/app/...` and
external links with format `https://...`. This PR\r\nshows a card or a
button linking to these urls in the new
agentless\r\nflyout\r\n\r\n**Connectors**\r\nAgentless integration now
expose connectors name and id in the package\r\npolicy (see
code\r\n[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)\r\nfor
elastic connectors integration).\r\n<img width=\"1003\" alt=\"Screenshot
2024-12-16 at 16 30
22\"\r\nsrc=\"https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26\"\r\n/>\r\n\r\nThis
PR creates a dynamic link to the connector configured in the
policy\r\nand shows it in the agentless flyout.\r\n\r\n### Testing\r\n-
First of all, enable agentless following the steps under `Testing`
in\r\n[ this PR](#199567). Follow
up to\r\nstep 3\r\n- Instead of installing CSPM, install this test
package\r\n[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)\r\nwith
the upload command\r\n```\r\ncurl -XPOST -H 'content-type:
application/zip' -H 'kbn-xsrf: true'
http://localhost:5601/YOURPATH/api/fleet/epm/packages -u
elastic:changeme --data-binary
@agentless_package_links-0.0.1.zip\r\n```\r\n- Once appears installed,
create a package policy with this new\r\nintegration. Make sure to
choose `agentless` as deployment mode\r\n<img width=\"1278\"
alt=\"Screenshot 2024-12-16 at 16 22
09\"\r\nsrc=\"https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951\"\r\n/>\r\n\r\n-
Enroll an agent to the newly created \"agentless\" policy by using
the\r\ntoken (it's available in the token page)\r\n- Go back to
integrations, you should see a page like this one:\r\n<img
width=\"1569\" alt=\"Screenshot 2024-12-16 at 16 38
18\"\r\nsrc=\"https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926\"\r\n/>\r\n\r\n-
Click on the state (\"pending\"/\"healhty\"/\"unhealthy\") and see
the\r\nflyout. If the enrollment was successful, you should see some
cards and\r\nbuttons that link to internal and external links in
kibana\r\n\r\n<img width=\"878\" alt=\"Screenshot 2024-12-16 at 16 21
57\"\r\nsrc=\"https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e\"\r\n/>\r\n\r\n###
Testing the connector cards\r\n- First create a new connector: go
to\r\n`app/elasticsearch/content/connectors` and click on \"new
connector\". For\r\nthis purpose there's no need to complete the
procedure\r\n- Note down the name and id of the connector\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca\"\r\n/>\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db\"\r\n/>\r\n-
Go back to the integration policy previously installed. Enable
the\r\n\"Test Connector\" input and add the name and id from above.\r\n-
The agentless flyout should now have a card that will link the user
to\r\n`app/elasticsearch/content/connectors/<id>`\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or
tutorials\r\n\r\n---------\r\n\r\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"790c58932f797f338b10a7d6a93627313c42671e"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/203824","number":203824,"mergeCommit":{"message":"[Fleet]
Display next steps and actions in agentless integrations flyout
(#203824)\n\n## Summary\r\n\r\nDisplay next steps and actions in
agentless integrations flyout. This PR\r\nis based off the following
changes:\r\n\r\n**Agentless flyout**\r\nIntroduced with
https://github.com/elastic/kibana/pull/199567\r\n\r\n**package-spec**\r\nThe
definitions for package-spec have been updated in these two PRs:\r\n-
https://github.com/elastic/package-spec/pull/834\r\n-
https://github.com/elastic/package-spec/pull/844\r\nAny agentless
package can now define internal links with format\r\n`kbn:/app/...` and
external links with format `https://...`. This PR\r\nshows a card or a
button linking to these urls in the new
agentless\r\nflyout\r\n\r\n**Connectors**\r\nAgentless integration now
expose connectors name and id in the package\r\npolicy (see
code\r\n[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)\r\nfor
elastic connectors integration).\r\n<img width=\"1003\" alt=\"Screenshot
2024-12-16 at 16 30
22\"\r\nsrc=\"https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26\"\r\n/>\r\n\r\nThis
PR creates a dynamic link to the connector configured in the
policy\r\nand shows it in the agentless flyout.\r\n\r\n### Testing\r\n-
First of all, enable agentless following the steps under `Testing`
in\r\n[ this PR](#199567). Follow
up to\r\nstep 3\r\n- Instead of installing CSPM, install this test
package\r\n[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)\r\nwith
the upload command\r\n```\r\ncurl -XPOST -H 'content-type:
application/zip' -H 'kbn-xsrf: true'
http://localhost:5601/YOURPATH/api/fleet/epm/packages -u
elastic:changeme --data-binary
@agentless_package_links-0.0.1.zip\r\n```\r\n- Once appears installed,
create a package policy with this new\r\nintegration. Make sure to
choose `agentless` as deployment mode\r\n<img width=\"1278\"
alt=\"Screenshot 2024-12-16 at 16 22
09\"\r\nsrc=\"https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951\"\r\n/>\r\n\r\n-
Enroll an agent to the newly created \"agentless\" policy by using
the\r\ntoken (it's available in the token page)\r\n- Go back to
integrations, you should see a page like this one:\r\n<img
width=\"1569\" alt=\"Screenshot 2024-12-16 at 16 38
18\"\r\nsrc=\"https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926\"\r\n/>\r\n\r\n-
Click on the state (\"pending\"/\"healhty\"/\"unhealthy\") and see
the\r\nflyout. If the enrollment was successful, you should see some
cards and\r\nbuttons that link to internal and external links in
kibana\r\n\r\n<img width=\"878\" alt=\"Screenshot 2024-12-16 at 16 21
57\"\r\nsrc=\"https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e\"\r\n/>\r\n\r\n###
Testing the connector cards\r\n- First create a new connector: go
to\r\n`app/elasticsearch/content/connectors` and click on \"new
connector\". For\r\nthis purpose there's no need to complete the
procedure\r\n- Note down the name and id of the connector\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca\"\r\n/>\r\n<img
width=\"1789\" alt=\"Screenshot 2024-12-16 at 16 42
00\"\r\nsrc=\"https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db\"\r\n/>\r\n-
Go back to the integration policy previously installed. Enable
the\r\n\"Test Connector\" input and add the name and id from above.\r\n-
The agentless flyout should now have a card that will link the user
to\r\n`app/elasticsearch/content/connectors/<id>`\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or
tutorials\r\n\r\n---------\r\n\r\nCo-authored-by: Elastic Machine
<elasticmachine@users.noreply.github.com>\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"790c58932f797f338b10a7d6a93627313c42671e"}},{"branch":"8.x","label":"v8.18.0","branchLabelMappingKey":"^v8.18.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Cristina Amico <criamico@users.noreply.github.com>
JoseLuisGJ pushed a commit to JoseLuisGJ/kibana that referenced this pull request Dec 19, 2024
…ut (elastic#203824)

## Summary

Display next steps and actions in agentless integrations flyout. This PR
is based off the following changes:

**Agentless flyout**
Introduced with elastic#199567

**package-spec**
The definitions for package-spec have been updated in these two PRs:
- elastic/package-spec#834
- elastic/package-spec#844
Any agentless package can now define internal links with format
`kbn:/app/...` and external links with format `https://...`. This PR
shows a card or a button linking to these urls in the new agentless
flyout

**Connectors**
Agentless integration now expose connectors name and id in the package
policy (see code
[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)
for elastic connectors integration).
<img width="1003" alt="Screenshot 2024-12-16 at 16 30 22"
src="https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26"
/>

This PR creates a dynamic link to the connector configured in the policy
and shows it in the agentless flyout.

### Testing
- First of all, enable agentless following the steps under `Testing` in
[ this PR](elastic#199567). Follow up to
step 3
- Instead of installing CSPM, install this test package
[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)
with the upload command
```
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOURPATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.1.zip
```
- Once appears installed, create a package policy with this new
integration. Make sure to choose `agentless` as deployment mode
<img width="1278" alt="Screenshot 2024-12-16 at 16 22 09"
src="https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951"
/>

- Enroll an agent to the newly created "agentless" policy by using the
token (it's available in the token page)
- Go back to integrations, you should see a page like this one:
<img width="1569" alt="Screenshot 2024-12-16 at 16 38 18"
src="https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926"
/>

- Click on the state ("pending"/"healhty"/"unhealthy") and see the
flyout. If the enrollment was successful, you should see some cards and
buttons that link to internal and external links in kibana

<img width="878" alt="Screenshot 2024-12-16 at 16 21 57"
src="https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e"
/>

### Testing the connector cards
- First create a new connector: go to
`app/elasticsearch/content/connectors` and click on "new connector". For
this purpose there's no need to complete the procedure
- Note down the name and id of the connector
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca"
/>
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db"
/>
- Go back to the integration policy previously installed. Enable the
"Test Connector" input and add the name and id from above.
- The agentless flyout should now have a card that will link the user to
`app/elasticsearch/content/connectors/<id>`


### Checklist

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
CAWilson94 pushed a commit to CAWilson94/kibana that referenced this pull request Jan 13, 2025
…ut (elastic#203824)

## Summary

Display next steps and actions in agentless integrations flyout. This PR
is based off the following changes:

**Agentless flyout**
Introduced with elastic#199567

**package-spec**
The definitions for package-spec have been updated in these two PRs:
- elastic/package-spec#834
- elastic/package-spec#844
Any agentless package can now define internal links with format
`kbn:/app/...` and external links with format `https://...`. This PR
shows a card or a button linking to these urls in the new agentless
flyout

**Connectors**
Agentless integration now expose connectors name and id in the package
policy (see code
[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)
for elastic connectors integration).
<img width="1003" alt="Screenshot 2024-12-16 at 16 30 22"
src="https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26"
/>

This PR creates a dynamic link to the connector configured in the policy
and shows it in the agentless flyout.

### Testing
- First of all, enable agentless following the steps under `Testing` in
[ this PR](elastic#199567). Follow up to
step 3
- Instead of installing CSPM, install this test package
[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)
with the upload command
```
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOURPATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.1.zip
```
- Once appears installed, create a package policy with this new
integration. Make sure to choose `agentless` as deployment mode
<img width="1278" alt="Screenshot 2024-12-16 at 16 22 09"
src="https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951"
/>

- Enroll an agent to the newly created "agentless" policy by using the
token (it's available in the token page)
- Go back to integrations, you should see a page like this one:
<img width="1569" alt="Screenshot 2024-12-16 at 16 38 18"
src="https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926"
/>

- Click on the state ("pending"/"healhty"/"unhealthy") and see the
flyout. If the enrollment was successful, you should see some cards and
buttons that link to internal and external links in kibana

<img width="878" alt="Screenshot 2024-12-16 at 16 21 57"
src="https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e"
/>

### Testing the connector cards
- First create a new connector: go to
`app/elasticsearch/content/connectors` and click on "new connector". For
this purpose there's no need to complete the procedure
- Note down the name and id of the connector
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca"
/>
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db"
/>
- Go back to the integration policy previously installed. Enable the
"Test Connector" input and add the name and id from above.
- The agentless flyout should now have a card that will link the user to
`app/elasticsearch/content/connectors/<id>`


### Checklist

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
criamico added a commit that referenced this pull request Jan 23, 2025
Follow up of #203824

## Summary
This is a small bugfix for connectors not visible in agentless flyout.

## Testing

- Follow the steps here #203824
- Install elastic-connectors integration
`app/fleet/integrations/elastic_connectors-1.0.0/add-integration` and
enroll an agent to it
- The enabled connectors should be visible in the flyout

<img width="870" alt="Screenshot 2025-01-23 at 15 28 20"
src="https://github.com/user-attachments/assets/19cdcbc4-68d5-4e44-875e-15cd849ab84b"
/>
viduni94 pushed a commit to viduni94/kibana that referenced this pull request Jan 23, 2025
…ut (elastic#203824)

## Summary

Display next steps and actions in agentless integrations flyout. This PR
is based off the following changes:

**Agentless flyout**
Introduced with elastic#199567

**package-spec**
The definitions for package-spec have been updated in these two PRs:
- elastic/package-spec#834
- elastic/package-spec#844
Any agentless package can now define internal links with format
`kbn:/app/...` and external links with format `https://...`. This PR
shows a card or a button linking to these urls in the new agentless
flyout

**Connectors**
Agentless integration now expose connectors name and id in the package
policy (see code
[here](https://github.com/elastic/integrations/blob/69fd5a26c4d0a8e9e999c51fb49a2cf28c078dd2/packages/elastic_connectors/manifest.yml#L45-L62)
for elastic connectors integration).
<img width="1003" alt="Screenshot 2024-12-16 at 16 30 22"
src="https://github.com/user-attachments/assets/70b3471e-51bb-4e79-95a4-843e20128c26"
/>

This PR creates a dynamic link to the connector configured in the policy
and shows it in the agentless flyout.

### Testing
- First of all, enable agentless following the steps under `Testing` in
[ this PR](elastic#199567). Follow up to
step 3
- Instead of installing CSPM, install this test package
[agentless_package_links-0.0.1.zip](https://github.com/user-attachments/files/18152872/agentless_package_links-0.0.1.zip)
with the upload command
```
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOURPATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.1.zip
```
- Once appears installed, create a package policy with this new
integration. Make sure to choose `agentless` as deployment mode
<img width="1278" alt="Screenshot 2024-12-16 at 16 22 09"
src="https://github.com/user-attachments/assets/7104bf2a-e419-4efa-b352-278ad2057951"
/>

- Enroll an agent to the newly created "agentless" policy by using the
token (it's available in the token page)
- Go back to integrations, you should see a page like this one:
<img width="1569" alt="Screenshot 2024-12-16 at 16 38 18"
src="https://github.com/user-attachments/assets/de770984-985e-449e-b6e3-5c78eb5d3926"
/>

- Click on the state ("pending"/"healhty"/"unhealthy") and see the
flyout. If the enrollment was successful, you should see some cards and
buttons that link to internal and external links in kibana

<img width="878" alt="Screenshot 2024-12-16 at 16 21 57"
src="https://github.com/user-attachments/assets/c77b224f-882c-4d52-956a-744e94e36f1e"
/>

### Testing the connector cards
- First create a new connector: go to
`app/elasticsearch/content/connectors` and click on "new connector". For
this purpose there's no need to complete the procedure
- Note down the name and id of the connector
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/b60e491c-809a-40d5-8d01-12b225896fca"
/>
<img width="1789" alt="Screenshot 2024-12-16 at 16 42 00"
src="https://github.com/user-attachments/assets/1adc65e4-0b3b-4e03-9e65-5cc01385b0db"
/>
- Go back to the integration policy previously installed. Enable the
"Test Connector" input and add the name and id from above.
- The agentless flyout should now have a card that will link the user to
`app/elasticsearch/content/connectors/<id>`


### Checklist

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Jan 23, 2025
…208068)

Follow up of elastic#203824

## Summary
This is a small bugfix for connectors not visible in agentless flyout.

## Testing

- Follow the steps here elastic#203824
- Install elastic-connectors integration
`app/fleet/integrations/elastic_connectors-1.0.0/add-integration` and
enroll an agent to it
- The enabled connectors should be visible in the flyout

<img width="870" alt="Screenshot 2025-01-23 at 15 28 20"
src="https://github.com/user-attachments/assets/19cdcbc4-68d5-4e44-875e-15cd849ab84b"
/>

(cherry picked from commit 1b97e29)
qn895 pushed a commit to qn895/kibana that referenced this pull request Jan 23, 2025
…208068)

Follow up of elastic#203824

## Summary
This is a small bugfix for connectors not visible in agentless flyout.

## Testing

- Follow the steps here elastic#203824
- Install elastic-connectors integration
`app/fleet/integrations/elastic_connectors-1.0.0/add-integration` and
enroll an agent to it
- The enabled connectors should be visible in the flyout

<img width="870" alt="Screenshot 2025-01-23 at 15 28 20"
src="https://github.com/user-attachments/assets/19cdcbc4-68d5-4e44-875e-15cd849ab84b"
/>
JoseLuisGJ pushed a commit to JoseLuisGJ/kibana that referenced this pull request Jan 27, 2025
…208068)

Follow up of elastic#203824

## Summary
This is a small bugfix for connectors not visible in agentless flyout.

## Testing

- Follow the steps here elastic#203824
- Install elastic-connectors integration
`app/fleet/integrations/elastic_connectors-1.0.0/add-integration` and
enroll an agent to it
- The enabled connectors should be visible in the flyout

<img width="870" alt="Screenshot 2025-01-23 at 15 28 20"
src="https://github.com/user-attachments/assets/19cdcbc4-68d5-4e44-875e-15cd849ab84b"
/>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:prev-minor Backport to (9.0) the previous minor version (i.e. one version back from main) release_note:feature Makes this part of the condensed release notes Team:Fleet Team label for Observability Data Collection Fleet team v8.18.0 v9.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants