Plugin para sincronizar archivos del servidor de Pelican Panel con un repositorio de GitHub.
- ✅ Configuración de repositorio Git por servidor
- ✅ Operaciones Git: Clone, Pull y Push
- ✅ Tokens de acceso personal (PAT) encriptados
- ✅ Interfaz integrada en el panel de Filament
- ✅ Comandos ejecutados directamente en el servidor Wings
Copia la carpeta githubsync a tu directorio de plugins de Pelican:
cp -r githubsync /var/www/pelican/app/Plugins/githubsyncO clónalo directamente:
cd /var/www/pelican/app/Plugins
git clone https://github.com/YamiKnigth/pelican-github-sync.git githubsynccd /var/www/pelican
php artisan migratephp artisan config:clear
php artisan view:clear
php artisan route:clear
php artisan optimize:clearDesde el panel de administración de Pelican:
- Ve a Admin → Plugins
- Busca GithubSync
- Haz clic en Enable
- Entra a un servidor en el panel
- Ve a la sección de Files
- En la parte superior verás el widget GitHub Sync
- Haz clic en el icono de configuración (⚙️)
- Completa el formulario:
- URL Repositorio:
https://github.com/usuario/repo.git - Branch:
main(o la rama que prefieras) - Usuario: Tu nombre de usuario de GitHub
- Email: Tu email de GitHub
- Token (PAT): Crea un token de acceso personal
- URL Repositorio:
- Clone: Clona el repositorio (solo la primera vez)
- Pull: Descarga cambios del repositorio
- Push: Sube cambios al repositorio
Para crear un PAT en GitHub:
- Ve a https://github.com/settings/tokens
- Click en Generate new token → Generate new token (classic)
- Dale un nombre descriptivo
- Selecciona los permisos:
- ✅
repo(acceso completo a repositorios)
- ✅
- Genera el token y cópialo
- Úsalo en la configuración del plugin
githubsync/
├── config/
│ └── githubsync.php # Configuración
├── resources/
│ └── views/
│ └── toolbar.blade.php # Vista del widget
├── src/
│ ├── Database/
│ │ └── Migrations/ # Migraciones de BD
│ ├── Filament/
│ │ └── Widgets/ # Widget de Filament
│ ├── Models/ # Modelos Eloquent
│ ├── Providers/ # Service Providers
│ ├── Services/ # Lógica de negocio
│ └── GithubSyncPlugin.php # Clase principal del plugin
└── plugin.json # Metadatos del plugin
- Verifica que el plugin esté habilitado en Admin → Plugins
- Limpia la caché:
php artisan optimize:clear - Verifica los logs:
tail -f /var/www/pelican/storage/logs/laravel.log
Si la tabla ya existe:
php artisan migrate:rollback --step=1
php artisan migrate- Verifica que el token tenga los permisos correctos
- Asegúrate de que la URL del repositorio sea correcta
- Revisa los logs de Wings
MIT
YamiKnigth
Las contribuciones son bienvenidas. Por favor, abre un issue o un pull request.