[8.x] [Inference Connector] Enable inference connector for ESS by default, disable it for Serverless (#209197) (#209865)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[Inference Connector] Enable inference connector for ESS by default,
disable it for Serverless
(#209197)](https://github.com/elastic/kibana/pull/209197)

<!--- Backport version: 9.6.4 -->

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

<!--BACKPORT [{"author":{"name":"Yuliia
Naumenko","email":"jo.naumenko@gmail.com"},"sourceCommit":{"committedDate":"2025-02-05T17:20:58Z","message":"[Inference
Connector] Enable inference connector for ESS by default, disable it for
Serverless (#209197)\n\n1. ECH/ESS: enable by default for 8.18\r\n2.
Serverless: disable by default until PC
approval","sha":"ba0b1eca91ab03b98c28d181923bc0e023ca9dc2","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:version","8.18
candidate","v8.18.0","v9.1.0","v8.19.0"],"title":"[Inference Connector]
Enable inference connector for ESS by default, disable it for
Serverless","number":209197,"url":"https://github.com/elastic/kibana/pull/209197","mergeCommit":{"message":"[Inference
Connector] Enable inference connector for ESS by default, disable it for
Serverless (#209197)\n\n1. ECH/ESS: enable by default for 8.18\r\n2.
Serverless: disable by default until PC
approval","sha":"ba0b1eca91ab03b98c28d181923bc0e023ca9dc2"}},"sourceBranch":"main","suggestedTargetBranches":["8.18","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"url":"https://github.com/elastic/kibana/pull/209850","number":209850,"state":"OPEN"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/209197","number":209197,"mergeCommit":{"message":"[Inference
Connector] Enable inference connector for ESS by default, disable it for
Serverless (#209197)\n\n1. ECH/ESS: enable by default for 8.18\r\n2.
Serverless: disable by default until PC
approval","sha":"ba0b1eca91ab03b98c28d181923bc0e023ca9dc2"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
This commit is contained in:
Yuliia Naumenko 2025-02-06 08:17:01 -08:00 committed by GitHub
parent 41dcdc8163
commit f655be3f06
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 10 additions and 2476 deletions

View file

@ -235,3 +235,5 @@ discover.enableUiSettingsValidations: true
xpack.dataUsage.enabled: true
# This feature is disabled in Serverless until fully tested within a Serverless environment
xpack.dataUsage.enableExperimental: ['dataUsageDisabled']
# This feature is disabled in Serverless until Inference Endpoint become enabled within a Serverless environment
xpack.stack_connectors.enableExperimental: ['inferenceConnectorOff']

View file

@ -52,7 +52,7 @@ describe('Connector type config checks', () => {
});
for (const connectorTypeId of connectorTypes) {
const skipConnectorType = ['.gen-ai'];
const skipConnectorType = ['.gen-ai', '.inference'];
if (skipConnectorType.includes(connectorTypeId)) {
continue;
}

View file

@ -15,7 +15,7 @@ export const allowedExperimentalValues = Object.freeze({
isMustacheAutocompleteOn: false,
sentinelOneConnectorOn: true,
crowdstrikeConnectorOn: true,
inferenceConnectorOn: true,
inferenceConnectorOff: false,
crowdstrikeConnectorRTROn: true,
microsoftDefenderEndpointOn: true,
});

View file

@ -82,7 +82,7 @@ export function registerConnectorTypes({
if (ExperimentalFeaturesService.get().crowdstrikeConnectorOn) {
connectorTypeRegistry.register(getCrowdStrikeConnectorType());
}
if (ExperimentalFeaturesService.get().inferenceConnectorOn) {
if (!ExperimentalFeaturesService.get().inferenceConnectorOff) {
connectorTypeRegistry.register(getInferenceConnectorType());
}
if (ExperimentalFeaturesService.get().microsoftDefenderEndpointOn) {

View file

@ -16,7 +16,9 @@ const ACTION_TYPE_ID = '.inference';
let actionTypeModel: ActionTypeModel;
beforeAll(() => {
ExperimentalFeaturesService.init({ experimentalFeatures: experimentalFeaturesMock });
ExperimentalFeaturesService.init({
experimentalFeatures: { ...experimentalFeaturesMock } as any,
});
const connectorTypeRegistry = new TypeRegistry<ActionTypeModel>();
registerConnectorTypes({ connectorTypeRegistry, services: registrationServicesMock });
const getResult = connectorTypeRegistry.get(ACTION_TYPE_ID);

View file

@ -121,7 +121,7 @@ export function registerConnectorTypes({
if (experimentalFeatures.crowdstrikeConnectorOn) {
actions.registerSubActionConnectorType(getCrowdstrikeConnectorType(experimentalFeatures));
}
if (experimentalFeatures.inferenceConnectorOn) {
if (!experimentalFeatures.inferenceConnectorOff) {
actions.registerSubActionConnectorType(getInferenceConnectorType());
}
if (experimentalFeatures.microsoftDefenderEndpointOn) {

View file

@ -31,6 +31,7 @@ export default function createRegisteredConnectorTypeTests({ getService }: FtrPr
'.d3security',
'.email',
'.index',
'.inference',
'.pagerduty',
'.swimlane',
'.server-log',
@ -53,7 +54,6 @@ export default function createRegisteredConnectorTypeTests({ getService }: FtrPr
'.gen-ai',
'.bedrock',
'.gemini',
'.inference',
'.sentinelone',
'.cases',
'.crowdstrike',

View file

@ -39,7 +39,6 @@ export default async function ({ readConfigFile }: FtrConfigProviderContext) {
`--xpack.stack_connectors.enableExperimental=${JSON.stringify([
'crowdstrikeConnectorOn',
'microsoftDefenderEndpointOn',
'inferenceConnectorOn',
])}`,
...findTestPluginPaths(path.resolve(__dirname, 'plugins')),
],