AliyunContainerService / pouch

An Efficient Enterprise-class Container Engine
https://pouchcontainer.io
Apache License 2.0
4.64k stars 949 forks source link

Adding arm64 job in Travis-ci #3027

Closed odidev closed 2 years ago

odidev commented 4 years ago

Why you need it?

I was trying to add arm64 jobs in Travis-ci. For this, I have installed docker-ce_18.06.0~ce~3-0~ubuntu as in this version docker-containerd will use port 10010 in docker.service by default. Added the required changes in the hack/codegen/swagger.sh and hack/install/install_local_persist.sh file in order to install it for arm64. I found that criu is not present for arm64 in xenial. So I have changed the distribution from xenial to bionic in .travis.yml and after that observed that some of the jobs start to fail for amd64 giving assertion error. Like for "Integration test 0" getting the below assertion error -

=== RUN   Test
----------------------------------------------------------------------
FAIL: cli_run_blkio_test.go:40: PouchRunBlkioSuite.TestRunBlockIOWeight
cli_run_blkio_test.go:52:
    c.Assert(blkioWeight, check.Equals, strvalue)
... obtained string = "0"
... expected string = "100"

For the changes and other job issues please refer to the below commit and travis link. Commit Link: https://github.com/odidev/pouch/commit/2b81e2b4f5c4125fffb7b2f27492bf27936323eb Travis Link: https://travis-ci.com/github/odidev/pouch/builds/191448669

How it could be?

Are there any plans for adding arm64 jobs in Travis-ci and changing distribution from xenial to bionic? To start with adding support in Travis-ci, can I get suggestions on the above issue?

odidev commented 4 years ago

I have switched to focal in order to use arm64-graviton but in focal docker-containerd is not using port 10010. As after docker-ce_18.06.0~ce~3-0~ubuntu version, by default containerd is not running in port 10010. So for now, I have commented the check_port function.

I have also done a few changes like -

For the changes and the job issues please refer to the below commit and Travis link. Commit Link- https://github.com/pheobe12/pouch/commit/f5182252c693aa67caa057e007eea6307f7b2695 Travis Link- https://travis-ci.com/github/pheobe12/pouch/builds/204896892

After these changes there are jobs that are failing for arm64 as well as amd64 and docker-containerd is not running in port 10010. Can you please provide any pointers on them?