main
…
…
…
tinqs/ci
Tinqs CI toolchain — composite Gitea Actions and purpose-built runner images.
Actions
| Action | What it does |
|---|---|
tinqs/ci/checkout@v1 |
Clone a repo from tinqs.com |
tinqs/ci/setup-go@v1 |
Install Go (skips if pre-baked) |
tinqs/ci/setup-node@v1 |
Install Node.js + pnpm (skips if pre-baked) |
tinqs/ci/setup-aws@v1 |
Install AWS CLI + optional ECR login |
steps:
- uses: tinqs/ci/checkout@v1
- uses: tinqs/ci/setup-go@v1
- uses: tinqs/ci/setup-aws@v1
with:
ecr-login: 'true'
ecr-repo: '149751500842.dkr.ecr.eu-west-1.amazonaws.com/tinqs-git'
Runner Images
Each workflow type gets a lean, purpose-built runner image. No fat "everything" image.
| Image | runs-on |
Contents | Used by |
|---|---|---|---|
| base | — | Alpine + git + AWS CLI + SSH | Foundation for all others |
| go | go |
base + Go 1.26 | build-tstudio, deploy-proxy |
| node | node |
base + Node 22 + pnpm | deploy-docs |
| docker | docker |
docker:dind + Go + AWS CLI | build (platform), deploy-bot |
| deploy | deploy |
base only (lightest) | deploy-arikigame, release |
| godot | godot |
base + headless Godot 4.6 + export templates | ariki-game builds (future) |
Build all images
cd images
./build-all.sh v1
Images push to ECR as tinqs-runner-{name}:v1.
How routing works
The Lambda dispatcher reads runs-on: from the workflow and starts a Fargate task with the matching image:
runs-on: go → tinqs-runner-go (Go builds)
runs-on: node → tinqs-runner-node (frontend builds)
runs-on: docker → tinqs-runner-docker (Docker image builds)
runs-on: deploy → tinqs-runner-deploy (S3/ECS deploys)
runs-on: godot → tinqs-runner-godot (game exports)
runs-on: host → legacy runner (forge-runner, temporary)
Description
Languages
Go
80.4%
Dockerfile
10.3%
Shell
5.5%
Makefile
3.8%