Skip to content

Commit f298deb

Browse files
fix: add dynamic labels as runner labels
1 parent 7e1f4d3 commit f298deb

1 file changed

Lines changed: 19 additions & 5 deletions

File tree

  • lambdas/functions/control-plane/src/scale-runners

lambdas/functions/control-plane/src/scale-runners/scale-up.ts

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,7 @@ export async function scaleUp(payloads: ActionRequestMessageSQS[]): Promise<stri
294294

295295
const enableOrgLevel = yn(process.env.ENABLE_ORGANIZATION_RUNNERS, { default: true });
296296
const maximumRunners = parseInt(process.env.RUNNERS_MAXIMUM_COUNT || '3');
297-
const runnerLabels = process.env.RUNNER_LABELS || '';
297+
let runnerLabels = process.env.RUNNER_LABELS || '';
298298
const runnerGroup = process.env.RUNNER_GROUP_NAME || 'Default';
299299
const environment = process.env.ENVIRONMENT;
300300
const ssmTokenPath = process.env.SSM_TOKEN_PATH;
@@ -416,10 +416,24 @@ export async function scaleUp(payloads: ActionRequestMessageSQS[]): Promise<stri
416416
const queuedMessages: ActionRequestMessageSQS[] = [];
417417

418418
if (messages.length > 0 && dynamicEc2ConfigEnabled) {
419-
const requestedInstanceType = messages[0].labels
420-
?.find((label) => label.startsWith('ghr-ec2-instance-type'))
421-
?.replace('ghr-ec2-instance-type', '');
422-
instanceTypes = requestedInstanceType ? [requestedInstanceType] : instanceTypes;
419+
const ec2Labels =
420+
messages[0].labels?.filter(l => l.startsWith('ghr-ec2-')) ?? [];
421+
422+
if (ec2Labels.length > 0) {
423+
// Append all EC2 labels to runnerLabels
424+
runnerLabels = runnerLabels
425+
? `${runnerLabels},${ec2Labels.join(',')}`
426+
: ec2Labels.join(',');
427+
428+
// Extract instance type from EC2 labels
429+
const requestedInstanceType = ec2Labels
430+
.find(l => l.startsWith('ghr-ec2-instance-type:'))
431+
?.replace('ghr-ec2-instance-type:', '');
432+
433+
if (requestedInstanceType) {
434+
instanceTypes = [requestedInstanceType];
435+
}
436+
}
423437
}
424438

425439
for (const message of messages) {

0 commit comments

Comments
 (0)