Skip to content
This repository was archived by the owner on Nov 19, 2025. It is now read-only.

Conversation

@otterley
Copy link
Contributor

Compile ecs-cli for Linux arm64, for compatibility for a1 and {m,c,r}6g instance types.

Fixes #1065


Enter [N/A] in the box, if an item is not applicable to your change.

Testing

  • [N/A] Unit tests passed
  • [N/A] Integration tests passed
  • [N/A] Unit tests added for new functionality
  • [N/A] Listed manual checks and their outputs in the comments (example)
  • [N/A] Link to issue or PR for the integration tests:

Documentation

  • Contacted our doc writer
  • Updated our README

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Copy link
Contributor

@iamhopaul123 iamhopaul123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks for adding support for arm64!

@iamhopaul123 iamhopaul123 requested review from a team and kohidave and removed request for a team June 16, 2020 16:59
Copy link
Contributor

@allisaurus allisaurus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@otterley can you provide any output or details you have re: the kind of testing you did to verify the resulting binary works on the listed instance types?

@iamhopaul123 iamhopaul123 self-requested a review June 16, 2020 18:44
@otterley
Copy link
Contributor Author

arm64 integration test result:

[Container] 2020/06/19 22:52:41 Running command make integ-test-run-with-coverage
Running integration tests...
go test -timeout 60m -tags integ -v ./ecs-cli/integ/e2e/...
=== RUN   TestCreateClusterWithEC2Task
--- PASS: TestCreateClusterWithEC2Task (442.90s)
    configure.go:53: Created config amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-config
    up.go:68: Created cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster in stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster
    ecs.go:43: Number of container instances mismatch, wanted = 2, got = 0
    runner.go:98: Current timestamp=2020-06-19 22:55:44.972602438 +0000 UTC m=+181.803746991, sleeping for 15s
    ecs.go:43: Number of container instances mismatch, wanted = 2, got = 1
    runner.go:98: Current timestamp=2020-06-19 22:56:00.002269313 +0000 UTC m=+196.833413866, sleeping for 15s
    ecs.go:51: Cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster has 2 instances
    ec2_task_test.go:98: Created /tmp/docker-compose-476475960.yml successfully
    compose.go:70: Created containers for e2e-ec2-tutorial-taskdef
    ecs.go:75: Cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster has 1 tasks
    ps.go:36: Project e2e-ec2-tutorial-taskdef has 2 running containers
    compose.go:141: Scaled the task e2e-ec2-tutorial-taskdef to 2
    ecs.go:75: Cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster has 2 tasks
    ps.go:36: Project e2e-ec2-tutorial-taskdef has 4 running containers
    compose.go:200: Deleted task e2e-ec2-tutorial-taskdef
    ecs.go:75: Cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster has 0 tasks
    down.go:49: Deleted cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster
    cfn.go:50: Success: stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster does not exist
    down.go:52: Deleted stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-ec2-tutorial-cluster
=== RUN   TestCreateClusterWithFargateService
--- PASS: TestCreateClusterWithFargateService (284.92s)
    configure.go:42: Created config amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-config
    up.go:68: Created cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-cluster in stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-cluster
    fargate_service_test.go:86: Created /tmp/docker-compose-078800063.yml successfully
    fargate_service_test.go:117: Created /tmp/ecs-params-056550674.yml successfully
    compose.go:102: Created service with name amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service
    compose.go:280: Container is RUNNING: b4eb8fe6-8ac0-4b2b-8554-014128849301/wordpress  RUNNING  34.216.146.2:80->80/tcp  amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service:1  UNKNOWN
    compose.go:113: Project amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service has 1 running containers
    compose.go:173: Scaled the service amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service to 2 tasks
    compose.go:280: Container is RUNNING: b4eb8fe6-8ac0-4b2b-8554-014128849301/wordpress  RUNNING  34.216.146.2:80->80/tcp  amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service:1  UNKNOWN
    compose.go:280: Container is RUNNING: fd6f864f-b0cc-4542-b26e-dbeb19f0869e/wordpress  RUNNING  52.42.61.188:80->80/tcp  amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service:1  UNKNOWN
    compose.go:113: Project amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service has 2 running containers
    compose.go:232: Deleted service amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-e2e-fargate-test-service
    down.go:49: Deleted cluster amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-cluster
    cfn.go:50: Success: stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-cluster does not exist
    down.go:52: Deleted stack amazon-ecs-cli-setup-amazonecscliIntegrationInte-An4FmWXG5vCb-ebb4c63e-8e64-4086-975d-9e8b54eca6e5-fargate-tutorial-cluster
=== RUN   TestECSLocal
=== RUN   TestECSLocal/clean_state
=== RUN   TestECSLocal/from_task_def
--- PASS: TestECSLocal (86.30s)
    --- PASS: TestECSLocal/clean_state (0.25s)
    --- PASS: TestECSLocal/from_task_def (86.04s)
PASS
ok  	github.com/aws/amazon-ecs-cli/ecs-cli/integ/e2e	814.144s

@bvtujo bvtujo added the do-not-merge blocks auto-merging by mergify label Jun 25, 2020
@bvtujo bvtujo self-assigned this Jun 25, 2020
Copy link
Contributor

@allisaurus allisaurus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the additional details, @otterley ! I understand we're waiting on some prerequisite changes before we can merge this in, so keeping this open until we're good there.

@allisaurus allisaurus self-requested a review June 25, 2020 00:24
@allisaurus allisaurus self-requested a review June 25, 2020 00:25
@SoManyHs SoManyHs closed this Sep 15, 2020
@scottmalkie
Copy link

Hi! This is still a need, what are the plans for Arm64 support for the ecs-cli?

@bvtujo bvtujo mentioned this pull request Oct 1, 2020
3 tasks
@bvtujo
Copy link
Contributor

bvtujo commented Oct 5, 2020

Hi @scottmalkie, we've added a linux/Arm64 binary to our S3 buckets and updated the readme accordingly. These are built and tested on a Codebuild ARM image. Please let us know if you experience any difficulties using these binaries.

@scottmalkie
Copy link

Ah, perfect! Thanks so much @bvtujo ! I saw this as closed, didn't realize it was closed as done! I'll give it a spin and let you know what happens.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

do-not-merge blocks auto-merging by mergify

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Need arm64 build

6 participants