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

Remove Windows Containers support #311

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

AidanDelaney
Copy link
Member

@AidanDelaney AidanDelaney commented Apr 11, 2024

Remove support for Windows Containers in CNB tooling and documentation, but retain support in the Buildpacks spec.

readable

@buildpack-bot
Copy link
Member

Maintainers,

As you review this RFC please queue up issues to be created using the following commands:

/queue-issue <repo> "<title>" [labels]...
/unqueue-issue <uid>

Issues

(none)

Remove support for Windows Containers in CNB tooling and
documentation, but retain support in the Buildpacks spec.

Signed-off-by: Aidan Delaney <adelaney21@bloomberg.net>
@AidanDelaney AidanDelaney force-pushed the feat/remove-windows-containers-suppport branch from 832d82e to ff8c235 Compare April 11, 2024 08:36
@AidanDelaney AidanDelaney changed the title Remove Windows Containers support Draft: Remove Windows Containers support Apr 11, 2024
@AidanDelaney AidanDelaney marked this pull request as draft April 11, 2024 09:11
- There are no known users of Windows Container support within the buildpacks ecosystem.
- Supporting Windows Containers is straightforward at a specification level. However, the CNB project has neither the time nor the expertise to continue to support Windows Containers in our tooling.
- Removing Windows Container support from CNB tooling will speed up development, simplify testing and impact no existing users.
- Establish platform parity between `pack` and `kpack`. `kpack` has never supported building Windows Containers.

Choose a reason for hiding this comment

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

kpack actually does support building windows containers (buildpacks-community/kpack#546), albeit in a slightly more limited capacity. There is an open discussion on the kpack side to remove windows support (buildpacks-community/kpack#1366)

Copy link
Member Author

Choose a reason for hiding this comment

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

Thanks. I see it's difficult to get community feedback on this as, I suspect, there are no kpack users who build Windows containers.

# What it is
[what-it-is]: #what-it-is

- We want to remove Windows Containers related documentation, but clearly state that the specification is platform neutral.
Copy link
Member

Choose a reason for hiding this comment

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

How hard will it be to make a platform neutral specification format, i.e. POSIX vs. windows?

Copy link
Member Author

Choose a reason for hiding this comment

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

We're hoping to maintain the status-quo in the specification where we currently state things like

It will be difficult to keep in mind the POSIX/Windows differences when changing the specification. However, I suspect this will be no-more difficult than currently as we have no known Windows containers users.


Windows Containers support is well tested within `pack`. Removing support for Windows Containers removes a unique selling point of the `pack` CLI and `lifecycle`

# Alternatives
Copy link
Member

Choose a reason for hiding this comment

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

This came up in the WG today. Would we want to tie this to a spec change and just remove it all together from the spec?

jabrown85 added a commit to buildpacks/lifecycle that referenced this pull request Nov 8, 2024
Ref: buildpacks/rfcs#311

We don't want to block lifecycle releases on pack windows failure anymore. They are unstable and not something we are staffed to invest time into.

Signed-off-by: Jesse Brown <jabrown85@gmail.com>
natalieparellano pushed a commit to buildpacks/lifecycle that referenced this pull request Nov 11, 2024
Ref: buildpacks/rfcs#311

We don't want to block lifecycle releases on pack windows failure anymore. They are unstable and not something we are staffed to invest time into.

Signed-off-by: Jesse Brown <jabrown85@gmail.com>
@edmorley
Copy link
Contributor

edmorley commented Dec 6, 2024

Given https://medium.com/buildpacks/deprecation-announcement-windows-container-feature-in-cloud-native-buildpacks-bbb70351343d should this PR be moved out of draft status and merged? :-)

@jabrown85
Copy link
Contributor

@AidanDelaney care to undraft this and update anything that you think needs updating? Then we can get it merged.

@AidanDelaney AidanDelaney marked this pull request as ready for review December 10, 2024 15:20
@AidanDelaney
Copy link
Member Author

@AidanDelaney care to undraft this and update anything that you think needs updating? Then we can get it merged.

We don't yet have consensus on this. But I'm happy with the approach where the Spec retains Windows support but we drop Windows support from our implementations.

jabrown85 added a commit to buildpacks/lifecycle that referenced this pull request Dec 10, 2024
I took a swing at removing any and all references to windows in this reference implementation.

Lifecycle no longer outputs a windows binary as a release artifact
Lifecycle no longer operates against windows containers

buildpacks/rfcs#311
https://medium.com/buildpacks/deprecation-announcement-windows-container-feature-in-cloud-native-buildpacks-bbb70351343d

Signed-off-by: Jesse Brown <jabrown85@gmail.com>
@AidanDelaney AidanDelaney changed the title Draft: Remove Windows Containers support Remove Windows Containers support Dec 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants