Skip to content

Commit 1307479

Browse files
committed
Update README / log print branding
1 parent 3cbf68e commit 1307479

2 files changed

Lines changed: 8 additions & 4 deletions

File tree

README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,10 @@ go run . run
131131
- removed openbsd/mips binaries, because this prevents updates to go and dependencies
132132
- go 1.21 now required
133133

134+
# Breaking changes in 0.11.0
135+
- based on [actions-oss/act-cli@v0.3.4](https://github.com/actions-oss/act-cli/tree/v0.3.4)
136+
- go 1.24 now required
137+
134138
# Known Limitations
135139
- ~~This runner ignores pre and post steps of javascript actions~~ Is now working in 0.6.0
136140
- ~~[actions/cache](https://github.com/actions/cache) is incompatible and won't be able to **save your cache**~~
@@ -150,10 +154,10 @@ go run . run
150154
- Job Outputs are sent regardless if they would leak secret data to non secret storage
151155
- You need to provide the `node` program yourself in all containers / host configurations
152156
- You need to manually update the runner
153-
- Most issues of https://github.com/nektos/act/issues applies to this runner as well
157+
- Most issues of https://github.com/nektos/act/issues and https://github.com/actions-oss/act-cli/issues applies to this runner as well
154158

155159
# How does it work?
156-
This runner implements the same protocol as the [actions/runner](https://github.com/actions/runner) in a different way, as such it can be used as a self-hosted runner exactly like the official one. To get this working, I initially built an actions service replacement [ChristopherHX/runner.server](https://github.com/ChristopherHX/runner.server) for the official [actions/runner](https://github.com/actions/runner). My own actions service allowed me to implement the base protocol for this runner and debug how the protocol is serializeing and parsing json messages, while still being incompatible with github. After testing against github, the first thing happend was loosing the ability to run any github action workflows on my test repository. My invalid attempts to register a custom runner caused unrecoverable Internal Server Errors on githubs side, I decided to delete this test repository. After some work everything worked and finally it is safe to register this runner against github. To execute steps this runner translates the github actions job request to be compatible with a modified version of [nektos/act](https://github.com/nektos/act) ( [ChristopherHX/act](https://github.com/ChristopherHX/act) ), which adds a local task runner without the need for docker and increased platform support, also the log output of act gets redirected to github for live logs and storing log files.
160+
This runner implements the same protocol as the [actions/runner](https://github.com/actions/runner) in a different way, as such it can be used as a self-hosted runner exactly like the official one. To get this working, I initially built an actions service replacement [ChristopherHX/runner.server](https://github.com/ChristopherHX/runner.server) for the official [actions/runner](https://github.com/actions/runner). My own actions service allowed me to implement the base protocol for this runner and debug how the protocol is serializeing and parsing json messages, while still being incompatible with github. After testing against github, the first thing happend was loosing the ability to run any github action workflows on my test repository. My invalid attempts to register a custom runner caused unrecoverable Internal Server Errors on githubs side, I decided to delete this test repository. After some work everything worked and finally it is safe to register this runner against github. To execute steps this runner translates the github actions job request to be compatible with a modified version of [nektos/act](https://github.com/nektos/act) ( [actions-oss/act-cli](https://github.com/actions-oss/act-cli) ), which adds a local task runner without the need for docker and increased platform support, also the log output of act gets redirected to github for live logs and storing log files.
157161

158162
# Does this runner work without github?
159163
Yes, you can use this runner together with [ChristopherHX/runner.server](https://github.com/ChristopherHX/runner.server) locally on your PC without depending on compatibility with github. Also CI tests for this runner are using [ChristopherHX/runner.server](https://github.com/ChristopherHX/runner.server), this avoids requiring a PAT for github to run tests and enshures that you are always able to run it locally without github.

actionsdotnetactcompat/act_worker.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ func ExecWorker(rqt *protocol.AgentJobRequestMessage, wc actionsrunner.WorkerCon
212212
ctx: jobExecCtx,
213213
}
214214
logger.SetFormatter(formatter)
215-
logger.Println("Initialize translating the job request to nektos/act")
215+
logger.Println("Initialize translating the job request to actions-oss/act-cli (nektos/act)")
216216
vssConnection, vssConnectionData, _ := rqt.GetConnection("SystemVssConnection")
217217
if jlogger.Connection != nil {
218218
vssConnection.Client = jlogger.Connection.Client
@@ -514,7 +514,7 @@ func ExecWorker(rqt *protocol.AgentJobRequestMessage, wc actionsrunner.WorkerCon
514514
if err := os.MkdirAll(cacheDir, 0777); err != nil {
515515
logger.Warn("github-act-runner is be unable to access \"" + cacheDir + "\". You might want set one of the following environment variables XDG_CACHE_HOME, HOME to a user read and writeable location. Details: " + err.Error())
516516
}
517-
logger.Println("Starting nektos/act")
517+
logger.Println("Starting actions-oss/act-cli (nektos/act)")
518518
select {
519519
case <-jobExecCtx.Done():
520520
default:

0 commit comments

Comments
 (0)