Skip to content

Add build for linux-musl-arm #26281

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

Merged
merged 1 commit into from
Sep 24, 2020
Merged

Conversation

janvorli
Copy link
Member

This change adds building of linux-musl-arm packages of ASP.NET Core.

This change adds support for building MUSL ARM packages of ASP.NET Core.
@janvorli janvorli added the area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework label Sep 24, 2020
@janvorli janvorli requested a review from dougbu September 24, 2020 17:46
@janvorli janvorli self-assigned this Sep 24, 2020
@dougbu
Copy link
Contributor

dougbu commented Sep 24, 2020

@janvorli what requirement is behind this PR❔ And, should it be in 5.0❔

Separately, have you tried building this job without useHostedUbuntu: false i.e. using the hosted agents❔

/cc @Pilchie for awareness and resource implications

@janvorli
Copy link
Member Author

what requirement is behind this PR

We want to enable end to end .NET Core support for Alpine ARM Linux. It has been requested by the community for quite some time. I have discussed it with @richlander and we have agreed that we should do it if it doesn't require too much work to enable. So far we had only Alpine ARM64 support. So far I've created the necessary docker images and made runtime changes, so this is a next step.

And, should it be in 5.0

It would be nice, but it is not a hard requirement.

Separately, have you tried building this job without useHostedUbuntu: false i.e. using the hosted agents

No, can you please help me understand what is it good for? I can see that it uses ubuntu-16.04 VM and I know the build doesn't build there due to the fact that the cross building image for runtime is based on Ubuntu 18.04, so crossgen fails to execute. Is that a problem? If it is, I can add cross building ubuntu-16.04 docker images targeting Alpine ARM and switch runtime to build on that one.

@dougbu
Copy link
Contributor

dougbu commented Sep 24, 2020

No, can you please help me understand what is it good for?

That setting is useful where the build uses more disk space than hosted agents provide. But, ignore me because the Linux MUSL Arm64 probably has it for a reason.

Copy link
Contributor

@dougbu dougbu left a comment

Choose a reason for hiding this comment

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

Fine w/ me. Any objection @Pilchie

@Pilchie
Copy link
Member

Pilchie commented Sep 24, 2020

Seems fine to me.

@janvorli janvorli merged commit c39ecb9 into dotnet:master Sep 24, 2020
@janvorli janvorli deleted the add-musl-arm-support branch September 24, 2020 21:15
@janvorli
Copy link
Member Author

janvorli commented Nov 4, 2020

@dougbu, @Pilchie I've incorrectly assumed that the change will automatically flow into release/5.0, since I've seen 5.0-rc2 packages generated after my change went in. But looking at the release/5.0 branch, I cannot see my commit to be there.
I wonder - given the fact that it is just an infra change, would it still be possible to get it to release/5.0 branch or will it have to wait for the next update release?

@dougbu
Copy link
Contributor

dougbu commented Nov 4, 2020

@janvorli this isn't really "just an infra change" because it expands the platform. Why would we port it to the release/5.0 branch given your earlier comment about needing the change to 5.0❔

It would be nice, but it is not a hard requirement.

@janvorli
Copy link
Member Author

janvorli commented Nov 4, 2020

@dougbu - since I've seen 5.0-rc2 nuget packages were available on the nuget servers for linux-musl-arm after my change, I've assumed that it somehow made it to 5.0 and we've back ported the related runtime change to 5.0. Now there was an attempt to build docker image for linux-musl-arm, which revealed that the aspnetcore tarball doesn't actually exist.
Anyways, it is fine to get it in for the servicing release. I just wanted to know the options we have.

@dougbu
Copy link
Contributor

dougbu commented Nov 4, 2020

@Pilchie do you think we need this in 5.0.1❔

@Pilchie
Copy link
Member

Pilchie commented Nov 4, 2020

I think it's fine to add for 5.0.1, but I don't understand how there were packages for rc2 and not GA. The commit above looks like it was only ever in master, so I don't see how any packages were ever produced for rc2.

@janvorli
Copy link
Member Author

/backport to release/5.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants