Motion Deploy is a Docker-based deployment automation tool leveraging GitHub Webhooks to orchestrate continuous delivery pipelines, manage containerized environments, and trigger automated deployments in response to repository events.
- Receive and validate GitHub Webhooks (push, pull request, release)
- Orchestrate configurable CI/CD pipelines
- Automatic Docker container build and management
The following features are planned for future releases but are not yet implemented:
-
Rollback mechanisms in case of failures
-
Secure communication via TLS/HTTPS and access authentication
-
Scalability for multiple repositories and concurrent deployments
-
Detailed monitoring with logs and notifications
- Docker installed and running on the host machine
- GitHub account with repositories configured to send webhooks
- Go 1.18+ to build the application
- TLS certificates for secure communication (optional but recommended)
Clone this repository:
git clone https://github.com/https-dre/motion-deploy.git
cd motion-deployBuild the application:
mkdir ~/motion-deploy
go build -o motion ~/motion-deployConfigure environment variables and configuration files as needed.
- Set up GitHub repositories to send webhooks to the
/webhookendpoint of this application. - Define secret keys to validate incoming webhooks.
- Customize build and deployment pipelines through configuration files.
- Gin HTTP server for webhook handling
- Docker container management via Docker Go SDK
- Event-driven pipelines triggered by GitHub events
- Integrated logging and monitoring system
Contributions are welcome! Please open issues or pull requests to suggest improvements or fixes.
MIT License — see the LICENSE file for details.
For questions or support, open an issue or contact: diaso.andre@outlook.com