-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Multiple levels of wildcards not supported or not working properly #1900
Comments
I'm having the same problem while configuring buildkit for same caching purpose in .NET. Is there an alternative ?
Thanks 😊 |
I don't think it is about multiple level of wildcards. When I run the below script, that has only one level of wildcard, it fails:
It appears to me that it is about wildcards in directories. |
"needs investigation" Any update on this? after the last update, no one in our team using the windows version of docker can build their images anymore :/ EDIT: |
Good morning, |
If this is gonna be fixed, it would be nice have a way to have these wildcards and preserve the folder structure as well. |
Same issue happened while I was trying to build the - https://github.com/Squidex/squidex. |
Same with
doesn't work with buildkit, works fine without buildkit |
Please fix this - it's creating so much work and can't be that difficult to solve this - please. IMHO this ticket doesn't need any investigation, it needs solving :D (talking of labels) |
Stumbled into a workaround thanks to a very unique combination of sheer laziness and force of stubborn will. I just added a "staging" layer and slammed my entire context to copy from It appears to have the added benefit of standardizing to *nixy
I'm sure this is bloating my caches with unneeded builds though. I'm trying, but I can't figure out how to explicitly exclude the stage from caching (via |
Is there anything we can do to get this looked at? |
Is there any hope if this issue being addressed? |
This is for buildkit. It's happening to me on my Mac.
…-Chad
On Wed, Jun 28, 2023 at 4:01 AM Piotr Kula ***@***.***> wrote:
Hi all
This seems like a very strange issue that globbing does not work?
Is this fo for buildkit on windows only (via WSL)
The proposed work arounds above defeat the purpose of layer caching. in
docker build?
—
Reply to this email directly, view it on GitHub
<#1900 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAGPWHR2X4EJMJEAISHMBQ3XNQFG7ANCNFSM4U47NNVA>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
OK so its not a host issue.. its just globbing is not implemented in copy for buildkit That is very strange to have feature parity missing like that.. especially when the legacy builder is about to be removed. Who do we escalate this too because I have noticed buildkit issues have been open for years and nobody really doing anything here? |
Any updates on this? |
I used to be able to copy all files of a specific type from two-levels nested. This no longer works in BuildKit.
Why? To avoid cache busting. We want to restore our dependencies from all *.csproj files, and not invalidate that cache layer when a source file changes.
see https://stackoverflow.com/a/58697043 as the defacto approach most dotnet docker builds will be using.
If we just copy everything over first, that means any change triggers cache-busting and a full package restore is again required. Without wildcards, we have to manually maintain a long list of csproj file COPYs that is error-prone and unmaintainable across many solutions.
This puts all found files into a single folder (which at least works for the goal we are trying to achieve)
I now get errors like:
or sometimes nothing is copied, so i get missing files errors later in the next RUN command.
As far as I an tell,
COPY */*.csproj ./
still works as expected, when csproj files are only one-level nested, but doesn't work for the two-level nested case.As a workaround, I might be able to move to a one-level nested structure, though ideally i wouldn't have to change my structure to fit docker for something that used to work?
Thanks!
The text was updated successfully, but these errors were encountered: