# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Semaphore UI
spec:
    description: |
        Semaphore UI is a modern web interface for running Ansible playbooks, Terraform/OpenTofu plans, PowerShell scripts, and other DevOps tools. Features task scheduling, notifications, a REST API, and built-in BoltDB storage requiring no external database.
    coverImage: https://user-images.githubusercontent.com/914224/134777345-8789d9e4-ff18-435b-b931-3c90b2214e0e.png
    icon: https://avatars.githubusercontent.com/u/79228966?s=200&v=4
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: The domain to access Semaphore UI
        - key: SEMAPHORE_ADMIN_PASSWORD
          type: PASSWORD
          name: Admin Password
          description: Password for the admin account
    tags:
        - Tool
        - DevOps
    readme: |
        # Semaphore UI

        A modern web interface for running Ansible playbooks, Terraform/OpenTofu plans, PowerShell scripts, and other DevOps automation tools. No external database required.

        ## What You Can Do After Deployment

        1. **Visit your domain** — log in with admin / your configured password
        2. **Add credentials** — configure SSH keys, passwords, or cloud API tokens
        3. **Create projects** — organize your automation into separate projects
        4. **Run playbooks** — execute Ansible playbooks, Terraform plans, or shell scripts
        5. **Schedule tasks** — set up cron-based recurring automation jobs

        ## Key Features

        - Run Ansible, Terraform, OpenTofu, Terragrunt, PowerShell, and Bash
        - Built-in task scheduler with cron expressions
        - Project-based organization with team access controls
        - Real-time task output and execution history
        - REST API for programmatic access
        - Notification integrations (Slack, Telegram, Email)
        - No external database needed (uses embedded BoltDB)

        ## License

        MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    services:
        - name: semaphore
          icon: https://avatars.githubusercontent.com/u/79228966?s=200&v=4
          template: PREBUILT_V2
          spec:
            source:
                image: semaphoreui/semaphore:v2.17.31
            ports:
                - id: web
                  port: 3000
                  type: HTTP
            volumes:
                - id: semaphore-data
                  dir: /tmp/semaphore
            env:
                SEMAPHORE_ACCESS_KEY_ENCRYPTION:
                    default: ${ZEABUR_WEB_URL}
                SEMAPHORE_ADMIN:
                    default: admin
                SEMAPHORE_ADMIN_EMAIL:
                    default: admin@localhost
                SEMAPHORE_ADMIN_NAME:
                    default: Admin
                SEMAPHORE_ADMIN_PASSWORD:
                    default: ${PASSWORD}
                SEMAPHORE_DB_DIALECT:
                    default: bolt
            healthCheck:
                type: HTTP
                port: web
                http:
                    path: /
          domainKey: PUBLIC_DOMAIN
