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

Support for building Windows Containers #834

Open
ashokponkumar opened this issue Jul 13, 2021 · 6 comments
Open

Support for building Windows Containers #834

ashokponkumar opened this issue Jul 13, 2021 · 6 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Milestone

Comments

@ashokponkumar
Copy link

Just was wondering whether shipwright supports windows containers, and if not, is there a plan to support windows containers.

Also, if it is not supported, is there a doc explaining the challenges in adding support for windows containers, and steps we need to follow to evaluate the effort required.

@ashokponkumar ashokponkumar changed the title Support for Windows Container building Support for building Windows Containers Jul 13, 2021
@qu1queee
Copy link
Contributor

hey @ashokponkumar good question. It really depends on the tools we use, like kaniko, buildkit, buildpacks. I know building for windows containers is not supported at least in Kaniko and Buildkit. I will need to investigate more. But as mentioned, the support needs to be done in the tooling side.

The doc is a good idea, Im moving this to our next community meeting. If you want to join there and be part of the discussion, see https://github.com/shipwright-io/build#community-meetings

@qu1queee qu1queee added community help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. labels Jul 13, 2021
@ashokponkumar
Copy link
Author

Thanks @qu1queee. Will look at attending the next community call.

@sbose78 sbose78 added the kind/documentation Categorizes issue or PR as related to documentation. label Jul 14, 2021
@sbose78
Copy link
Member

sbose78 commented Jul 14, 2021

From grooming:
@imjasonh to add more details, assigned.

@sbose78
Copy link
Member

sbose78 commented Jul 28, 2021

Noticed this work by Jason
ko-build/ko@6905332

@imjasonh
Copy link
Contributor

Hey, sorry for the delay in responding to this.

If the question is whether Shipwright can run builds on Windows nodes, the answer is not yet. For that we'll need Tekton to support Windows (tektoncd/pipeline#1826), which is blocked on the build tool it uses supporting building Windows containers, which as @sbose78 notes has recently made progress in ko-build/ko#374.

Beyond that, Tekton will have to actually build Windows images, and beyond that might still need to make some changes before it can successfully execute TaskRuns on Windows nodes.

When Tekton can do that, Shipwright can start to expose support for that as well, possibly using nodeSelectors, etc., like Tekton does. Shipwright would also have to either support (or document lack of support for) Windows in its default build strategies -- buildpacks and ko will support Windows, but I'm not sure about s2i, buildah, kaniko, etc. If you're writing your own strategy it would be up to you whether it supports Windows.

So in short: it's complicated (😅) and it'll probably be a long time before Windows support is fully piped through the stack.

@adambkaplan adambkaplan added kind/feature Categorizes issue or PR as related to a new feature. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. community kind/documentation Categorizes issue or PR as related to documentation. labels Sep 22, 2021
@adambkaplan
Copy link
Member

Marking this as a "frozen" issue and accepting into the general backlog. As noted @imjasonh, we are blocked until Tekton is able to support Windows nodes/containers.

@adambkaplan adambkaplan added this to the Backlog milestone Sep 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

5 participants