diff --git a/cluster/pulumi/common/src/index.ts b/cluster/pulumi/common/src/index.ts index 2c66af56cb..5f9a04b202 100644 --- a/cluster/pulumi/common/src/index.ts +++ b/cluster/pulumi/common/src/index.ts @@ -24,7 +24,6 @@ export * from './dockerConfig'; export * from './serviceAccount'; export * from './participantKms'; export * from './config/migrationSchema'; -export * from './postgres'; export * from './pruning'; export * from './config/loadTesterConfig'; export * from './config/networkWideConfig'; diff --git a/cluster/pulumi/common/src/postgres.ts b/cluster/pulumi/common/src/postgres.ts index 26421f4176..c20bb18ba8 100644 --- a/cluster/pulumi/common/src/postgres.ts +++ b/cluster/pulumi/common/src/postgres.ts @@ -65,12 +65,7 @@ export class CloudPostgres extends pulumi.ComponentResource implements Postgres secretName: string, cloudSqlConfig: CloudSqlConfig, active: boolean = true, - opts: { - disableProtection?: boolean; - migrationId?: string; - logicalDecoding?: boolean; - disableBackups?: boolean; - } = {} + opts: { disableProtection?: boolean; migrationId?: string; logicalDecoding?: boolean } = {} ) { const instanceLogicalName = xns.logicalName + '-' + instanceName; const instanceLogicalNameAlias = xns.logicalName + '-' + alias; // pulumi name before #12391 @@ -98,8 +93,8 @@ export class CloudPostgres extends pulumi.ComponentResource implements Postgres ...(opts.logicalDecoding ? [{ name: 'cloudsql.logical_decoding', value: 'on' }] : []), ], backupConfiguration: { - enabled: !opts.disableBackups, - pointInTimeRecoveryEnabled: !opts.disableBackups, + enabled: true, + pointInTimeRecoveryEnabled: true, ...(spliceConfig.pulumiProjectConfig.cloudSql.backupsToRetain ? { backupRetentionSettings: { diff --git a/cluster/pulumi/gha/src/performanceTests.ts b/cluster/pulumi/gha/src/performanceTests.ts deleted file mode 100644 index 0677b50292..0000000000 --- a/cluster/pulumi/gha/src/performanceTests.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2024 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved. -// SPDX-License-Identifier: Apache-2.0 -import { CloudPostgres, ExactNamespace } from '@lfdecentralizedtrust/splice-pulumi-common'; - -export function createCloudSQLInstanceForPerformanceTests( - ghaNamespace: ExactNamespace -): CloudPostgres { - return new CloudPostgres( - ghaNamespace, - 'performance-test-db', - 'performance-test-db', - 'performance-test-db-secret', - { - enabled: true, - maintenanceWindow: { day: 2, hour: 8 }, - protected: false, - tier: 'db-custom-2-7680', // same as devnet & testnet as of Jan 2026 - enterprisePlus: false, - }, - true, - { - disableProtection: true, - disableBackups: true, - logicalDecoding: false, - } - ); -} diff --git a/cluster/pulumi/gha/src/runners.test.ts b/cluster/pulumi/gha/src/runners.test.ts index 516cf795be..668889c260 100644 --- a/cluster/pulumi/gha/src/runners.test.ts +++ b/cluster/pulumi/gha/src/runners.test.ts @@ -15,7 +15,6 @@ jest.mock('./config', () => ({ runnerHookVersion: '1.1', }, })); -class FakeCloudPostgres extends pulumi.Resource {} jest.mock('@lfdecentralizedtrust/splice-pulumi-common', () => ({ __esModule: true, appsAffinityAndTolerations: {}, @@ -23,9 +22,6 @@ jest.mock('@lfdecentralizedtrust/splice-pulumi-common', () => ({ HELM_MAX_HISTORY_SIZE: 42, imagePullSecretByNamespaceNameForServiceAccount: () => [], infraAffinityAndTolerations: {}, - CloudPostgres: function CloudPostgres() { - return new FakeCloudPostgres('CloudPostgres', 'cloud-postgres', true); - }, })); jest.mock('@lfdecentralizedtrust/splice-pulumi-common/src/config/envConfig', () => ({ __esModule: true, diff --git a/cluster/pulumi/gha/src/runners.ts b/cluster/pulumi/gha/src/runners.ts index b4c604adec..71f1514c6d 100644 --- a/cluster/pulumi/gha/src/runners.ts +++ b/cluster/pulumi/gha/src/runners.ts @@ -3,9 +3,7 @@ import * as k8s from '@pulumi/kubernetes'; import { appsAffinityAndTolerations, - CloudPostgres, DOCKER_REPO, - ExactNamespace, HELM_MAX_HISTORY_SIZE, imagePullSecretByNamespaceNameForServiceAccount, infraAffinityAndTolerations, @@ -20,7 +18,6 @@ import yaml from 'js-yaml'; import { createCachePvc } from './cache'; import { ghaConfig } from './config'; -import { createCloudSQLInstanceForPerformanceTests } from './performanceTests'; type ResourcesSpec = { requests?: { @@ -406,8 +403,7 @@ function installK8sRunnerScaleSet( cachePvcName: string, resources: ResourcesSpec, serviceAccountName: string, - dependsOn: Resource[], - performanceTestsDb: CloudPostgres + dependsOn: Resource[] ): Release { const podConfigMapName = `${name}-pod-config`; // A configMap that will be mounted to runner pods and provide additional pod spec for the workflow pods @@ -538,23 +534,6 @@ function installK8sRunnerScaleSet( name: 'ACTIONS_RUNNER_CONTAINER_HOOK_TEMPLATE', value: '/pod.yaml', }, - { - name: 'PERFORMANCE_TESTS_DB_HOST', - value: performanceTestsDb.address, - }, - { - name: 'PERFORMANCE_TESTS_DB_USER', - value: 'cnadmin', - }, - { - name: 'PERFORMANCE_TESTS_DB_PASSWORD', - valueFrom: { - secretKeyRef: { - key: 'postgresPassword', - name: performanceTestsDb.secretName, - }, - }, - }, ], volumeMounts: [ { @@ -722,10 +701,9 @@ function installK8sRunnerScaleSets( runnersNamespace: Namespace, tokenSecret: Secret, cachePvcName: string, - serviceAccountName: string, - performanceTestsDb: CloudPostgres + serviceAccountName: string ): void { - const dependsOn = [controller, runnersNamespace, tokenSecret, performanceTestsDb]; + const dependsOn = [controller, runnersNamespace, tokenSecret]; runnerSpecs .filter(spec => spec.k8s) @@ -737,8 +715,7 @@ function installK8sRunnerScaleSets( cachePvcName, spec.resources, serviceAccountName, - dependsOn, - performanceTestsDb + dependsOn ); }); } @@ -777,17 +754,12 @@ function installPodMonitor(runnersNamespace: Namespace) { ); } -const GHA_NAMESPACE_NAME = 'gha-runners'; export function installRunnerScaleSets(controller: k8s.helm.v3.Release): void { - const runnersNamespace = new Namespace(GHA_NAMESPACE_NAME, { + const runnersNamespace = new Namespace('gha-runners', { metadata: { - name: GHA_NAMESPACE_NAME, + name: 'gha-runners', }, }); - const exactNs: ExactNamespace = { - ns: runnersNamespace, - logicalName: GHA_NAMESPACE_NAME, - }; const tokenSecret = new k8s.core.v1.Secret( 'gh-access-token', @@ -819,15 +791,7 @@ export function installRunnerScaleSets(controller: k8s.helm.v3.Release): void { const saName = 'k8s-runners'; installRunnersServiceAccount(runnersNamespace, saName); - const performanceTestsDb = createCloudSQLInstanceForPerformanceTests(exactNs); installDockerRunnerScaleSets(controller, runnersNamespace, tokenSecret, cachePvc, saName); - installK8sRunnerScaleSets( - controller, - runnersNamespace, - tokenSecret, - cachePvcName, - saName, - performanceTestsDb - ); + installK8sRunnerScaleSets(controller, runnersNamespace, tokenSecret, cachePvcName, saName); installPodMonitor(runnersNamespace); }