-
-
Notifications
You must be signed in to change notification settings - Fork 54
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
build stages not being pushed #131
Comments
Okay, it's not that easy. I've forked this repo and tried the change. build-output.log now does get populated but the output is very different from before and the logic in _get_stages doesn't work on it. Not sure if the different output is because of buildkit now being used. |
Yeah, it was because of buildkit. This did the trick for now:
Might be good to add this to your examples. There's a warning about this environment variable being deprecated, so this solution might not be permanent. |
This issue still exists in v6. The *-stages layers are exported and pushed to ECR (I used ECR in my use case) successfully. However, each run results in a complete rebuild of all images, after pulling stage layers. RESOLUTION: adding the following line under each step which uses this action (thanks @jilipop) resolved the issue for me in v6
|
Now this works again even with BuildKit enabled in v8 |
We've been using v5 in a Github Action successfully for many months and it suddenly stopped pushing the build stages to ECR correctly, always only pushing the last stage with tag "1". I'm not aware of any relevant change on our side. The only thing I noticed is a more recent Github Actions runner version being used. Updating to docker-build-with-cache-action v6 didn't help.
I did a little digging and I think this is what's happening:
Apparently in your docker-build.sh the piping of the output in this code no longer works:
The build-output.log remains empty and _get_stages doesn't find any stages, so none get pushed, which in turn messes up our whole deployment.
Anyway, sources on the internet say docker build no longer logs to standard output but rather to the standard error stream, so adding 2>&1 before the pipe operator should fix the problem. It does when I try to write docker build output to both the console and a file locally:
--> full output in console, empty test.log
--> full output in both console and test.log
The text was updated successfully, but these errors were encountered: