Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Change packaging to support Ubuntu 17.10 and 18.04#6769

Merged
TravisEz13 merged 5 commits intoPowerShell:masterfrom
rjmholt:update-ubuntu17.10-build
May 7, 2018
Merged

Change packaging to support Ubuntu 17.10 and 18.04#6769
TravisEz13 merged 5 commits intoPowerShell:masterfrom
rjmholt:update-ubuntu17.10-build

Conversation

@rjmholt
Copy link
Collaborator

@rjmholt rjmholt commented Apr 28, 2018

PR Summary

Ubuntu 17.04 is EOL, so we need to update our packaging for Ubuntu 17.10. This updates the package script and build.psm1 to use 17.10 rather than 17.04.

The other things we should change to fully migrate are:

Also, Fedora 25 is now EOL and we should move to 27. This should already be handled, but we need to test on in a Fedora 27 environment.

PR Checklist

@iSazonov
Copy link
Collaborator

I found 58 results by "Ubuntu" string in *.ps* files - I see there's something we need to fix, too.

@TravisEz13
Copy link
Member

@rjmholt Can you add a commit with [Package] at the beginning of the title? This will trigger package building.

I found 58 results by "Ubuntu" string in .ps files - I see there's something we need to fix, too.

I only found one line that needs to be changed. The docs should be moved to PowerShell/PowerShell-Docs

$environment += @{'IsUbuntu17' = $Environment.IsUbuntu -and $LinuxInfo.VERSION_ID -match '17.04'}

@rjmholt rjmholt force-pushed the update-ubuntu17.10-build branch from b6e1e4a to 5c01416 Compare April 30, 2018 21:58
@rjmholt rjmholt changed the title Change packaging to use ubuntu 17.10 WIP: Change packaging to use ubuntu 17.10 May 2, 2018
@rjmholt
Copy link
Collaborator Author

rjmholt commented May 2, 2018

Installing PowerShell on Fedora 28 I notice two things so far:

@iSazonov
Copy link
Collaborator

iSazonov commented May 3, 2018

I think we should rebase to move to .Net Core 2.1 and then check that #6132 was fixed.

@rjmholt
Copy link
Collaborator Author

rjmholt commented May 3, 2018

Okay I've run successfully installed PowerShell from master and run Start-PSPester -Tag "CI","Feature","RequireSudoOnLinux" under sudo on the following platforms:

Ubuntu 17.10 Ubuntu 18.04 Fedora 27 Fedora 28
Succeeded 6226 6227 6226 6232
Failed 12 11 9 8
Skipped 1225 1225 1227 1227
Pending 419 419 419 419
Inconclusive 0 0 0 0
Total 7882 7882 7881 7886
Pester XML pester-tests-ubuntu17.10.xml.zip pester-tests-ubuntu18.04.xml.zip pester-tests-fed27.xml.zip pester-tests-fed28.xml.zip

Some of the problems I found:

@rjmholt
Copy link
Collaborator Author

rjmholt commented May 3, 2018

I built a .deb the other day for Ubuntu 17.10, but it didn't work. Trying again today.

@rjmholt
Copy link
Collaborator Author

rjmholt commented May 4, 2018

Have verified a working Ubuntu 17.10 package built with this branch.

(Can't attach due to size)

@rjmholt
Copy link
Collaborator Author

rjmholt commented May 4, 2018

Also confirm that the produced Ubuntu 18.04 package works!

@rjmholt rjmholt changed the title WIP: Change packaging to use ubuntu 17.10 Change packaging to support Ubuntu 17.10 and 18.04 May 4, 2018
@rjmholt rjmholt force-pushed the update-ubuntu17.10-build branch from 2dfe54a to 62c93ed Compare May 4, 2018 03:33
"ubuntu.14.04" { $Dependencies += @("libssl1.0.0", "libicu52") }
"ubuntu.16.04" { $Dependencies += @("libssl1.0.0", "libicu55") }
"ubuntu.17.10" { $Dependencies += @("libssl1.0.0", "libicu57") }
"ubuntu.18.04" { $Dependencies += @("libssl1.0.0", "libssl1.1", "libicu60") }
Copy link
Collaborator

Choose a reason for hiding this comment

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

Do we really need both libssl?

@iSazonov
Copy link
Collaborator

iSazonov commented May 4, 2018

As for Test-Connection tests I think it is mostly from .Net Core. I have no way to check on other Linux-s.

@iSazonov
Copy link
Collaborator

iSazonov commented May 4, 2018

Fedora 27 related PR #6819.

"ubuntu.16.04" { $Dependencies += @("libssl1.0.0", "libicu55") }
"ubuntu.17.04" { $Dependencies += @("libssl1.0.0", "libicu57") }
"ubuntu.17.10" { $Dependencies += @("libssl1.0.0", "libicu57") }
"ubuntu.18.04" { $Dependencies += @("libssl1.0.0", "libssl1.1", "libicu60") }
Copy link
Member

Choose a reason for hiding this comment

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

I think @iSazonov is correct. We only need libssl1.0.0

@TravisEz13 TravisEz13 merged commit d96a321 into PowerShell:master May 7, 2018
@TravisEz13
Copy link
Member

@anmenaga FYI this will change the package name for ubuntu 17.10

@anmenaga
Copy link

anmenaga commented May 7, 2018

@TravisEz13 good point, thx. I'll prepare PR to fix dockerfile; and looks like we need to add dockerfiles for new '18.04' config.

@iSazonov iSazonov mentioned this pull request May 10, 2018
@kenk667
Copy link

kenk667 commented May 16, 2018

@rjmholt I may have an interim solution for installing on 18.04 without downgrading curl or libicu, I was able to successfully install on 18.04 by changing the dependencies for https://github.com/PowerShell/PowerShell/releases/download/v6.1.0-preview.2/powershell_6.1.0-preview.2-1.ubuntu.17.04_amd64.deb

dpkg-deb --raw-exatrct powershell_6.1.0-preview.2-1.ubuntu.17.04_amd64.deb 6.1.0_patched

Then alter two patterns, curl and libicu dependencies to current versions;

sudo awk '{gsub("curl3","curl4");gsub("libicu57","libicu60");print}' 6.1.0_pathched/DEBIAN/control

Repackage as a debian package;

dpkg-deb --build 6.1.0_pathched/ powershell_6.1.0-patched.2-1.ubuntu.18.04_amd64.deb

Now just install the newly patched .deb package, I like to use gdebi to install;

sudo gdebi powershell_6.1.0-patched.2-1.ubuntu.18.04_amd64.deb

I haven't extensively tested this but seems to be functional and stable so far

@TravisEz13
Copy link
Member

@kenk667 The required libraries are determined by DotNet Core. Changing the required libraries could leave you unsupported.

@rjmholt rjmholt deleted the update-ubuntu17.10-build branch June 22, 2018 22:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

WG-Maintainers-Build specific to affecting the build

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants