drone-cache icon indicating copy to clipboard operation
drone-cache copied to clipboard

Windows Container Support

Open viceice opened this issue 4 years ago • 4 comments

Is your feature request related to a problem? Please describe. I Like to use this plugin on a windows container runtime.

Describe the solution you'd like Publish multiarch docker images.

Describe alternatives you've considered Building multiarch docker images myself as already done here 🙃

Additional context ~no~

viceice avatar Jan 20 '21 15:01 viceice

Thanks, @viceice for reporting. This was something I planned for a while. Never had the time to get to it. This shouldn't be hard to achieve with goreleaser (that's what we use).

We'd really appreciate your contributions. So help wanted :)

kakkoyun avatar Feb 02 '21 06:02 kakkoyun

I'll see what i can do. It currently has a low prio.

viceice avatar Feb 02 '21 06:02 viceice

This seems like it was implemented as part of GitHub actions used with Goreleaser here:

  • https://github.com/meltwater/drone-cache/blob/master/.goreleaser.yml#L13
  • https://github.com/meltwater/drone-cache/blob/master/.goreleaser.yml#L47

However, I don't see specific Windows builds on Docker Hub for drone-cache. I'll look into this more and figure out what's missing from goreleaser to get this through

bdebyl avatar Jul 19 '22 14:07 bdebyl

Upon further investigation it seems like the upstream dependency for mattn/go-ieproxy (see here) used by the Azure Cloud provider we support in drone-cache

I am unsure if go-ieproxy#44 will fix these build issues with Drone Cache (via Goreleaser) or not, but when this is merged we can certainly try and attempt to re-enable Windows based builds.

I will use this issue to track the Windows compiling issues as well.

example failure for Windows (any ARCH):

vendor/github.com/mattn/go-ieproxy/ieproxy_windows.go:22:6: getConf redeclared in this block
	vendor/github.com/mattn/go-ieproxy/ieproxy_unix.go:6:6: other declaration of getConf
vendor/github.com/mattn/go-ieproxy/ieproxy_windows.go:28:6: reloadConf redeclared in this block
	vendor/github.com/mattn/go-ieproxy/ieproxy_unix.go:10:6: other declaration of reloadConf
vendor/github.com/mattn/go-ieproxy/ieproxy_windows.go:133:6: overrideEnvWithStaticProxy redeclared in this block
	vendor/github.com/mattn/go-ieproxy/ieproxy_unix.go:14:6: other declaration of overrideEnvWithStaticProxy
vendor/github.com/mattn/go-ieproxy/pac_windows.go:9:29: ProxyScriptConf.findProxyForURL redeclared in this block
	vendor/github.com/mattn/go-ieproxy/pac_unix.go:6:29: other declaration of findProxyForURL

bdebyl avatar Oct 06 '22 18:10 bdebyl