承接 nishtman/github-webhook-deployer 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nishtman/github-webhook-deployer

最新稳定版本:v0.0.2

Composer 安装命令:

composer require nishtman/github-webhook-deployer

包简介

A Laravel package for GitHub webhook deployment

README 文档

README

A Laravel package for automated GitHub repository deployment via webhooks.

Features

  • Secure webhook handling with per-repository secrets
  • Multi-repository and multi-branch support
  • Custom deployment commands per branch
  • Supports Laravel, Node.js (e.g., Next.js), and other environments

Installation

  1. Require the package via composer (when published):
composer require nishtman/github-webhook-deployer
  1. Publish and run migrations:
php artisan vendor:publish --tag=github-webhook-deployer-migrations
php artisan migrate
  1. Register the webhook route in routes/webhook.php:
use Nishtman\GitHubWebhookDeployer\Http\Controllers\WebhookController;

Route::post('/github/deploy', [WebhookController::class, 'handle']);
  1. Add webhook to your GitHub repo with content type application/json and a secret.

Usage

Use the built-in Artisan commands to manage repositories:

php artisan github:add-repo
php artisan github:list-repos
php artisan github:remove-repo

Database Structure

  • github_repositories: Repository name and secret
  • github_branches: Associated branches, with local clone path and environment
  • github_commands: Commands to run on each branch upon deploy

Example Commands

Laravel branch:

  • git pull origin main
  • composer install --no-dev --optimize-autoloader
  • php artisan config:cache
  • php artisan migrate --force

Next.js branch:

  • git pull origin main
  • pnpm install --force
  • pnpm run build
  • pm2 reload <id>

Security

Each webhook is validated with a unique HMAC-SHA256 signature per repository.

License

MIT

统计信息

  • 总下载量: 2
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-05-27