Skip to content

Add Alpine SDK image#376

Merged
MichaelSimons merged 3 commits intonightlyfrom
alpine-sdk
Feb 26, 2018
Merged

Add Alpine SDK image#376
MichaelSimons merged 3 commits intonightlyfrom
alpine-sdk

Conversation

@MichaelSimons
Copy link
Member

@MichaelSimons MichaelSimons commented Feb 15, 2018

Copied from dotnet/dotnet-docker-nightly#508 by @richlander

This PR isn't quite ready. Work items:

  • Update URL format (to match other images)
  • Add hash/checksum matching (to match other images)
    * [ ] Consider globalization invariant mode support for the SDK.
  • Update tests appropriately to verify Alpine SDK image
  • Update manifest.json
  • Update readme

Sample I used for testing: https://github.com/dotnet/dotnet-docker-samples/tree/alpine/dotnetapp-prod

I got the image to work as expected but needed to remove invariant-mode support for the SDK. it seems like the SDK fails to run with invariant mode.

This is the error that I saw before removing globalization invariant mode / adding ICU:

Step 7/11 : RUN dotnet publish -c Release -o out
 ---> Running in 0f3ff19e0e0f
Microsoft (R) Build Engine version 15.6.22.57775 for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restore completed in 46.27 ms for /app/dotnetapp.csproj.
/usr/share/dotnet/sdk/2.2.0-preview1-007846/Microsoft.Common.CurrentVersion.targets(2051,5): error MSB3095: Invalid argument. SafeHandle cannot be null. [/app/dotnetapp.csproj]
/usr/share/dotnet/sdk/2.2.0-preview1-007846/Microsoft.Common.CurrentVersion.targets(2051,5): error MSB3095: Parameter name: pHandle [/app/dotnetapp.csproj]
The command '/bin/sh -c dotnet publish -c Release -o out' returned a non-zero code: 1

@MichaelSimons
Copy link
Member Author

@richlander
Copy link
Member

I am having second thoughts on https://github.com/dotnet/cli/issues/8290. The SDK should not violate principle of least surprise. I think not enabling globalization would do that. Now, having the runtime and SDK not be symmetric would be very odd, but given the goals of Alpine, I think that's OK. Thoughts?

@MichaelSimons
Copy link
Member Author

I'm torn on this mainly because of the asymmetry. I am concerned this will cause some issues at deployment. We can try to call this out in documentation but I am sure it will get overlooked if read at all.

@richlander
Copy link
Member

So, how about we publish the sdk image as-is (with globalization present) since we have the opportunity to actually publish something now. We can work through the rest as we go. It's only preview1, so I think we have enough time to make changes some of which can still be breaking. Yes?

@MichaelSimons
Copy link
Member Author

I am good with that plan preview1 plan.

@MichaelSimons MichaelSimons changed the title [WIP] Add Alpine SDK image Add Alpine SDK image Feb 26, 2018
@MichaelSimons MichaelSimons merged commit 2d53a3d into nightly Feb 26, 2018
@MichaelSimons MichaelSimons deleted the alpine-sdk branch February 26, 2018 14:40
MichaelSimons added a commit that referenced this pull request Feb 26, 2018
* Merging changes from nightly repo into nightly branch (#365)

* Update nightly SDK to 2.1.300-preview1-008123

* Use ProductVersion from build info

* Add support for specifying a custom repo-owner when building (#379)

* Update nightly SDK to 2.1.300-preview1-008162

* Refactor pattern used to initial NuGet package cache (#382)

* Refactor pattern used to initial NuGet package cache

* Add tests to verify package cache exists in SDK images

* Add Alpine SDK image (#376)

* (update-dependencies) Use TLS1.2 when downloading from GitHub

* Update nightly SDK to 2.1.300-preview1-008174

* Increase build timeout

* 2.1 images (#385)

* Update supported distros for 2.1

* Updating to latest SDK/Runtime versions

* Add 2.1 build legs

* Fix-up 'dotnet-nightly' references
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

Successfully merging this pull request may close these issues.

2 participants