Skip to content

Commit 53ad761

Browse files
jankeromnesroboquat
authored andcommitted
[server] Don't fetch the repository config a second time when starting incremental prebuilds
1 parent e2cfceb commit 53ad761

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

components/server/ee/src/prebuilds/incremental-prebuilds-service.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,14 @@ export class IncrementalPrebuildsService {
6666

6767
public async findGoodBaseForIncrementalBuild(
6868
context: CommitContext,
69+
config: WorkspaceConfig,
6970
history: WithCommitHistory,
7071
user: User,
7172
): Promise<PrebuiltWorkspace | undefined> {
7273
if (!history.commitHistory || history.commitHistory.length < 1) {
7374
return;
7475
}
7576

76-
const { config } = await this.configProvider.fetchConfig({}, user, context);
7777
const imageSource = await this.imageSourceProvider.getImageSource({}, user, context, config);
7878

7979
// Note: This query returns only not-garbage-collected prebuilds in order to reduce cardinality

components/server/ee/src/workspace/gitpod-server-impl.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,13 @@ import { BillingMode } from "@gitpod/gitpod-protocol/lib/billing-mode";
117117
import { BillingModes } from "../billing/billing-mode";
118118
import { UsageServiceDefinition } from "@gitpod/usage-api/lib/usage/v1/usage.pb";
119119
import { IncrementalPrebuildsService } from "../prebuilds/incremental-prebuilds-service";
120+
import { ConfigProvider } from "../../../src/workspace/config-provider";
120121

121122
@injectable()
122123
export class GitpodServerEEImpl extends GitpodServerImpl {
123124
@inject(PrebuildManager) protected readonly prebuildManager: PrebuildManager;
124125
@inject(IncrementalPrebuildsService) protected readonly incrementalPrebuildsService: IncrementalPrebuildsService;
126+
@inject(ConfigProvider) protected readonly configProvider: ConfigProvider;
125127
@inject(LicenseDB) protected readonly licenseDB: LicenseDB;
126128
@inject(LicenseKeySource) protected readonly licenseKeySource: LicenseKeySource;
127129

@@ -982,9 +984,11 @@ export class GitpodServerEEImpl extends GitpodServerImpl {
982984
const logPayload = { mode, cloneUrl, commit: commitSHAs, prebuiltWorkspace };
983985
log.debug(logCtx, "Looking for prebuilt workspace: ", logPayload);
984986
if (prebuiltWorkspace?.state !== "available" && mode === CreateWorkspaceMode.UseLastSuccessfulPrebuild) {
987+
const { config } = await this.configProvider.fetchConfig({}, user, context);
985988
const history = await this.incrementalPrebuildsService.getCommitHistoryForContext(context, user);
986989
prebuiltWorkspace = await this.incrementalPrebuildsService.findGoodBaseForIncrementalBuild(
987990
context,
991+
config,
988992
history,
989993
user,
990994
);

components/server/ee/src/workspace/workspace-factory.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ export class WorkspaceFactoryEE extends WorkspaceFactory {
121121
let ws;
122122
const recentPrebuild = await this.incrementalPrebuildsService.findGoodBaseForIncrementalBuild(
123123
commitContext,
124+
config,
124125
context,
125126
user,
126127
);

0 commit comments

Comments
 (0)