Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-64093

.NET Core 3.1 builds fail if SDK is automatically installed from microsoft.com

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Major Major
    • dotnet-sdk-plugin
    • Jenkins version: 2.249.2 (LTS at the time of writing)
      OS: Debian 9 (stretch) running in Docker container.
      .NET SDK Support plugin version: 1.0.0

      I'm new to Jenkins and wanted to try how it works with .NET Core 3.1, so I downloaded and ran the docker LTS image (jenkins/jenkins:lts) which is based on Debian 9 (stretch)

      I installed the ".NET SDK Support" plugin, went to "Global tool configuration", added the .NET SDK with "install from microsoft.com" installer.

      I ran my first build, it downloaded & installed .NET SDK 3.1, but then dotnet build command failed with the error: "Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support."

      I've seen this error before when trying out .NET Core 3.1 on Ubuntu, and the problem as I remember was that I was missing an older version of the libicu package. It wouldn't work even when installing from Ubuntu repositories or following one of the official MS installation guides.

      When I installed .NET Core 3.1 SDK as described here, it worked by installing all the dependencies correctly: https://docs.microsoft.com/en-us/windows-server/administration/linux-package-repository-for-microsoft-software

      As a workaround I've created my own Dockerfile that installs the .NET SDK correctly for Debian 9, then everything worked fine. I will attach the Dockerfile here if anyone is interested.

      Thank you!

            zastai Tim Van Holder
            sherman89 Shahin Dohan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: