Docker permissions issue when running pipeline #52
Labels
No Label
kind
bug
kind
build
kind
dependencies
kind
docs
kind
enhancement
kind
feature
kind
help wanted
kind
proposal
kind
refactor
related
act
related
environment
related
exec
related
gitea
related
workflow
reviewed
confirmed
reviewed
duplicate
reviewed
invalid
reviewed
needs feedback
reviewed
wontfix
reviewed
workaround
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: gitea/act_runner#52
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Running this script from the blog post about gitea actions
pipeline.yml:
Log:
Are you running with WSL or plain Windows?
Plain windows currently, should I be in wsl?
oh no, I was just asking for debugging sake.
Either should be fine, but the runner is looking for the docker socket using a linux path, which clearly is a bug.
A workaround could be to use to manually set the label on your runner to
self-hosted
so that the runner doesn't try to use docker when builds are passed to it. In your yaml you'll need to changeruns-on: ubuntu-latest
toruns-on: self-hosted
in that case. A caveat is that you probably will need to have nodejs installed on your machine as well.General warnings: This will mean your builds are not containerized meaning they will run as the same windows user that is running the act_runner binary. Be aware of this, and only run pipelines you trust.
Going to keep this open to work through the windows stuff myself as well.
Workaround got me further setting to self-hosted (I do have node installed)
It got into the second step this time:
Could be just how it outputted but it looks like that path is missing some of the slashes
The directory
C:\Users\Matt\.cache\act\<hash>\workflow
does exist on my machine until it's cleaned up when the task failsShould I create a separate issue for this?
This issue might help.
When running
self-hosted
runner on Windows, the default shell need to be specified aspowershell
.I have a similar issue using act_runner under windows host with a windows container. Could not get the runner to execute '- run: ...'. The paths its using are linux paths which fails in Windows containers.
Trying the workaround in previous comment (self-hosted with powershell), it did not work because the runner tries to pull a linux-based container "node:16-bullseye" which is not available for windows container. I could not figure out why it pulls the node container. When switching to linux-based containers it does pull the image but fails to execute the powershell.
I could execute 'echo "Hello world!"' under windows host with linux container without powershell. But this configuration is not useful for my build environment based on Windows with Visual Studio.
Would be great if self-hosted would work under windows host (with windows containers).
Sorry,
act_runner
doesn't support Windows containers so far. If you want to run a job in Windows environment, you need to register a runner withhost
label likewindows:host
and run the runner on a Windows host or vm, and the job'sruns-on
should also be specified aswindows
. Inhost
mode, runner will run all the steps of the job on the host directly and docker won't be used.If there is anything unclear, please feel free to comment.
I configured the runner as you commented before editing (via my emails) and it works. Thanks :-)