Skip to content

CGO vs non-CGO bins & DNS stack - uniformity needed #6730

@jnummelin

Description

@jnummelin

Currently our binaries are a mix-and-match set of CGO and non-CGO compiled bins. As everything is statically linked, this unfortunately also means that some of the bins use musl and some use netgo as the DNS resolution stack.

So the general idea of this issue is to drop CGO in all components we can. I think kine is pretty much the only one that really needs CGO anymore. By dropping CGO we'll utilise netgo for DNS too. While doing that, we should also force all CGO compiled ones to use netgo.

Some of the pure C based bins, like iptables for example, don't really use DNS resolution at all so having those linked with musl should not create any issues.

Since there's gonna be some (hopefully minor) changes in behaviour, we need to be also vocal about this change in the release notes and we should not backport this stuff to any patch releases.

The CGO disabling for k0s itself has been worked on already with #6669

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions