Pin SocketMode image asset to LINUX_ARM64
The task runs ARM64, but the image asset had no explicit platform, so the amd64 CD runner built an amd64 image (QEMU alone does not change the default target). Revision :8 crash-looped with "exec format error" (50 failed task starts); CloudFormation hung on service stabilization until cancelled. Local arm64 builds masked this - deploys from this Mac always produced the right image. Same fix pattern as the org-wide QEMU+platform rule for arm64 Lambda bundling.
This commit is contained in:
parent
97456f6104
commit
21ad13943c
1 changed files with 5 additions and 0 deletions
|
|
@ -3,6 +3,7 @@ import * as cdk from 'aws-cdk-lib';
|
|||
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
||||
import * as ecs from 'aws-cdk-lib/aws-ecs';
|
||||
import * as ecr from 'aws-cdk-lib/aws-ecr';
|
||||
import * as ecrAssets from 'aws-cdk-lib/aws-ecr-assets';
|
||||
import * as logs from 'aws-cdk-lib/aws-logs';
|
||||
import * as iam from 'aws-cdk-lib/aws-iam';
|
||||
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
|
||||
|
|
@ -76,6 +77,10 @@ export class SocketModeConstruct extends Construct {
|
|||
taskDef.addContainer('listener', {
|
||||
image: ecs.ContainerImage.fromAsset(
|
||||
path.join(__dirname, '../../listener'),
|
||||
// Explicit platform: the task is ARM64, and without this an amd64 CI
|
||||
// runner builds an amd64 image even with QEMU enabled — tasks then
|
||||
// crash-loop with "exec format error" (50 failed starts on 2026-06-03).
|
||||
{ platform: ecrAssets.Platform.LINUX_ARM64 },
|
||||
),
|
||||
essential: true,
|
||||
environment: {
|
||||
|
|
|
|||
Reference in a new issue