mirror of
https://github.com/Unleash/unleash.git
synced 2025-07-07 01:16:28 +02:00
feat: remove feature flag for datadog json template (#5105)
## About the changes Removes the feature flag for the datadog json template
This commit is contained in:
parent
d013867f0f
commit
6fe4740e67
@ -2,7 +2,6 @@ import { ChangeEventHandler } from 'react';
|
|||||||
import { StyledAddonParameterContainer } from '../../IntegrationForm.styles';
|
import { StyledAddonParameterContainer } from '../../IntegrationForm.styles';
|
||||||
import type { AddonParameterSchema, AddonSchema } from 'openapi';
|
import type { AddonParameterSchema, AddonSchema } from 'openapi';
|
||||||
import { IntegrationParameterTextField } from './IntegrationParameterTextField';
|
import { IntegrationParameterTextField } from './IntegrationParameterTextField';
|
||||||
import { useUiFlag } from 'hooks/useUiFlag';
|
|
||||||
|
|
||||||
export interface IIntegrationParameterProps {
|
export interface IIntegrationParameterProps {
|
||||||
parametersErrors: Record<string, string>;
|
parametersErrors: Record<string, string>;
|
||||||
@ -17,15 +16,6 @@ export const IntegrationParameter = ({
|
|||||||
parametersErrors,
|
parametersErrors,
|
||||||
setParameterValue,
|
setParameterValue,
|
||||||
}: IIntegrationParameterProps) => {
|
}: IIntegrationParameterProps) => {
|
||||||
const datadogJson = useUiFlag('datadogJsonTemplate');
|
|
||||||
if (
|
|
||||||
config.provider === 'datadog' &&
|
|
||||||
definition.name === 'bodyTemplate' &&
|
|
||||||
!datadogJson
|
|
||||||
) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<StyledAddonParameterContainer>
|
<StyledAddonParameterContainer>
|
||||||
<IntegrationParameterTextField
|
<IntegrationParameterTextField
|
||||||
|
@ -66,7 +66,6 @@ export type UiFlags = {
|
|||||||
variantTypeNumber?: boolean;
|
variantTypeNumber?: boolean;
|
||||||
privateProjects?: boolean;
|
privateProjects?: boolean;
|
||||||
accessOverview?: boolean;
|
accessOverview?: boolean;
|
||||||
datadogJsonTemplate?: boolean;
|
|
||||||
dependentFeatures?: boolean;
|
dependentFeatures?: boolean;
|
||||||
banners?: boolean;
|
banners?: boolean;
|
||||||
disableEnvsOnRevive?: boolean;
|
disableEnvsOnRevive?: boolean;
|
||||||
|
@ -76,7 +76,6 @@ exports[`should create default config 1`] = `
|
|||||||
"banners": false,
|
"banners": false,
|
||||||
"caseInsensitiveInOperators": false,
|
"caseInsensitiveInOperators": false,
|
||||||
"customRootRolesKillSwitch": false,
|
"customRootRolesKillSwitch": false,
|
||||||
"datadogJsonTemplate": false,
|
|
||||||
"demo": false,
|
"demo": false,
|
||||||
"dependentFeatures": false,
|
"dependentFeatures": false,
|
||||||
"disableBulkToggle": false,
|
"disableBulkToggle": false,
|
||||||
|
@ -39,11 +39,6 @@ test('Should call datadog webhook', async () => {
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 1,
|
id: 1,
|
||||||
@ -73,11 +68,6 @@ test('Should call datadog webhook for archived toggle', async () => {
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -105,11 +95,6 @@ test('Should call datadog webhook for archived toggle with project info', async
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -138,11 +123,6 @@ test('Should call datadog webhook for toggled environment', async () => {
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -173,11 +153,6 @@ test('Should include customHeaders in headers when calling service', async () =>
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -209,11 +184,6 @@ test('Should not include source_type_name when included in the config', async ()
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(false),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 2,
|
id: 2,
|
||||||
@ -248,11 +218,6 @@ test('Should call datadog webhook with JSON when template set', async () => {
|
|||||||
const addon = new DatadogAddon({
|
const addon = new DatadogAddon({
|
||||||
getLogger: noLogger,
|
getLogger: noLogger,
|
||||||
unleashUrl: 'http://some-url.com',
|
unleashUrl: 'http://some-url.com',
|
||||||
flagResolver: {
|
|
||||||
getAll: jest.fn().mockReturnValue([]),
|
|
||||||
getVariant: jest.fn(),
|
|
||||||
isEnabled: jest.fn().mockReturnValue(true),
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
const event: IEvent = {
|
const event: IEvent = {
|
||||||
id: 1,
|
id: 1,
|
||||||
|
@ -26,22 +26,15 @@ interface DDRequestBody {
|
|||||||
source_type_name?: string;
|
source_type_name?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface IDatadogAddonConfig extends IAddonConfig {
|
|
||||||
flagResolver: IFlagResolver;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default class DatadogAddon extends Addon {
|
export default class DatadogAddon extends Addon {
|
||||||
private msgFormatter: FeatureEventFormatter;
|
private msgFormatter: FeatureEventFormatter;
|
||||||
|
|
||||||
private flagResolver: IFlagResolver;
|
constructor(config: IAddonConfig) {
|
||||||
|
|
||||||
constructor(config: IDatadogAddonConfig) {
|
|
||||||
super(definition, config);
|
super(definition, config);
|
||||||
this.msgFormatter = new FeatureEventFormatterMd(
|
this.msgFormatter = new FeatureEventFormatterMd(
|
||||||
config.unleashUrl,
|
config.unleashUrl,
|
||||||
LinkStyle.MD,
|
LinkStyle.MD,
|
||||||
);
|
);
|
||||||
this.flagResolver = config.flagResolver;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async handleEvent(
|
async handleEvent(
|
||||||
@ -61,11 +54,7 @@ export default class DatadogAddon extends Addon {
|
|||||||
};
|
};
|
||||||
|
|
||||||
let text;
|
let text;
|
||||||
if (
|
if (typeof bodyTemplate === 'string' && bodyTemplate.length > 1) {
|
||||||
this.flagResolver.isEnabled('datadogJsonTemplate') &&
|
|
||||||
typeof bodyTemplate === 'string' &&
|
|
||||||
bodyTemplate.length > 1
|
|
||||||
) {
|
|
||||||
text = Mustache.render(bodyTemplate, context);
|
text = Mustache.render(bodyTemplate, context);
|
||||||
} else {
|
} else {
|
||||||
text = `%%% \n ${this.msgFormatter.format(event).text} \n %%% `;
|
text = `%%% \n ${this.msgFormatter.format(event).text} \n %%% `;
|
||||||
|
@ -21,7 +21,7 @@ export const getAddons: (args: {
|
|||||||
new SlackAddon({ getLogger, unleashUrl }),
|
new SlackAddon({ getLogger, unleashUrl }),
|
||||||
new SlackAppAddon({ getLogger, unleashUrl }),
|
new SlackAppAddon({ getLogger, unleashUrl }),
|
||||||
new TeamsAddon({ getLogger, unleashUrl }),
|
new TeamsAddon({ getLogger, unleashUrl }),
|
||||||
new DatadogAddon({ getLogger, unleashUrl, flagResolver }),
|
new DatadogAddon({ getLogger, unleashUrl }),
|
||||||
];
|
];
|
||||||
|
|
||||||
return addons.reduce((map, addon) => {
|
return addons.reduce((map, addon) => {
|
||||||
|
@ -29,7 +29,6 @@ export type IFlagKey =
|
|||||||
| 'accessOverview'
|
| 'accessOverview'
|
||||||
| 'privateProjects'
|
| 'privateProjects'
|
||||||
| 'dependentFeatures'
|
| 'dependentFeatures'
|
||||||
| 'datadogJsonTemplate'
|
|
||||||
| 'disableMetrics'
|
| 'disableMetrics'
|
||||||
| 'useLastSeenRefactor'
|
| 'useLastSeenRefactor'
|
||||||
| 'banners'
|
| 'banners'
|
||||||
@ -141,10 +140,6 @@ const flags: IFlags = {
|
|||||||
process.env.UNLEASH_EXPERIMENTAL_ACCESS_OVERVIEW,
|
process.env.UNLEASH_EXPERIMENTAL_ACCESS_OVERVIEW,
|
||||||
false,
|
false,
|
||||||
),
|
),
|
||||||
datadogJsonTemplate: parseEnvVarBoolean(
|
|
||||||
process.env.UNLEASH_EXPERIMENTAL_DATADOG_JSON_TEMPLATE,
|
|
||||||
false,
|
|
||||||
),
|
|
||||||
disableMetrics: parseEnvVarBoolean(
|
disableMetrics: parseEnvVarBoolean(
|
||||||
process.env.UNLEASH_EXPERIMENTAL_DISABLE_METRICS,
|
process.env.UNLEASH_EXPERIMENTAL_DISABLE_METRICS,
|
||||||
false,
|
false,
|
||||||
|
@ -43,7 +43,6 @@ process.nextTick(async () => {
|
|||||||
variantTypeNumber: true,
|
variantTypeNumber: true,
|
||||||
privateProjects: true,
|
privateProjects: true,
|
||||||
accessOverview: true,
|
accessOverview: true,
|
||||||
datadogJsonTemplate: true,
|
|
||||||
dependentFeatures: true,
|
dependentFeatures: true,
|
||||||
useLastSeenRefactor: true,
|
useLastSeenRefactor: true,
|
||||||
disableEnvsOnRevive: true,
|
disableEnvsOnRevive: true,
|
||||||
|
Loading…
Reference in New Issue
Block a user