-
Notifications
You must be signed in to change notification settings - Fork 522
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
update SDK to 0.20.0 #1497
update SDK to 0.20.0 #1497
Conversation
(rebase with no changes) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM modulo the test commit.
@@ -157,6 +157,7 @@ done | |||
[tasks.fetch] | |||
dependencies = [ | |||
"fetch-sdk", | |||
"fetch-toolchain", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if we're losing useful granularity with this "fetch" task. There are a number of places we have granular fetch-* dependencies, and a few places that just fetch everything, and I think most of them wouldn't need the toolchain, for example.
If it were more granular, I think the user wouldn't need to change their Docker config unless they were building a kmod kit...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the kmod kit rework for supporting multiple kernels, I ended up needing the toolchain for variant builds since that's the point in time where we have the information we need about the kernel we're installing in the image.
Signed-off-by: Ben Cressey <bcressey@amazon.com>
Go 1.16 defaults to GO111MODULE="on", but this breaks builds if the project has not adopted modules yet. See upstream discussion: golang/go#41330 Signed-off-by: Ben Cressey <bcressey@amazon.com>
Support for bare words in expressions was removed in rpm 4.16. Signed-off-by: Ben Cressey <bcressey@amazon.com>
This build produces a mix of host tools and target modules, and new versions of RPM build scripts from Fedora will attempt to strip both. When cross-compiling, there's no single version of `strip` that can do this successfully, and this now fails when building on an x86_64 host for the aarch64 target. We only use the tools and modules to generate the bootloader images, and they are not shipped anywhere. Hence we do not really care about extracting debuginfo and can just leave the files unstripped. Signed-off-by: Ben Cressey <bcressey@amazon.com>
The SDK and toolchain are now vended as containers, so we pull them from ECR rather than from S3. The SDK includes `cargo deny`, so we use its copy and no longer need it to be installed on the build host. Signed-off-by: Ben Cressey <bcressey@amazon.com>
(rebase with no changes) |
Issue number:
Fixes #1455, fixes #582
Description of changes:
Update to the latest SDK, with new versions of GCC, Rust, and Go.
Retrieve the SDK and toolchain as containers from ECR, rather than archives from S3.
Fix minor issues related to the new Fedora base image and the new version of Go.
Use
cargo deny
from the SDK.Testing done:
Verified that local builds of
aws-dev
worked under KVM for both arches.For
aws-ecr-1
andaws-k8s-1.19
, confirmed that:Terms of contribution:
By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.