Skip to content

Commit 4fbc834

Browse files
[Fleet] Sync integration categories and update tutorials and custom integrations (#153216)
## Summary Part of elastic/integrations#5123. This PR: 1) Syncs hardcoded list of integration categories against the latest list from [package spec](https://github.com/elastic/package-registry/blob/24557251ec27b4eb2caf715169301bbe15e01c21/categories/categories.yml) 2) Brings the categories used by the "home tutorial" cards and custom integrations cards in line with the above PR --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
1 parent 782a3d5 commit 4fbc834

File tree

117 files changed

+298
-183
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

117 files changed

+298
-183
lines changed

src/plugins/custom_integrations/common/index.ts

Lines changed: 50 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -15,42 +15,74 @@ export const PLUGIN_NAME = 'customIntegrations';
1515
export const INTEGRATION_CATEGORY_DISPLAY: {
1616
[key: string]: { title: string; parent_id?: string };
1717
} = {
18+
analytics_engine: { title: 'Analytics Engine', parent_id: 'observability' },
19+
application_observability: { title: 'Application', parent_id: 'observability' },
20+
app_search: { title: 'Application Search', parent_id: 'enterprise_search' },
21+
auditd: { title: 'AuditD', parent_id: 'security' },
22+
authentication: { title: 'Authentication', parent_id: 'security' },
1823
aws: { title: 'AWS', parent_id: undefined },
1924
azure: { title: 'Azure', parent_id: undefined },
25+
big_data: { title: 'Big Data', parent_id: 'observability' },
26+
cdn_security: { title: 'Content Delivery Network', parent_id: 'security' },
2027
cloud: { title: 'Cloud', parent_id: undefined },
2128
config_management: { title: 'Config management', parent_id: undefined },
29+
connector: { title: 'Connector', parent_id: 'enterprise_search' },
30+
connector_client: { title: 'Connector Client', parent_id: 'enterprise_search' },
31+
connector_package: { title: 'Connector Package', parent_id: 'enterprise_search' },
2232
containers: { title: 'Containers', parent_id: undefined },
33+
content_source: { title: 'Content Source', parent_id: 'enterprise_search' },
34+
crawler: { title: 'Crawler', parent_id: 'enterprise_search' },
35+
credential_management: { title: 'Credential Management', parent_id: 'security' },
2336
crm: { title: 'CRM', parent_id: undefined },
2437
custom: { title: 'Custom', parent_id: undefined },
25-
datastore: { title: 'Datastore', parent_id: undefined },
38+
custom_logs: { title: 'Custom Logs', parent_id: 'custom' },
39+
database_security: { title: 'Database', parent_id: 'security' },
40+
datastore: { title: 'Database', parent_id: undefined },
41+
dns_security: { title: 'DNS', parent_id: 'security' },
42+
edr_xdr: { title: 'EDR/XDR', parent_id: 'security' },
43+
elasticsearch_sdk: { title: 'Elasticsearch SDK', parent_id: undefined },
2644
elastic_stack: { title: 'Elastic Stack', parent_id: undefined },
45+
email_security: { title: 'Email', parent_id: 'security' },
46+
enterprise_search: { title: 'Enterprise Search', parent_id: undefined },
47+
firewall_security: { title: 'Firewall', parent_id: 'security' },
2748
google_cloud: { title: 'Google Cloud', parent_id: undefined },
49+
iam: { title: 'Identity and Access Management', parent_id: 'security' },
50+
ids_ips: { title: 'IDS/IPS', parent_id: 'security' },
2851
infrastructure: { title: 'Infrastructure', parent_id: undefined },
29-
kubernetes: { title: 'Kubernetes', parent_id: undefined },
52+
java_observability: { title: 'Java', parent_id: 'observability' },
53+
kubernetes: { title: 'Kubernetes', parent_id: 'observability' },
54+
language_client: { title: 'Language Client', parent_id: 'enterprise_search' },
3055
languages: { title: 'Languages', parent_id: undefined },
31-
message_queue: { title: 'Message queue', parent_id: undefined },
32-
microsoft_365: { title: 'Microsoft 365', parent_id: undefined },
33-
monitoring: { title: 'Monitoring', parent_id: undefined },
56+
load_balancer: { title: 'Load Balancer', parent_id: 'observability' },
57+
message_queue: { title: 'Message Broker', parent_id: 'observability' },
58+
monitoring: { title: 'Monitoring', parent_id: 'observability' },
59+
native_search: { title: 'Native Search', parent_id: 'enterprise_search' },
3460
network: { title: 'Network', parent_id: undefined },
35-
notification: { title: 'Notification', parent_id: undefined },
36-
os_system: { title: 'OS & System', parent_id: undefined },
61+
network_security: { title: 'Network', parent_id: 'security' },
62+
notification: { title: 'Notification', parent_id: 'observability' },
63+
observability: { title: 'Observability', parent_id: undefined },
64+
os_system: { title: 'Operating Systems', parent_id: undefined },
65+
process_manager: { title: 'Process Manager', parent_id: 'observability' },
3766
productivity: { title: 'Productivity', parent_id: undefined },
67+
productivity_security: { title: 'Productivity', parent_id: 'security' },
68+
proxy_security: { title: 'Proxy', parent_id: 'security' },
69+
sdk_search: { title: 'SDK', parent_id: 'enterprise_search' },
3870
security: { title: 'Security', parent_id: undefined },
39-
sample_data: { title: 'Sample data', parent_id: undefined },
71+
stream_processing: { title: 'Stream Processing', parent_id: 'observability' },
4072
support: { title: 'Support', parent_id: undefined },
41-
threat_intel: { title: 'Threat intelligence', parent_id: undefined },
73+
threat_intel: { title: 'Threat Intelligence', parent_id: 'security' },
4274
ticketing: { title: 'Ticketing', parent_id: undefined },
43-
version_control: { title: 'Version control', parent_id: undefined },
44-
web: { title: 'Web', parent_id: undefined },
75+
version_control: { title: 'Version Control', parent_id: undefined },
76+
virtualization: { title: 'Virtualization Platform', parent_id: 'observability' },
77+
vpn_security: { title: 'VPN', parent_id: 'security' },
78+
vulnerability_management: { title: 'Vulnerability Management', parent_id: 'security' },
79+
web: { title: 'Web Server', parent_id: 'observability' },
80+
web_application_firewall: { title: 'Web Application Firewall', parent_id: 'security' },
81+
websphere: { title: 'WebSphere Application Server', parent_id: 'observability' },
82+
workplace_search: { title: 'Workplace Search', parent_id: 'enterprise_search' },
4583

4684
// Kibana added
47-
communications: { title: 'Communications', parent_id: undefined },
48-
enterprise_search: { title: 'Enterprise search', parent_id: undefined },
49-
file_storage: { title: 'File storage', parent_id: undefined },
50-
language_client: { title: 'Language client', parent_id: undefined },
51-
upload_file: { title: 'Upload a file', parent_id: undefined },
52-
website_search: { title: 'Website search', parent_id: undefined },
53-
geo: { title: 'Geo', parent_id: undefined },
85+
apm: { title: 'APM', parent_id: undefined },
5486
};
5587

5688
// featured integrations will be brought to the top of the search results for

src/plugins/custom_integrations/server/custom_integration_registry.test.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ describe('CustomIntegrationsRegistry', () => {
2121
uiInternalPath: '/path/to/foo',
2222
isBeta: false,
2323
icons: [],
24-
categories: ['upload_file'],
24+
categories: ['apm'],
2525
shipper: 'tests',
2626
};
2727

@@ -49,11 +49,11 @@ describe('CustomIntegrationsRegistry', () => {
4949
const registry = new CustomIntegrationRegistry(mockLogger, true);
5050
registry.registerCustomIntegration({
5151
...integration,
52-
categories: ['upload_file', 'foobar'] as IntegrationCategory[],
52+
categories: ['apm', 'foobar'] as IntegrationCategory[],
5353
});
5454
expect(registry.getAppendCustomIntegrations()).toEqual([
5555
{
56-
categories: ['upload_file'],
56+
categories: ['apm'],
5757
description: 'test integration',
5858
icons: [],
5959
id: 'foo',
@@ -74,7 +74,7 @@ describe('CustomIntegrationsRegistry', () => {
7474
registry.registerCustomIntegration({ ...integration, id: 'bar' });
7575
expect(registry.getAppendCustomIntegrations()).toEqual([
7676
{
77-
categories: ['upload_file'],
77+
categories: ['apm'],
7878
description: 'test integration',
7979
icons: [],
8080
id: 'foo',
@@ -85,7 +85,7 @@ describe('CustomIntegrationsRegistry', () => {
8585
uiInternalPath: '/path/to/foo',
8686
},
8787
{
88-
categories: ['upload_file'],
88+
categories: ['apm'],
8989
description: 'test integration',
9090
icons: [],
9191
id: 'bar',
@@ -103,7 +103,7 @@ describe('CustomIntegrationsRegistry', () => {
103103
registry.registerCustomIntegration(integration);
104104
expect(registry.getAppendCustomIntegrations()).toEqual([
105105
{
106-
categories: ['upload_file'],
106+
categories: ['apm'],
107107
description: 'test integration',
108108
icons: [],
109109
id: 'foo',
@@ -122,7 +122,7 @@ describe('CustomIntegrationsRegistry', () => {
122122

123123
expect(registry.getAppendCustomIntegrations()).toEqual([
124124
{
125-
categories: ['upload_file'],
125+
categories: ['apm'],
126126
description: 'test integration',
127127
icons: [],
128128
id: 'foo',
@@ -149,7 +149,7 @@ describe('CustomIntegrationsRegistry', () => {
149149
registry.registerCustomIntegration({ ...integration, id: 'bar', eprOverlap: 'aws' });
150150
expect(registry.getReplacementCustomIntegrations()).toEqual([
151151
{
152-
categories: ['upload_file'],
152+
categories: ['apm'],
153153
description: 'test integration',
154154
icons: [],
155155
id: 'bar',

src/plugins/custom_integrations/server/external_integration/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export const integrations: ExternalIntegration[] = [
3333
'Collect logs using AWS Lambda application available in AWS Serverless Application Repository.',
3434
}),
3535
docUrlTemplate: `https://serverlessrepo.aws.amazon.com/applications/eu-central-1/267093732750/elastic-serverless-forwarder`,
36-
categories: ['aws', 'custom'],
36+
categories: ['aws', 'observability'],
3737
},
3838
];
3939

src/plugins/custom_integrations/server/language_clients/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export function registerLanguageClients(
4545
integration.docUrlTemplate.replace('{branch}', branch === 'main' ? 'master' : branch),
4646
isBeta: false,
4747
icons,
48-
categories: ['elastic_stack', 'custom', 'language_client'],
48+
categories: ['elastic_stack', 'elasticsearch_sdk'],
4949
});
5050
});
5151
}

src/plugins/custom_integrations/server/plugin.test.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ describe('CustomIntegrationsPlugin', () => {
4040
uiInternalPath: '/app/integrations/language_clients/javascript/overview',
4141
isBeta: false,
4242
icons: [{ type: 'svg', src: undefined }],
43-
categories: ['elastic_stack', 'custom', 'language_client'],
43+
categories: ['elastic_stack', 'elasticsearch_sdk'],
4444
},
4545
{
4646
id: 'language_client.ruby',
@@ -51,7 +51,7 @@ describe('CustomIntegrationsPlugin', () => {
5151
uiInternalPath: '/app/integrations/language_clients/ruby/overview',
5252
isBeta: false,
5353
icons: [{ type: 'svg', src: undefined }],
54-
categories: ['elastic_stack', 'custom', 'language_client'],
54+
categories: ['elastic_stack', 'elasticsearch_sdk'],
5555
},
5656
{
5757
id: 'language_client.go',
@@ -62,7 +62,7 @@ describe('CustomIntegrationsPlugin', () => {
6262
uiInternalPath: '/app/integrations/language_clients/go/overview',
6363
isBeta: false,
6464
icons: [{ type: 'svg', src: undefined }],
65-
categories: ['elastic_stack', 'custom', 'language_client'],
65+
categories: ['elastic_stack', 'elasticsearch_sdk'],
6666
},
6767
{
6868
id: 'language_client.dotnet',
@@ -73,7 +73,7 @@ describe('CustomIntegrationsPlugin', () => {
7373
uiInternalPath: '/app/integrations/language_clients/dotnet/overview',
7474
isBeta: false,
7575
icons: [{ type: 'svg', src: undefined }],
76-
categories: ['elastic_stack', 'custom', 'language_client'],
76+
categories: ['elastic_stack', 'elasticsearch_sdk'],
7777
},
7878
{
7979
id: 'language_client.php',
@@ -84,7 +84,7 @@ describe('CustomIntegrationsPlugin', () => {
8484
uiInternalPath: '/app/integrations/language_clients/php/overview',
8585
isBeta: false,
8686
icons: [{ type: 'svg', src: undefined }],
87-
categories: ['elastic_stack', 'custom', 'language_client'],
87+
categories: ['elastic_stack', 'elasticsearch_sdk'],
8888
},
8989
{
9090
id: 'language_client.perl',
@@ -96,7 +96,7 @@ describe('CustomIntegrationsPlugin', () => {
9696
'https://www.elastic.co/guide/en/elasticsearch/client/perl-api/branch/index.html',
9797
isBeta: false,
9898
icons: [{ type: 'svg', src: undefined }],
99-
categories: ['elastic_stack', 'custom', 'language_client'],
99+
categories: ['elastic_stack', 'elasticsearch_sdk'],
100100
},
101101
{
102102
id: 'language_client.python',
@@ -107,7 +107,7 @@ describe('CustomIntegrationsPlugin', () => {
107107
uiInternalPath: '/app/integrations/language_clients/python/overview',
108108
isBeta: false,
109109
icons: [{ type: 'svg', src: undefined }],
110-
categories: ['elastic_stack', 'custom', 'language_client'],
110+
categories: ['elastic_stack', 'elasticsearch_sdk'],
111111
},
112112
{
113113
id: 'language_client.rust',
@@ -119,7 +119,7 @@ describe('CustomIntegrationsPlugin', () => {
119119
'https://www.elastic.co/guide/en/elasticsearch/client/rust-api/branch/index.html',
120120
isBeta: false,
121121
icons: [{ type: 'svg', src: undefined }],
122-
categories: ['elastic_stack', 'custom', 'language_client'],
122+
categories: ['elastic_stack', 'elasticsearch_sdk'],
123123
},
124124
{
125125
id: 'language_client.java',
@@ -130,7 +130,7 @@ describe('CustomIntegrationsPlugin', () => {
130130
uiInternalPath: '/app/integrations/language_clients/java/overview',
131131
isBeta: false,
132132
icons: [{ type: 'svg', src: undefined }],
133-
categories: ['elastic_stack', 'custom', 'language_client'],
133+
categories: ['elastic_stack', 'elasticsearch_sdk'],
134134
},
135135
{
136136
id: 'placeholder.esf',
@@ -144,7 +144,7 @@ describe('CustomIntegrationsPlugin', () => {
144144
'https://serverlessrepo.aws.amazon.com/applications/eu-central-1/267093732750/elastic-serverless-forwarder',
145145
isBeta: false,
146146
icons: [{ type: 'svg', src: undefined }],
147-
categories: ['aws', 'custom'],
147+
categories: ['aws', 'observability'],
148148
},
149149
]);
150150
});

src/plugins/home/server/services/sample_data/lib/register_with_integrations.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export function registerSampleDatasetWithIntegration(
2727
uiInternalPath: `${HOME_APP_BASE_PATH}#/tutorial_directory/sampleData`,
2828
isBeta: false,
2929
icons: [{ type: 'svg', src: core.http.basePath.prepend(GLOBE_ICON_PATH) }],
30-
categories: ['sample_data'],
30+
categories: ['custom'],
3131
shipper: 'sample_data',
3232
});
3333
}

src/plugins/home/server/tutorials/activemq_logs/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,6 @@ export function activemqLogsSpecProvider(context: TutorialContext): TutorialSche
5858
onPrem: onPremInstructions(moduleName, platforms, context),
5959
elasticCloud: cloudInstructions(moduleName, platforms, context),
6060
onPremElasticCloud: onPremCloudInstructions(moduleName, platforms, context),
61-
integrationBrowserCategories: ['web'],
61+
integrationBrowserCategories: ['observability'],
6262
};
6363
}

src/plugins/home/server/tutorials/activemq_metrics/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,6 @@ export function activemqMetricsSpecProvider(context: TutorialContext): TutorialS
5757
elasticCloud: cloudInstructions(moduleName, context),
5858
onPremElasticCloud: onPremCloudInstructions(moduleName, context),
5959

60-
integrationBrowserCategories: ['web'],
60+
integrationBrowserCategories: ['observability'],
6161
};
6262
}

src/plugins/home/server/tutorials/aerospike_metrics/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,6 @@ export function aerospikeMetricsSpecProvider(context: TutorialContext): Tutorial
5656
onPrem: onPremInstructions(moduleName, context),
5757
elasticCloud: cloudInstructions(moduleName, context),
5858
onPremElasticCloud: onPremCloudInstructions(moduleName, context),
59-
integrationBrowserCategories: ['web'],
59+
integrationBrowserCategories: ['observability', 'datastore'],
6060
};
6161
}

src/plugins/home/server/tutorials/apache_logs/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,6 @@ export function apacheLogsSpecProvider(context: TutorialContext): TutorialSchema
5959
onPrem: onPremInstructions(moduleName, platforms, context),
6060
elasticCloud: cloudInstructions(moduleName, platforms, context),
6161
onPremElasticCloud: onPremCloudInstructions(moduleName, platforms, context),
62-
integrationBrowserCategories: ['web'],
62+
integrationBrowserCategories: ['observabilty', 'web'],
6363
};
6464
}

0 commit comments

Comments
 (0)