f20bc770f5
- skills/gitea-deploy/: new skill for Gitea deployment automation - tools/: shared utility scripts - skills/sdlc/SKILL.md: add Foreground Service Rule for long-running processes (background start + readiness polling pattern)
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
@startuml gitea-deploy-workflow
|
|
skinparam defaultFontName Arial
|
|
skinparam backgroundColor #FAFAFA
|
|
|
|
actor Developer
|
|
participant "gitea-deploy\nSkill" as SKILL
|
|
participant "Local git" as GIT
|
|
participant "VPS (SSH)" as VPS
|
|
participant "Gitea API" as API
|
|
|
|
Developer -> SKILL : deploy gitea + push project
|
|
SKILL -> Developer : collect VPS host, SSH user, key, credentials
|
|
|
|
SKILL -> GIT : git rev-parse (check repo)
|
|
alt not a git repo
|
|
SKILL -> Developer : offer git init
|
|
Developer -> GIT : confirm → git init + initial commit
|
|
end
|
|
|
|
SKILL -> VPS : ssh echo OK (connectivity test)
|
|
alt SSH fails
|
|
SKILL -> Developer : report error, stop
|
|
end
|
|
|
|
SKILL -> VPS : docker --version
|
|
alt Docker not installed
|
|
VPS -> VPS : curl get.docker.com | sh
|
|
end
|
|
|
|
SKILL -> VPS : upload docker-compose.yml
|
|
SKILL -> VPS : docker compose up -d
|
|
|
|
loop poll every 5s (max 60s)
|
|
SKILL -> VPS : curl /api/healthz
|
|
end
|
|
|
|
SKILL -> VPS : gitea admin user create
|
|
SKILL -> API : POST /api/v1/user/repos
|
|
|
|
SKILL -> GIT : git remote add gitea ssh://...
|
|
SKILL -> GIT : git push -u gitea --all
|
|
|
|
SKILL -> API : GET /api/v1/repos/... (verify)
|
|
SKILL -> Developer : report web URL + clone URL
|
|
@enduml
|