gluonhq/substrate

Build on WindowsServerCore container fails

kristofdho opened this issue · 3 comments

Build fails on WindowsServerCore container, because ie4uinit dos not exist. I have not yet found a way to install this into the container as it doesn't have a Desktop UI, and ie4uinit is part of UI related stuff.

Fix would be to check if ie4uinit exists, and not run it if it doesn't.
Alternatively, ignore exceptions if it doesn't run, as it's only cosmetic.

Expected Behavior

Build succeeds

Current Behavior

This piece of code crashes:

private void clearExplorerCache() throws IOException, InterruptedException {
ProcessRunner clearCache = new ProcessRunner("ie4uinit");
clearCache.addArg(findCacheFlag());
clearCache.runProcess("Clear Explorer cache");
}

Because ie4uinit does not exist.

Steps to Reproduce

Do a build on WindowsServerCore.

Your Environment

WindowsServerCore 2022 container, substrate 0.0.61

Yes, it makes sense what you propose about doing a check to se if ie4uinit exists, though it might be more simple to put that code inside a try-catch and just log a warning if the process runner fails? Do you want to take this?

@jperedadnr see attached PR.
FYI, this is not that urgent for us, since we need to support older plugin versions on our CI environment anyway. So as a workaround we've added a noop ie4uinit.exe on the PATH, which circumvents the issue.

@jperedadnr I'm sure your time is limited, but any chance to get this looked at? I'd like to get this included so we could possibly remove our workaround.