aws / copilot-cli

The AWS Copilot CLI is a tool for developers to build, release and operate production ready containerized applications on AWS App Runner or Amazon ECS on AWS Fargate.
https://aws.github.io/copilot-cli/
Apache License 2.0
3.53k stars 417 forks source link

[Bug]: 'run local' can't build the pause.dockerfile #5966

Open dfuentes77 opened 3 weeks ago

dfuentes77 commented 3 weeks ago

Description:

Trying to copilot run local but the "pause" container can't build

Details:

copilot version: v1.34.0 macOS M2 but using platform: linux/x86_64 in workload manifest

Observed result:

=> ERROR [3/3] RUN dnf install -y https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_64bit/session-manager-plugin.rpm                                                        1.3s
------
 > [3/3] RUN dnf install -y https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_64bit/session-manager-plugin.rpm:
0.212 Last metadata expiration check: 0:00:08 ago on Fri Nov  1 22:19:32 2024.
1.179 session-manager-plugin.rpm                      2.9 MB/s | 2.8 MB     00:00
1.235 Error:
1.235  Problem: conflicting requests
1.235   - package session-manager-plugin-1.2.677.0-1.x86_64 from @commandline does not have a compatible architecture
1.235   - nothing provides config(session-manager-plugin) = 1.2.677.0-1 needed by session-manager-plugin-1.2.677.0-1.x86_64 from @commandline
1.235   - nothing provides libc.so.6(GLIBC_2.2.5)(64bit) needed by session-manager-plugin-1.2.677.0-1.x86_64 from @commandline
1.235   - nothing provides libpthread.so.0(GLIBC_2.2.5)(64bit) needed by session-manager-plugin-1.2.677.0-1.x86_64 from @commandline
1.235   - nothing provides libpthread.so.0(GLIBC_2.3.2)(64bit) needed by session-manager-plugin-1.2.677.0-1.x86_64 from @commandline
1.235 (try to add '--skip-broken' to skip uninstallable packages)
------
Dockerfile:7
--------------------
   5 |     ARG ARCH=64bit
   6 |     # url from https://docs.aws.amazon.com/systems-manager/latest/userguide/install-plugin-linux.html
   7 | >>> RUN dnf install -y https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_${ARCH}/session-manager-plugin.rpm
--------------------
ERROR: failed to solve: process "/bin/sh -c dnf install -y https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_${ARCH}/session-manager-plugin.rpm" did not complete successfully: exit code: 1

Expected result:

I don't know yet since this is the first time I'm running copilot run local but I'm guessing it shouldn't be breaking on a container that copilot owns and is trying to build.

Debugging:

It seems both RUN lines in the Pause.Dockerfile container are running and conflicting with each other. If I run the install commands sequentially, they install fine.