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

packaging: switch ubuntu to use golang-1.13 #10440

Merged
merged 10 commits into from
Jul 26, 2021

Conversation

mvo5
Copy link
Contributor

@mvo5 mvo5 commented Jun 22, 2021

Move from golang-1.10 to golang-1.13 to get the benefits of
better supported and newer golang.

This is tested in:
https://launchpad.net/~mvo/+archive/ubuntu/golang-1.13-backport/+packages

We benefit from the work in https://bugs.launchpad.net/ubuntu/+source/golang-1.13/+bug/1911478 and have go-1.13 for xenial,bionic in the archive already.

We will need to clarify what to do about trusty, there is a backport of go-1.13 in the above PPA and a go-1.13 build with that of snapd. I suspect for now we will need to upload go-1.13 for trusty to our image PPA. I copied golangg-1.13 into the ppa:snappy-dev/image now. It will only be picked up if referenced explicitly.

We also need to make sure this gets a lot of testing. Back in the day when we switched from go1.6 to go1.10 there was an unexpected raise of memory usage on i386 systems which caused one of our users trouble.

This move will mean we need to drop support to run the integration tests on debian-9 because there is no go-1.13 available here in backports. We already stopped running debian-9 in our CI, adding it back would be easy, we would have to backport go-1.13 but the version from xenial should build unchanged and worst case the version from trusty will.

Move from golang-1.10 to golang-1.13 to get the benefits of
better supported and newer golang.
packaging/ubuntu-16.04/rules Outdated Show resolved Hide resolved
@bboozzoo
Copy link
Collaborator

Some prepare code seems to be assuming 1.10:

2021-06-22T16:50:00.0505980Z + gdebi --quiet --apt-line ./debian/control
2021-06-22T16:50:00.0506663Z ++ command -v go
2021-06-22T16:50:00.0507200Z + '[' -z '' ']'
2021-06-22T16:50:00.0507825Z + ln -s /usr/lib/go-1.10/bin/go /usr/bin/go
2021-06-22T16:50:00.0508589Z ++ command -v govendor
2021-06-22T16:50:00.0509227Z + '[' -z '' ']'
2021-06-22T16:50:00.0509926Z + rm -rf /home/gopath/src/github.com/kardianos/govendor
2021-06-22T16:50:00.0510743Z + go get -u github.com/kardianos/govendor
2021-06-22T16:50:00.0511847Z /home/gopath/src/github.com/snapcore/snapd/tests/lib/prepare-restore.sh: line 518: go: command not found

Copy link
Collaborator

@sergiocazzolato sergiocazzolato left a comment

Choose a reason for hiding this comment

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

Nice change, thanks for this

Copy link
Collaborator

@bboozzoo bboozzoo left a comment

Choose a reason for hiding this comment

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

LGTM

We'll need to fix the formatting of code now that tests/unit/go runs gofmt from 1.13

@bboozzoo
Copy link
Collaborator

This one is stuck waiting for the status of unit tests with Go 1.9. I guess we can land it and mark that job as no longer required?

else
best_golang=golang-1.10
echo "debian-9 tests disabled (no golang-1.13)"
exit 1
Copy link
Member

Choose a reason for hiding this comment

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

I assume this means we need to drop debian-9-* from the systems in spread.yaml that we support, correct?

Also I assume this means we no longer support debian 9 since we can't build new snapd's on it and we won't be testing it, is that accurate?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That is a really good question. AFAICT we stopped running our CI against debian-9 a while ago. I would love to keep supporting debian-9, maybe even get it back into CI. They support until June 2022

@mvo5 mvo5 removed the ⛔ Blocked label Jul 23, 2021
@mvo5
Copy link
Contributor Author

mvo5 commented Jul 23, 2021

snapd 2.52 is now branched so we can move forward with this one

@mvo5 mvo5 merged commit 2391e69 into snapcore:master Jul 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants