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

Work around Julia artifacts permission errors #1603

Closed
visr opened this issue Jul 2, 2024 · 1 comment · Fixed by #1710
Closed

Work around Julia artifacts permission errors #1603

visr opened this issue Jul 2, 2024 · 1 comment · Fixed by #1710
Assignees
Labels
CI/CD Continuous Integration/Continuous deployment

Comments

@visr
Copy link
Member

visr commented Jul 2, 2024

Sometimes we get a randomly failing build, of the form:

ERROR: IOError: rm("C:\Users\svc-teamcity-ansible\.julia\artifacts\jl_wq7J7S\bin"): directory not empty (ENOTEMPTY)

The upstream issue and workaround is JuliaLang/julia#52272 (comment).

icacls .julia/artifacts /q /c /t /reset

Of course it is a lot of work to fix permissions manually on TeamCity agents, so we need something better.

@evetion suggested earlier to make a TeamCity job which can fix this error. Or perhaps we can just try fixing the permissions on each run, to never leave behind a broken agent.

@visr visr added the CI/CD Continuous Integration/Continuous deployment label Jul 2, 2024
@github-project-automation github-project-automation bot moved this to To do in Ribasim Jul 2, 2024
@evetion
Copy link
Member

evetion commented Jul 2, 2024

I've made a build (and have scheduled it to run on a failing agent) https://dpcbuild.deltares.nl/buildConfiguration/Ribasim_Ribasim_Windows_FixJuliaArtifactPermissions?branch=continuous_control&buildTypeTab=overview&mode=builds

Let's see how often we need to run this, and either detect the failure and run it, or always run it.

@evetion evetion moved this from To do to 🏗 In progress in Ribasim Aug 5, 2024
evetion added a commit that referenced this issue Aug 12, 2024
Fixes #1603

Given the recent changes in Teamcity, the original project is lost-ish
https://dpcbuild.deltares.nl/buildConfiguration/Ribasim_Ribasim_Windows_FixJuliaArtifactPermissions?branch=continuous_control&buildTypeTab=overview&mode=builds?
As in automatic (?), greyed-out, no build steps or builds visible.
Furthermore, the new Template(s) used is/are platform-agnostic, so
harder to integrate a Windows specific fix.

So the easier way is just to integrate it into pixi, and always running
it at CI time, also useful when it irrevocably happens on Windows
laptops. However, there seems to be no way to have platform specific
tasks (@Hofer-Julian is that correct and maybe worth an issue? I know
you proposed the deno shell 😉), so I now just append an `exit`, ignoring
any exit code of the previous command.

---------

Co-authored-by: Martijn Visser <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI/CD Continuous Integration/Continuous deployment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants