change gitea port to 80 as workaround of runner bug
This commit is contained in:
49
apps/garm/README.md
Normal file
49
apps/garm/README.md
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
# garm
|
||||||
|
|
||||||
|
This app deploys `garm` with external `garm-provider-k8s`.
|
||||||
|
|
||||||
|
- API/UI ingress: `https://garm.lumpiasty.xyz`
|
||||||
|
- Internal service DNS: `http://garm.garm.svc.cluster.local:9997`
|
||||||
|
|
||||||
|
## Vault secret requirements
|
||||||
|
|
||||||
|
`VaultStaticSecret` reads `secret/data/garm` and expects at least:
|
||||||
|
|
||||||
|
- `jwt_auth_secret`
|
||||||
|
- `database_passphrase` (must be 32 characters)
|
||||||
|
|
||||||
|
## Connect garm to Gitea
|
||||||
|
|
||||||
|
After Flux reconciles this app, initialize garm and add Gitea endpoint/credentials.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1) Initialize garm (from your local devenv shell)
|
||||||
|
garm-cli init \
|
||||||
|
--name homelab \
|
||||||
|
--url https://garm.lumpiasty.xyz \
|
||||||
|
--username admin \
|
||||||
|
--email admin@lumpiasty.xyz \
|
||||||
|
--password '<STRONG_ADMIN_PASSWORD>' \
|
||||||
|
--metadata-url http://garm.garm.svc.cluster.local:9997/api/v1/metadata \
|
||||||
|
--callback-url http://garm.garm.svc.cluster.local:9997/api/v1/callbacks \
|
||||||
|
--webhook-url http://garm.garm.svc.cluster.local:9997/webhooks
|
||||||
|
|
||||||
|
# 2) Add Gitea endpoint
|
||||||
|
garm-cli gitea endpoint create \
|
||||||
|
--name local-gitea \
|
||||||
|
--description 'Cluster Gitea' \
|
||||||
|
--base-url http://gitea-http.gitea.svc.cluster.local:80 \
|
||||||
|
--api-base-url http://gitea-http.gitea.svc.cluster.local:80/api/v1
|
||||||
|
|
||||||
|
# 3) Add Gitea PAT credentials
|
||||||
|
garm-cli gitea credentials add \
|
||||||
|
--name gitea-pat \
|
||||||
|
--description 'PAT for garm' \
|
||||||
|
--endpoint local-gitea \
|
||||||
|
--auth-type pat \
|
||||||
|
--pat-oauth-token '<GITEA_PAT_WITH_write:repository,write:organization>'
|
||||||
|
```
|
||||||
|
|
||||||
|
Then add repositories/orgs and create pools against provider `kubernetes_external`.
|
||||||
|
|
||||||
|
If Gitea refuses webhook installation to cluster-local URLs, set `gitea.config.webhook.ALLOWED_HOST_LIST` in `apps/gitea/release.yaml`.
|
||||||
@@ -90,6 +90,11 @@ spec:
|
|||||||
# Requirement for sharing ip with other service
|
# Requirement for sharing ip with other service
|
||||||
externalTrafficPolicy: Cluster
|
externalTrafficPolicy: Cluster
|
||||||
ipFamilyPolicy: RequireDualStack
|
ipFamilyPolicy: RequireDualStack
|
||||||
|
http:
|
||||||
|
type: ClusterIP
|
||||||
|
# We need the service to be at port 80 specifically
|
||||||
|
# to work around bug of Actions Runner
|
||||||
|
port: 80
|
||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
Reference in New Issue
Block a user