localization:
    es-ES:
        description: |
            Semaphore UI es una interfaz web moderna para ejecutar Ansible Playbooks, planes Terraform/OpenTofu, scripts PowerShell y otras herramientas DevOps. Incluye programacion, notificaciones, API REST y no requiere base de datos externa.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Dominio
              description: El dominio para acceder a Semaphore UI
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: Contrasena de admin
              description: Contrasena para la cuenta de administrador
        readme: |
            # Semaphore UI

            Interfaz web moderna para ejecutar Ansible, Terraform y otras herramientas de automatizacion DevOps. Sin base de datos externa.

            ## Que puedes hacer despues del despliegue

            1. **Visita tu dominio** — inicia sesion con admin / tu contrasena configurada
            2. **Agrega credenciales** — configura claves SSH, contrasenas o tokens API
            3. **Crea proyectos** — organiza la automatizacion en proyectos separados
            4. **Ejecuta playbooks** — ejecuta Ansible, Terraform o scripts de shell
            5. **Programa tareas** — configura trabajos recurrentes basados en cron

            ## Licencia

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    id-ID:
        description: |
            Semaphore UI adalah antarmuka web modern untuk menjalankan Ansible Playbook, Terraform/OpenTofu, skrip PowerShell, dan alat DevOps lainnya. Dilengkapi penjadwalan, notifikasi, REST API, tanpa database eksternal.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Domain
              description: Domain untuk mengakses Semaphore UI
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: Kata Sandi Admin
              description: Kata sandi untuk akun administrator
        readme: |
            # Semaphore UI

            Antarmuka web modern untuk menjalankan Ansible, Terraform, dan alat otomatisasi DevOps lainnya. Tanpa database eksternal.

            ## Apa yang bisa dilakukan setelah deploy

            1. **Buka domain** — masuk dengan admin / kata sandi yang dikonfigurasi
            2. **Tambah kredensial** — konfigurasi kunci SSH, kata sandi, atau token API
            3. **Buat proyek** — atur otomatisasi ke dalam proyek terpisah
            4. **Jalankan playbook** — eksekusi Ansible, Terraform, atau skrip shell
            5. **Jadwalkan tugas** — atur pekerjaan otomatisasi berkala berbasis cron

            ## Lisensi

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    ja-JP:
        description: |
            Semaphore UI は Ansible Playbook、Terraform/OpenTofu、PowerShell スクリプトなどの DevOps ツールを実行するためのモダンなWebインターフェースです。スケジューリング、通知、REST API を内蔵し、外部データベース不要です。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: ドメイン
              description: Semaphore UI にアクセスするためのドメイン
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: 管理者パスワード
              description: 管理者アカウントのパスワード
        readme: |
            # Semaphore UI

            Ansible Playbook、Terraform などの DevOps 自動化ツールを実行するモダンなWebインターフェース。外部データベース不要。

            ## デプロイ後にできること

            1. **ドメインにアクセス** — admin / 設定したパスワードでログイン
            2. **認証情報を追加** — SSHキー、パスワード、クラウドAPIトークンを設定
            3. **プロジェクトを作成** — 自動化タスクをプロジェクトごとに整理
            4. **Playbookを実行** — Ansible、Terraform、シェルスクリプトを実行
            5. **タスクをスケジュール** — Cronベースの定期自動化ジョブを設定

            ## ライセンス

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    ko-KR:
        description: |
            Semaphore UI는 Ansible Playbook, Terraform/OpenTofu, PowerShell 스크립트 등 DevOps 도구를 실행하는 모던 웹 인터페이스입니다. 스케줄링, 알림, REST API를 내장하며 외부 데이터베이스가 필요 없습니다.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 도메인
              description: Semaphore UI에 접속할 도메인
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: 관리자 비밀번호
              description: 관리자 계정 비밀번호
        readme: |
            # Semaphore UI

            Ansible Playbook, Terraform 등 DevOps 자동화 도구를 실행하는 모던 웹 인터페이스. 외부 데이터베이스 불필요.

            ## 배포 후 할 수 있는 것

            1. **도메인 접속** — admin / 설정한 비밀번호로 로그인
            2. **자격 증명 추가** — SSH 키, 비밀번호, 클라우드 API 토큰 설정
            3. **프로젝트 생성** — 자동화 작업을 프로젝트별로 정리
            4. **Playbook 실행** — Ansible, Terraform, 쉘 스크립트 실행
            5. **작업 예약** — Cron 기반 정기 자동화 작업 설정

            ## 라이선스

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    th-TH:
        description: |
            Semaphore UI เป็นเว็บอินเตอร์เฟซสมัยใหม่สำหรับรัน Ansible Playbook, Terraform/OpenTofu, สคริปต์ PowerShell และเครื่องมือ DevOps อื่นๆ มีระบบจัดตาราง แจ้งเตือน REST API และไม่ต้องการฐานข้อมูลภายนอก
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: โดเมน
              description: โดเมนสำหรับเข้าถึง Semaphore UI
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: รหัสผ่านผู้ดูแล
              description: รหัสผ่านสำหรับบัญชีผู้ดูแลระบบ
        readme: |
            # Semaphore UI

            เว็บอินเตอร์เฟซสมัยใหม่สำหรับรัน Ansible, Terraform และเครื่องมือ DevOps อื่นๆ ไม่ต้องการฐานข้อมูลภายนอก

            ## สิ่งที่ทำได้หลังจากติดตั้ง

            1. **เข้าสู่โดเมน** — เข้าสู่ระบบด้วย admin / รหัสผ่านที่ตั้งไว้
            2. **เพิ่มข้อมูลรับรอง** — ตั้งค่า SSH key, รหัสผ่าน, หรือ API token
            3. **สร้างโปรเจกต์** — จัดระเบียบงานอัตโนมัติเป็นโปรเจกต์แยก
            4. **รัน Playbook** — รัน Ansible, Terraform หรือสคริปต์เชลล์
            5. **ตั้งเวลาทำงาน** — ตั้งงานอัตโนมัติแบบ cron

            ## สัญญาอนุญาต

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    zh-CN:
        description: |
            Semaphore UI 是用于运行 Ansible Playbook、Terraform/OpenTofu 计划、PowerShell 脚本等 DevOps 工具的现代网页界面。内置调度、通知、REST API，无需外部数据库。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 域名
              description: 访问 Semaphore UI 的域名
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: 管理员密码
              description: 管理员账号的密码
        readme: |
            # Semaphore UI

            用于运行 Ansible Playbook、Terraform 及其他 DevOps 自动化工具的现代网页界面。无需外部数据库。

            ## 部署后可以做什么

            1. **打开域名** — 使用 admin / 配置的密码登录
            2. **添加凭证** — 配置 SSH 密钥、密码或云端 API 令牌
            3. **创建项目** — 将自动化任务组织到不同项目中
            4. **运行 Playbook** — 执行 Ansible、Terraform 或 Shell 脚本
            5. **定时任务** — 设置基于 Cron 的定期自动化任务

            ## 授权

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
    zh-TW:
        description: |
            Semaphore UI 是用於執行 Ansible Playbook、Terraform/OpenTofu 計畫、PowerShell 腳本等 DevOps 工具的現代網頁介面。內建排程、通知、REST API，且無需外部資料庫。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 網域
              description: 存取 Semaphore UI 的網域
            - key: SEMAPHORE_ADMIN_PASSWORD
              type: STRING
              name: 管理員密碼
              description: 管理員帳號的密碼
        readme: |
            # Semaphore UI

            用於執行 Ansible Playbook、Terraform 及其他 DevOps 自動化工具的現代網頁介面。無需外部資料庫。

            ## 部署後可以做什麼

            1. **開啟網域** — 使用 admin / 設定的密碼登入
            2. **新增憑證** — 設定 SSH 金鑰、密碼或雲端 API 令牌
            3. **建立專案** — 將自動化任務組織到不同專案中
            4. **執行 Playbook** — 執行 Ansible、Terraform 或 Shell 腳本
            5. **排程任務** — 設定基於 Cron 的定期自動化任務

            ## 授權

            MIT — [GitHub](https://github.com/semaphoreui/semaphore)
