Forgejo runner - alpha release, should not be considered secure enough to deploy in production
Find a file
ChristopherHX e36300ce28 fix docker executor on windows and local actions ()
If the Workdir field doesn't ends with the filepath seperator,
bad things happen

Fixes 

Sample for host mode on windows, needs be adjusted for linux e.g. replace pwsh with bash
Also fixes
```yaml
on: push
jobs:
  _:
    runs-on: self-hosted
    steps:
    - uses: actions/checkout@v3
      with:
        path: subdir/action
    - uses: ./subdir/action
```

with an action.yml in the same repo
```yaml
runs:
  using: composite
  steps:
    - run: |
        echo "Hello World"
      shell: pwsh
```

Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/34
Reviewed-by: Jason Song <i@wolfogre.com>
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: ChristopherHX <christopherhx@noreply.gitea.io>
Co-committed-by: ChristopherHX <christopherhx@noreply.gitea.io>
2023-03-06 13:24:32 +08:00
.gitea/workflows run nightly on ubuntu runner 2023-03-01 12:32:00 +08:00
artifactcache fix lint error () 2023-03-01 06:40:20 +08:00
client Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
cmd Support cache () 2023-02-28 23:39:30 +08:00
config Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
core Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
engine Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
poller Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
register Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
runtime fix docker executor on windows and local actions () 2023-03-06 13:24:32 +08:00
.gitignore Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
.golangci.yml chore: add .golangci config 2022-11-24 15:36:28 +08:00
.goreleaser.yaml disable more arch 2023-03-01 13:00:18 +08:00
build.go Support cache () 2023-02-28 23:39:30 +08:00
go.mod Support cache () 2023-02-28 23:39:30 +08:00
go.sum Support cache () 2023-02-28 23:39:30 +08:00
LICENSE Add license 2022-11-24 15:36:16 +08:00
main.go Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
Makefile Add copyright header and gitea-vet () 2023-02-28 18:44:46 +08:00
README.md feat: don't require docker () 2023-01-27 20:42:02 +08:00

act runner

Act runner is a runner for Gitea based on act.

Prerequisites

Docker Engine Community version is required. To install Docker CE, follow the official install instructions.

Quickstart

Build

make build

Register

./act_runner register

And you will be asked to input:

  1. Gitea instance URL, like http://192.168.8.8:3000/. You should use your gitea instance ROOT_URL as the instance argument and you should not use localhost or 127.0.0.1 as instance IP;
  2. Runner token, you can get it from http://192.168.8.8:3000/admin/runners;
  3. Runner name, you can just leave it blank;
  4. Runner labels, you can just leave it blank.

The process looks like:

INFO Registering runner, arch=amd64, os=darwin, version=0.1.5.
WARN Runner in user-mode.
INFO Enter the Gitea instance URL (for example, https://gitea.com/):
http://192.168.8.8:3000/
INFO Enter the runner token:
fe884e8027dc292970d4e0303fe82b14xxxxxxxx
INFO Enter the runner name (if set empty, use hostname:Test.local ):

INFO Enter the runner labels, leave blank to use the default labels (comma-separated, for example, self-hosted,ubuntu-20.04:docker://node:16-bullseye,ubuntu-18.04:docker://node:16-buster):

INFO Registering runner, name=Test.local, instance=http://192.168.8.8:3000/, labels=[ubuntu-latest:docker://node:16-bullseye ubuntu-22.04:docker://node:16-bullseye ubuntu-20.04:docker://node:16-bullseye ubuntu-18.04:docker://node:16-buster].
DEBU Successfully pinged the Gitea instance server
INFO Runner registered successfully.

You can also register with command line arguments.

./act_runner register --instance http://192.168.8.8:3000 --token <my_runner_token> --no-interactive

If the registry succeed, it will run immediately. Next time, you could run the runner directly.

Run

./act_runner daemon