feat: launch official product site and one-click installers
This commit is contained in:
38
install/install.ps1
Normal file
38
install/install.ps1
Normal file
@@ -0,0 +1,38 @@
|
||||
param(
|
||||
[string]$RepoUrl = "https://fun-md.com/Fun_MD/devops-skills.git",
|
||||
[string]$CodexHome = "$HOME\.codex"
|
||||
)
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
$skillName = "gitea-issue-devops-agent"
|
||||
$targetDir = Join-Path $CodexHome "skills\$skillName"
|
||||
$tmpRoot = Join-Path $env:TEMP ("devops-skills-" + [Guid]::NewGuid().ToString("N"))
|
||||
|
||||
try {
|
||||
if (-not (Get-Command git -ErrorAction SilentlyContinue)) {
|
||||
throw "[install] git is required but not found."
|
||||
}
|
||||
|
||||
Write-Host "[install] downloading $skillName from $RepoUrl"
|
||||
git clone --depth 1 $RepoUrl $tmpRoot | Out-Null
|
||||
|
||||
$sourceDir = Join-Path $tmpRoot "skills\$skillName"
|
||||
if (-not (Test-Path $sourceDir)) {
|
||||
throw "[install] skill directory not found in repository."
|
||||
}
|
||||
|
||||
New-Item -ItemType Directory -Force (Join-Path $CodexHome "skills") | Out-Null
|
||||
if (Test-Path $targetDir) {
|
||||
Remove-Item -Recurse -Force $targetDir
|
||||
}
|
||||
Copy-Item -Path $sourceDir -Destination $targetDir -Recurse -Force
|
||||
|
||||
Write-Host "[install] done"
|
||||
Write-Host "[install] installed path: $targetDir"
|
||||
}
|
||||
finally {
|
||||
if (Test-Path $tmpRoot) {
|
||||
Remove-Item -Recurse -Force $tmpRoot
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user