1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-24 01:18:01 +02:00

task: remove upgrade edge banner. (#8032)

All customers but one are now upgraded, and this banner no longer adds
value, we also have the outdated SDK banner, which can fill in if
needed.
This commit is contained in:
Christopher Kolstad 2024-09-02 10:50:19 +02:00 committed by GitHub
parent 2a6b2e98e0
commit 0f5e4dc96b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 8 additions and 103 deletions

View File

@ -19,7 +19,6 @@ import { styled } from '@mui/material';
import { InitialRedirect } from './InitialRedirect';
import { InternalBanners } from './banners/internalBanners/InternalBanners';
import { ExternalBanners } from './banners/externalBanners/ExternalBanners';
import { EdgeUpgradeBanner } from './banners/EdgeUpgradeBanner/EdgeUpgradeBanner';
import { LicenseBanner } from './banners/internalBanners/LicenseBanner';
import { Demo } from './demo/Demo';
@ -66,7 +65,6 @@ export const App = () => {
<LicenseBanner />
<ExternalBanners />
<InternalBanners />
<EdgeUpgradeBanner />
<StyledContainer>
<ToastRenderer />
<Routes>

View File

@ -1,22 +0,0 @@
import { useUiFlag } from 'hooks/useUiFlag';
import { ConditionallyRender } from '../../common/ConditionallyRender/ConditionallyRender';
import { Banner } from '../Banner/Banner';
import type { IBanner } from '../../../interfaces/banner';
export const EdgeUpgradeBanner = () => {
const displayUpgradeEdgeBanner = useUiFlag('displayUpgradeEdgeBanner');
const upgradeEdgeBanner: IBanner = {
message: `We noticed that an outdated Edge version is connected to this Unleash instance. To ensure you continue to receive metrics, we recommend upgrading to v17.0.0 or later.`,
link: 'https://github.com/Unleash/unleash-edge',
linkText: 'Get latest',
variant: 'warning',
};
return (
<>
<ConditionallyRender
condition={displayUpgradeEdgeBanner}
show={<Banner key={'upgradeEdge'} banner={upgradeEdgeBanner} />}
/>
</>
);
};

View File

@ -73,7 +73,6 @@ export type UiFlags = {
enableLicense?: boolean;
adminTokenKillSwitch?: boolean;
feedbackComments?: Variant;
displayUpgradeEdgeBanner?: boolean;
showInactiveUsers?: boolean;
featureSearchFeedbackPosting?: boolean;
userAccessUIEnabled?: boolean;

View File

@ -88,7 +88,6 @@ exports[`should create default config 1`] = `
"disablePublishUnannouncedEvents": false,
"disableShowContextFieldSelectionValues": false,
"disableUpdateMaxRevisionId": false,
"displayEdgeBanner": false,
"displayTrafficDataUsage": false,
"edgeBulkMetrics": false,
"embedProxy": true,

View File

@ -56,45 +56,3 @@ test('should get ui config', async () => {
expect(body.segmentValuesLimit).toEqual(DEFAULT_SEGMENT_VALUES_LIMIT);
expect(body.strategySegmentsLimit).toEqual(DEFAULT_STRATEGY_SEGMENTS_LIMIT);
});
describe('displayUpgradeEdgeBanner', () => {
test('ui config should have displayUpgradeEdgeBanner to be set if an instance using edge has been seen', async () => {
await stores.clientInstanceStore.insert({
appName: 'my-app',
instanceId: 'some-instance',
sdkVersion: 'unleash-edge:16.0.0',
});
const { body } = await request
.get(`${base}/api/admin/ui-config`)
.expect('Content-Type', /json/)
.expect(200);
expect(body.flags).toBeTruthy();
expect(body.flags.displayUpgradeEdgeBanner).toBeTruthy();
});
test('ui config should not get displayUpgradeEdgeBanner flag if edge >= 19.1.3 has been seen', async () => {
await stores.clientInstanceStore.insert({
appName: 'my-app',
instanceId: 'some-instance',
sdkVersion: 'unleash-edge:19.1.4',
});
const { body } = await request
.get(`${base}/api/admin/ui-config`)
.expect('Content-Type', /json/)
.expect(200);
expect(body.flags).toBeTruthy();
expect(body.flags.displayUpgradeEdgeBanner).toEqual(false);
});
test('ui config should not get displayUpgradeEdgeBanner flag if java-client has been seen', async () => {
await stores.clientInstanceStore.insert({
appName: 'my-app',
instanceId: 'some-instance',
sdkVersion: 'unleash-client-java:9.1.0',
});
const { body } = await request
.get(`${base}/api/admin/ui-config`)
.expect('Content-Type', /json/)
.expect(200);
expect(body.flags).toBeTruthy();
expect(body.flags.displayUpgradeEdgeBanner).toEqual(false);
});
});

View File

@ -25,8 +25,6 @@ import type { SetUiConfigSchema } from '../../openapi/spec/set-ui-config-schema'
import { createRequestSchema } from '../../openapi/util/create-request-schema';
import type { FrontendApiService } from '../../services';
import type MaintenanceService from '../../features/maintenance/maintenance-service';
import memoizee from 'memoizee';
import { minutesToMilliseconds } from 'date-fns';
import type ClientInstanceService from '../../features/metrics/instance/instance-service';
class ConfigController extends Controller {
@ -42,8 +40,6 @@ class ConfigController extends Controller {
private maintenanceService: MaintenanceService;
private usesOldEdgeFunction: () => Promise<boolean>;
private readonly openApiService: OpenApiService;
constructor(
@ -75,18 +71,6 @@ class ConfigController extends Controller {
this.frontendApiService = frontendApiService;
this.maintenanceService = maintenanceService;
this.clientInstanceService = clientInstanceService;
this.usesOldEdgeFunction = memoizee(
async () =>
this.clientInstanceService.usesSdkOlderThan(
'unleash-edge',
'19.1.3',
),
{
promise: true,
maxAge: minutesToMilliseconds(10),
},
);
this.route({
method: 'get',
path: '',
@ -129,17 +113,14 @@ class ConfigController extends Controller {
req: AuthedRequest,
res: Response<UiConfigSchema>,
): Promise<void> {
const [
frontendSettings,
simpleAuthSettings,
maintenanceMode,
usesOldEdge,
] = await Promise.all([
this.frontendApiService.getFrontendSettings(false),
this.settingService.get<SimpleAuthSettings>(simpleAuthSettingsKey),
this.maintenanceService.isMaintenanceMode(),
this.usesOldEdgeFunction(),
]);
const [frontendSettings, simpleAuthSettings, maintenanceMode] =
await Promise.all([
this.frontendApiService.getFrontendSettings(false),
this.settingService.get<SimpleAuthSettings>(
simpleAuthSettingsKey,
),
this.maintenanceService.isMaintenanceMode(),
]);
const disablePasswordAuth =
simpleAuthSettings?.disabled ||
@ -152,9 +133,6 @@ class ConfigController extends Controller {
const flags = {
...this.config.ui.flags,
...expFlags,
displayUpgradeEdgeBanner:
usesOldEdge ||
this.config.flagResolver.isEnabled('displayEdgeBanner'),
};
const response: UiConfigSchema = {

View File

@ -47,7 +47,6 @@ export type IFlagKey =
| 'disablePublishUnannouncedEvents'
| 'outdatedSdksBanner'
| 'responseTimeMetricsFix'
| 'displayEdgeBanner'
| 'disableShowContextFieldSelectionValues'
| 'projectOverviewRefactorFeedback'
| 'manyStrategiesPagination'
@ -238,10 +237,6 @@ const flags: IFlags = {
process.env.UNLEASH_EXPERIMENTAL_QUERY_MISSING_TOKENS,
false,
),
displayEdgeBanner: parseEnvVarBoolean(
process.env.UNLEASH_EXPERIMENTAL_DISPLAY_EDGE_BANNER,
false,
),
responseTimeMetricsFix: parseEnvVarBoolean(
process.env.UNLEASH_EXPERIMENTAL_RESPONSE_TIME_METRICS_FIX,
false,