Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DevOps] Add CI for ARM #978

Open
adamsitnik opened this issue Nov 29, 2018 · 8 comments
Open

[DevOps] Add CI for ARM #978

adamsitnik opened this issue Nov 29, 2018 · 8 comments

Comments

@adamsitnik
Copy link
Member

I want to implement ARM support for BDN. I love our CI and I think it would be great to add ARM platform to make sure it works.

@Ky7m do you know how hard would be adding an ARM build?

@Ky7m
Copy link
Contributor

Ky7m commented Nov 29, 2018

Great, @adamsitnik, give me some time to investigate available options.

@Ky7m
Copy link
Contributor

Ky7m commented Dec 2, 2018

As a first step, it's possible to build on emulated ARM through Travis. The second step is to connect another CI service with ARM based agents, e.g. Shippable http://docs.shippable.com/platform/tutorial/workflow/run-ci-builds-on-arm/

@adamsitnik
Copy link
Member Author

@Ky7m big thanks for the research!

I can see that shippable offers a free CI for public projects: https://www.shippable.com/pricing.html

However, I am not sure if we really want to have 4th CI? I would love to have ARM builds running, however, I am not sure if the complexity and effort are worth it. Maybe we should just wait until ARM is added to one of the CIs that we already use? @Ky7m what do you think?

@Ky7m
Copy link
Contributor

Ky7m commented Jan 14, 2019

@adamsitnik, I think we can add shippable CI platform. It should be easy, also we have another option that is based on emulation of ARM builds on Travis. Let me start with the first one and check what we can achieve.

@Ky7m
Copy link
Contributor

Ky7m commented Feb 11, 2019

@adamsitnik just let you know that I started working on arm builds https://cloud.drone.io/Ky7m/BenchmarkDotNet/49/1/2
so will keep you posted

@adamsitnik
Copy link
Member Author

@Ky7m awesome!

SpecifiedProccesorArchitectureMustBeRespected fails because we most probably set a wrong architecture (x64), instead of ARM64.

@adamsitnik
Copy link
Member Author

Verify(Platform.X64, typeof(X64Benchmark), X64FailedCaption);

this should be conditional - if ARM, use ARM64, if not use x64

@Ky7m
Copy link
Contributor

Ky7m commented Feb 11, 2019

Sure, I will check it, because now it is configured only for ARM32.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants