diff --git a/apps/woodpecker-agent/3.12.0/data.yml b/apps/woodpecker-agent/3.12.0/data.yml new file mode 100644 index 000000000..590b45604 --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/data.yml @@ -0,0 +1,30 @@ +additionalProperties: + formFields: + - default: "/home/woodpecker" + edit: true + envKey: WOODPECKER_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: "localhost:9000" + edit: true + envKey: WOODPECKER_SERVER + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: "" + edit: true + envKey: WOODPECKER_AGENT_SECRET + labelZh: 密钥 + labelEn: Secret + required: true + type: text + - default: 4 + edit: true + envKey: WOODPECKER_MAX_WORKFLOWS + labelZh: 最大任务数 + labelEn: Maximum number of tasks + required: true + type: number diff --git a/apps/woodpecker-agent/3.12.0/docker-compose.yml b/apps/woodpecker-agent/3.12.0/docker-compose.yml new file mode 100644 index 000000000..fc9f5b64a --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/docker-compose.yml @@ -0,0 +1,21 @@ +networks: + 1panel-network: + external: true + +services: + woodpecker-agent: + image: woodpeckerci/woodpecker-agent:v3.12.0 + container_name: ${CONTAINER_NAME} + command: agent + restart: always + networks: + - 1panel-network + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ${WOODPECKER_ROOT_PATH}/agent:/etc/woodpecker + environment: + - HTTPS_PROXY=${HTTP_PROXY} + - NO_PROXY=127.0.0.1,localhost,.local,woodpecker-agent,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16 diff --git a/apps/woodpecker-agent/3.12.0/envs/default.env b/apps/woodpecker-agent/3.12.0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/woodpecker-agent/3.12.0/envs/global.env b/apps/woodpecker-agent/3.12.0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/woodpecker-agent/3.12.0/scripts/init.sh b/apps/woodpecker-agent/3.12.0/scripts/init.sh new file mode 100644 index 000000000..4679b2bcc --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/scripts/init.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + DATA_DIR="$WOODPECKER_ROOT_PATH" + + chmod -R 777 "$DATA_DIR" + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-agent/3.12.0/scripts/uninstall.sh b/apps/woodpecker-agent/3.12.0/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-agent/3.12.0/scripts/upgrade.sh b/apps/woodpecker-agent/3.12.0/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/woodpecker-agent/3.12.0/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-agent/README.md b/apps/woodpecker-agent/README.md new file mode 100644 index 000000000..0241d2386 --- /dev/null +++ b/apps/woodpecker-agent/README.md @@ -0,0 +1,27 @@ +# Woodpecker (啄木鸟) + +简单而强大的CI/CD引擎,具有很强的可扩展性 + +![Woodpecker](https://file.lifebus.top/imgs/app_name_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 安装说明 + +### 密钥 + +服务器和代理使用共享密钥来验证通信。该密钥应该是一个随机字符串,您需要对其保密。 +您可以使用 `openssl rand -hex 32` 生成这样的字符串。 + +## 特性 + ++ 开源且免费 + ++ 基于 Docker 容器 + ++ 多工作流程 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) +![Ms Studio](https://analytics.lifebus.top/p/wJix5nI1W) diff --git a/apps/woodpecker-agent/data.yml b/apps/woodpecker-agent/data.yml new file mode 100644 index 000000000..73cff59e0 --- /dev/null +++ b/apps/woodpecker-agent/data.yml @@ -0,0 +1,24 @@ +additionalProperties: + key: woodpecker-agent + name: Woodpecker Agent (啄木鸟) + tags: + - WebSite + - DevOps + - Local + shortDescZh: 啄木鸟是一个简单而强大的CI/CD引擎,具有很强的可扩展性 + shortDescEn: Woodpecker is a simple, yet powerful CI/CD engine with great extensibility + type: website + crossVersionUpdate: true + limit: 0 + website: https://woodpecker-ci.org/ + github: https://github.com/woodpecker-ci/woodpecker/ + document: https://woodpecker-ci.org/ + architectures: + - 386 + - amd64 + - arm64 + - ppc64le + - riscv64 + - s390x + - arm/v6 + - arm/v7 diff --git a/apps/woodpecker-agent/logo.png b/apps/woodpecker-agent/logo.png new file mode 100644 index 000000000..2782883f6 Binary files /dev/null and b/apps/woodpecker-agent/logo.png differ diff --git a/apps/woodpecker-agent/logo.svg b/apps/woodpecker-agent/logo.svg new file mode 100644 index 000000000..1cd49a8f9 --- /dev/null +++ b/apps/woodpecker-agent/logo.svg @@ -0,0 +1,10 @@ + + + + diff --git a/apps/woodpecker-server/3.12.0/data.yml b/apps/woodpecker-server/3.12.0/data.yml new file mode 100644 index 000000000..ce9397511 --- /dev/null +++ b/apps/woodpecker-server/3.12.0/data.yml @@ -0,0 +1,230 @@ +additionalProperties: + formFields: + - default: "/home/woodpecker" + edit: true + envKey: WOODPECKER_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8000 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 9000 + edit: true + envKey: PANEL_APP_PORT_GRPC + labelZh: GRPC 端口 + labelEn: GRPC port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: WOODPECKER_AGENT_SECRET + labelZh: 密钥 + labelEn: Secret + required: true + type: text + - default: "http://localhost:8000" + edit: true + envKey: WOODPECKER_HOST + labelZh: 访问地址 + labelEn: Host Address + required: true + type: text + - default: "false" + edit: true + envKey: WOODPECKER_OPEN + labelZh: 是否允许注册 + labelEn: Allow registration + required: true + type: select + values: + - label: 允许 + value: "true" + - label: 禁止 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_ADMIN + labelZh: 管理员账户列表 + labelEn: Administrator account list + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_ORGS + labelZh: 组织列表 + labelEn: Organization list + required: false + type: text + - default: "72h" + edit: true + envKey: WOODPECKER_SESSION_EXPIRES + labelZh: 登录过期时间 + labelEn: Login expiration time + required: true + type: text + - default: "" + edit: true + envKey: HTTP_PROXY + labelZh: HTTP 代理 + labelEn: HTTP proxy + required: false + type: text + - default: "false" + edit: true + envKey: WOODPECKER_GITHUB + labelZh: GitHub 集成 + labelEn: GitHub Forges + required: true + type: select + values: + - label: 启用 + value: "true" + - label: 禁用 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_GITHUB_CLIENT + labelZh: GitHub 客户端 ID + labelEn: GitHub client ID + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_GITHUB_SECRET + labelZh: GitHub 客户端密钥 + labelEn: GitHub client secret + required: false + type: text + - default: "false" + edit: true + envKey: WOODPECKER_GITEA + labelZh: Gitea 集成 + labelEn: Gitea Forges + required: true + type: select + values: + - label: 启用 + value: "true" + - label: 禁用 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_GITEA_URL + labelZh: Gitea 地址 + labelEn: Gitea URL + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_GITEA_CLIENT + labelZh: Gitea 客户端 ID + labelEn: Gitea client ID + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_GITEA_SECRET + labelZh: Gitea 客户端密钥 + labelEn: Gitea client secret + required: false + type: text + - default: "false" + edit: true + envKey: WOODPECKER_FORGEJO + labelZh: Forgejo 集成 + labelEn: Forgejo Forges + required: true + type: select + values: + - label: 启用 + value: "true" + - label: 禁用 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_FORGEJO_URL + labelZh: Forgejo 地址 + labelEn: Forgejo URL + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_FORGEJO_CLIENT + labelZh: Forgejo 客户端 ID + labelEn: Forgejo client ID + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_FORGEJO_SECRET + labelZh: Forgejo 客户端密钥 + labelEn: Forgejo client secret + required: false + type: text + - default: "false" + edit: true + envKey: WOODPECKER_GITLAB + labelZh: GitLab 集成 + labelEn: GitLab Forges + required: true + type: select + values: + - label: 启用 + value: "true" + - label: 禁用 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_GITLAB_URL + labelZh: GitLab 地址 + labelEn: GitLab URL + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_GITLAB_CLIENT + labelZh: GitLab 客户端 ID + labelEn: GitLab client ID + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_GITLAB_SECRET + labelZh: GitLab 客户端密钥 + labelEn: GitLab client secret + required: false + type: text + - default: "false" + edit: true + envKey: WOODPECKER_BITBUCKET + labelZh: Bitbucket 集成 + labelEn: Bitbucket Forges + required: true + type: select + values: + - label: 启用 + value: "true" + - label: 禁用 + value: "false" + - default: "" + edit: true + envKey: WOODPECKER_BITBUCKET_CLIENT + labelZh: Bitbucket 客户端 ID + labelEn: Bitbucket client ID + required: false + type: text + - default: "" + edit: true + envKey: WOODPECKER_BITBUCKET_SECRET + labelZh: Bitbucket 客户端密钥 + labelEn: Bitbucket client secret + required: false + type: text diff --git a/apps/woodpecker-server/3.12.0/docker-compose.yml b/apps/woodpecker-server/3.12.0/docker-compose.yml new file mode 100644 index 000000000..97c588e5f --- /dev/null +++ b/apps/woodpecker-server/3.12.0/docker-compose.yml @@ -0,0 +1,26 @@ +networks: + 1panel-network: + external: true + +services: + woodpecker-server: + image: woodpeckerci/woodpecker-server:v3.12.0 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:8000 + - ${PANEL_APP_PORT_GRPC}:9000 + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${WOODPECKER_ROOT_PATH}/server:/var/lib/woodpecker/ + environment: + - TZ=Asia/Shanghai + - WOODPECKER_AGENT_SECRET=${WOODPECKER_AGENT_SECRET} + - HTTPS_PROXY=${HTTP_PROXY} + - NO_PROXY=127.0.0.1,localhost,.local,woodpecker-server,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16 diff --git a/apps/woodpecker-server/3.12.0/envs/default.env b/apps/woodpecker-server/3.12.0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/apps/woodpecker-server/3.12.0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/woodpecker-server/3.12.0/envs/global.env b/apps/woodpecker-server/3.12.0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/apps/woodpecker-server/3.12.0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/woodpecker-server/3.12.0/scripts/init.sh b/apps/woodpecker-server/3.12.0/scripts/init.sh new file mode 100644 index 000000000..4679b2bcc --- /dev/null +++ b/apps/woodpecker-server/3.12.0/scripts/init.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + DATA_DIR="$WOODPECKER_ROOT_PATH" + + chmod -R 777 "$DATA_DIR" + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-server/3.12.0/scripts/uninstall.sh b/apps/woodpecker-server/3.12.0/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/woodpecker-server/3.12.0/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-server/3.12.0/scripts/upgrade.sh b/apps/woodpecker-server/3.12.0/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/woodpecker-server/3.12.0/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/woodpecker-server/README.md b/apps/woodpecker-server/README.md new file mode 100644 index 000000000..0241d2386 --- /dev/null +++ b/apps/woodpecker-server/README.md @@ -0,0 +1,27 @@ +# Woodpecker (啄木鸟) + +简单而强大的CI/CD引擎,具有很强的可扩展性 + +![Woodpecker](https://file.lifebus.top/imgs/app_name_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 安装说明 + +### 密钥 + +服务器和代理使用共享密钥来验证通信。该密钥应该是一个随机字符串,您需要对其保密。 +您可以使用 `openssl rand -hex 32` 生成这样的字符串。 + +## 特性 + ++ 开源且免费 + ++ 基于 Docker 容器 + ++ 多工作流程 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) +![Ms Studio](https://analytics.lifebus.top/p/wJix5nI1W) diff --git a/apps/woodpecker-server/data.yml b/apps/woodpecker-server/data.yml new file mode 100644 index 000000000..cef164f34 --- /dev/null +++ b/apps/woodpecker-server/data.yml @@ -0,0 +1,24 @@ +additionalProperties: + key: woodpecker-server + name: Woodpecker Server (啄木鸟) + tags: + - WebSite + - DevOps + - Local + shortDescZh: 啄木鸟是一个简单而强大的CI/CD引擎,具有很强的可扩展性 + shortDescEn: Woodpecker is a simple, yet powerful CI/CD engine with great extensibility + type: website + crossVersionUpdate: true + limit: 0 + website: https://woodpecker-ci.org/ + github: https://github.com/woodpecker-ci/woodpecker/ + document: https://woodpecker-ci.org/ + architectures: + - 386 + - amd64 + - arm64 + - ppc64le + - riscv64 + - s390x + - arm/v6 + - arm/v7 diff --git a/apps/woodpecker-server/logo.png b/apps/woodpecker-server/logo.png new file mode 100644 index 000000000..2782883f6 Binary files /dev/null and b/apps/woodpecker-server/logo.png differ diff --git a/apps/woodpecker-server/logo.svg b/apps/woodpecker-server/logo.svg new file mode 100644 index 000000000..1cd49a8f9 --- /dev/null +++ b/apps/woodpecker-server/logo.svg @@ -0,0 +1,10 @@ + + + +