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

Ubuntu 20.04 #98

Open
Raniz85 opened this issue Aug 31, 2020 · 8 comments · May be fixed by #134
Open

Ubuntu 20.04 #98

Raniz85 opened this issue Aug 31, 2020 · 8 comments · May be fixed by #134
Assignees

Comments

@Raniz85
Copy link

Raniz85 commented Aug 31, 2020

As the title says. Would be nice to have access to newer packages when building customized CI images.

@emk
Copy link
Owner

emk commented Sep 4, 2020

Good idea! I'll consider that for Rust 1.47.0. I also want to update to PostgreSQL 12 at the same time.

@gibfahn
Copy link

gibfahn commented Oct 27, 2020

+1, it's not exactly a big deal, but newer versions of included deps is always nice.

e.g. git in the current image doesn't support git branch --show-current, which I used in an integration test. In this case it was easy enough to change to git rev-parse --abbrev-ref HEAD, but with focal it wouldn't have been an issue.

@emk
Copy link
Owner

emk commented Jan 5, 2021

I tried to update to Ubuntu 20.04 for the Rust 1.49.0 release, but it broke the ./test-image tests for sqlx, which picked up a dependency on a shared library. So I'm going to hold off on this for now. My apologies!

@asaaki asaaki mentioned this issue Mar 20, 2021
@emk
Copy link
Owner

emk commented Dec 23, 2021

This might be worth revisiting at some point, now that I'm getting CI working on GitHub. This will make it easier to run all the linking tests on PRs, to see if they're working.

@emk
Copy link
Owner

emk commented Dec 23, 2021

I have just tried Ubuntu 20.04 again, and sqlx is still failing.

--- Test case for sqlx:
ldd says:
	/lib/ld-musl-x86_64.so.1 (0x7f790b7e1000)
[FAIL] Executable is not static!

sqlx now claims to work with rustls, so maybe we could consider dropping sqlx support at some point, allowing for an Ubuntu 20.04 upgrade. But that would break anyone using sqlx, and they'd have to stick with an older image or migrate to TLS.

At least one major hosted PostgreSQL provider, Citus Data, uses certs that break rustls. They'll shut down in January 2022, but I think we want to hang onto sqlx Citus support until then.

@asaaki
Copy link

asaaki commented Jan 1, 2022

The issue with the static link check is slightly different, as I have described in my comment of the linked PR. The gist is: the check is not reliable and I went a different route to test this.

@emk
Copy link
Owner

emk commented Jan 1, 2022

@asaaki Ah, thank you! I hadn't seen that note.

I'm going to copy the affected binaries back to main container, and check the linking there. And I'll aim to release Ubuntu 20.04 support when Rust 1.58 ships, to avoid upgrading the existing 1.57 version of the image.

Thank you so much for taking the time to figure out what was going wrong!

emk added a commit that referenced this issue Jan 1, 2022
Many thanks to @asaaki for having figured out the static link check was
returning flase negatives with Alpine's `lld`. See:

#120 (comment)

The plan is to merge this when Rust 1.58.0 is released, so people who
need 18.04 can stick with1.57.0.

Closes #98.
Closes #120.
@emk emk linked a pull request Jan 1, 2022 that will close this issue
@emk
Copy link
Owner

emk commented Jan 1, 2022

The PR #134 contains the new image testing script. Thank you to @asaaki! I plan to ship it when Rust 1.58 is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants