-
Notifications
You must be signed in to change notification settings - Fork 28
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
Strange error message when trying to use plugin-git #147
Comments
Do you get this with other containers/steps too? |
No, without the
this did actually run, and gave me a proper log:
there you see that it cannot resolve "github.com", this is because it is lacking the environment variables
EDIT2: Actually, dropping the submodule_override allows me to successfully clone using this block:
but that's using Drone's plugin, no? So I better change to woodpecker's for future compatibility guarantees? |
Yes, that's the drone one. What happens if you just use clone:
- name: git
image: woodpeckerci/plugin-git ? |
That's really weird. Can you check the logs of woodpecker, docker etc.? Is there an error? |
Sure, this is after I push a commit which uses For the server: $ docker logs woodpeckerci-woodpecker-server-1 2>&1 | tail -n 5
{"level":"error","repo_id":"12","pipeline_id":"537","workflow_id":"412","error":"sql: no rows in result set","time":"2024-05-23T13:43:47Z","message":"queue.Done: cannot ack workflow"}
{"level":"error","repo_id":"12","pipeline_id":"537","workflow_id":"412","error":"stream: not found","time":"2024-05-23T13:43:48Z","message":"done: cannot close log stream for step 1462"}
{"level":"error","repo_id":"12","pipeline_id":"537","workflow_id":"412","error":"stream: not found","time":"2024-05-23T13:43:48Z","message":"done: cannot close log stream for step 1463"}
{"level":"error","repo_id":"12","pipeline_id":"537","workflow_id":"412","error":"stream: not found","time":"2024-05-23T13:43:48Z","message":"done: cannot close log stream for step 1464"}
{"level":"error","repo_id":"12","pipeline_id":"537","workflow_id":"412","error":"stream: not found","time":"2024-05-23T13:43:48Z","message":"done: cannot close log stream for step 1465"} For the agent: $ docker logs woodpeckerci-woodpecker-agent-1 2>&1 | tail -n 2
{"level":"error","error":"rpc error: code = Unknown desc = step finished with exit code 1, Error response from daemon: open /var/lib/docker/overlay2/93a90a69b5e1b59b33054616556fb6d2f5015dff02adba21d83aab890c27ad76/.tmp-committed2378443676: no such file or directory","time":"2024-05-23T13:43:47Z","message":"grpc error: wait(): code: Unknown"}
{"level":"warn","repo":"bjodah/finitediff","pipeline":"44","id":"412","error":"rpc error: code = Unknown desc = step finished with exit code 1, Error response from daemon: open /var/lib/docker/overlay2/93a90a69b5e1b59b33054616556fb6d2f5015dff02adba21d83aab890c27ad76/.tmp-committed2378443676: no such file or directory","time":"2024-05-23T13:43:47Z","message":"cancel signal received"} For docker: $ tail -n 11 /var/log/docker.log
2024/05/23 15:41:17 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
time="2024-05-23T15:43:47.406756898+02:00" level=error msg="Handler for POST /v1.43/containers/create returned error: open /var/lib/docker/overlay2/93a90a69b5e1b59b33054616556fb6d2f5015dff02adba21d83aab890c27ad76/.tmp-committed2378443676: no such file or directory"
2024/05/23 15:43:53 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:44:07 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:45:06 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:45:11 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:45:39 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:45:43 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:48:18 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:48:56 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98)
2024/05/23 15:49:02 http: superfluous response.WriteHeader call from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*respWriterWrapper).WriteHeader (wrap.go:98) If i then push a commit reverting back to using
whereas I see no new output in the logs of the agent and server containers. EDIT: the opentelemetry is probably just noise, looks like it has been addressed here: |
If you run it completely without a custom |
Yes, then it's working fine. |
Can you try to change the To get exactly the same clone step as the default one: - name: clone
image: docker.io/woodpeckerci/plugin-git:2.4.0
settings:
depth: 0
tags: true # only if event = tag What happens if you try to manually exec the plugin from the docker cli? |
Manually executing docker reproduces the error: # ./my-command.sh
docker: Error response from daemon: open /var/lib/docker/overlay2/93a90a69b5e1b59b33054616556fb6d2f5015dff02adba21d83aab890c27ad76/.tmp-committed3083405079: no such file or directory.
See 'docker run --help'.
# cat my-command.sh
#!/bin/sh
docker run --rm \
-e CI_REPO_REMOTE=https://github.com/bjodah/finitediff.git \
-e CI_WORKSPACE=/go/src/github.com/bjodah/finitediff \
-e CI_BUILD_EVENT=push \
-e CI_COMMIT_SHA=a342cdb59ee6b8a2ac96c0ea4f0539d34c4fd086 \
-e CI_COMMIT_REF=refs/heads/master \
woodpeckerci/plugin-git The host is a dedicated Alpine VM: # docker --version
Docker version 25.0.5, build d260a54c81efcc3f00fe67dee78c94b16c2f8692
# cat /etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.19.1
PRETTY_NAME="Alpine Linux v3.19"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues" Docker CLI looks functional at first glance: # docker run --rm hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
... |
Using this for
|
# docker info
|
So this seems to be a docker problem tbh. Can you try executing without the env vars?
So this can be used for a workaround. |
Can you elaborate on "without the env vars"? |
Ah, I think I see your point: # ./my-command2.sh
docker: Error response from daemon: open /var/lib/docker/overlay2/93a90a69b5e1b59b33054616556fb6d2f5015dff02adba21d83aab890c27ad76/.tmp-committed3365361133: no such file or directory.
See 'docker run --help'.
# cat ./my-command2.sh
#!/bin/sh
docker run --rm \
woodpeckerci/plugin-git |
Using a full URL does the trick on the command line as well: # docker run --rm docker.io/woodpeckerci/plugin-git:2.4.0
no commit information: using head checkout
+ git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Initialized empty Git repository in /.git/
+ git config --global --replace-all safe.directory
+ git remote add origin
+ git fetch --no-tags --depth=1 --filter=tree:0 origin +refs/heads/master:
fatal: no path specified; see 'git help pull' for valid url syntax
exit status 128 |
Yes, so it seems to be not a problem with our plugin. Maybe you can ask docker developers or use the full URL as workaround if that's fine for you? |
Yes, that's fine. Thank you for your help in debugging this. |
I'm trying to do a full checkout in my .woodpecker.yaml, so I added this block (verbatim from the documentation):
However, instead of getting a normal log for this step (called "git"), I get:
any idea how I could troubleshoot this?
The text was updated successfully, but these errors were encountered: