https://github.com/senges/wpm
A comprehensive wordpress deployment and migration tool written in go
https://github.com/senges/wpm
Last synced: 7 months ago
JSON representation
A comprehensive wordpress deployment and migration tool written in go
- Host: GitHub
- URL: https://github.com/senges/wpm
- Owner: senges
- Created: 2020-07-28T14:24:06.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-08-03T14:28:05.000Z (almost 6 years ago)
- Last Synced: 2023-03-01T09:55:58.768Z (over 3 years ago)
- Language: Go
- Size: 27.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
README
# WPM, a comprehensive tool for advanced wordpress management
wpm is a tool built to make wordpress versionning, deployment and migration between any environment easier.
**:construction: Caution :** poject is under development, and definitely not production ready. Feel free to contribute !
## How does it works ?
The global idea is to isolate wordpress core from your project. In this configuration, it's far easier to keep your wordpress installation updated and secure, while being consistent in your project. No fancy files everywhere, no overwrite, no confusion, your project is 100% independent from worpress core version.
```
wordpress/
├── core
└── data
```
As wordpress core is released publicly [on github](https://github.com/wordpress/wordpress), `core` folder can be fully managed using wpm. The tool is built to make sure your installation is up-to-date and that it has no integrity issue.
If you already have a wordpress project you would like to integrate wpm in, feel free to read the [step by step guide](MELT_ME.md) to accomplish such cool things.
## What's gonna be in ?
* Website source and database versionning (migration, backups, rollback)
* Multiple environment (test / prod / staging...)
* Works over SSH
* WP core management
## Requirements
* SSH access to any environment
* git repository as a VCS
## Config file syntax
wpm config file uses TOML syntax
```toml
VCS = "github.com/user/repo.git"
[Environment]
[Environment.dev]
WpPath = "/var/www/html/wordpress"
Username = "web-manager"
Host = "192.168.0.1:22"
AuthMethod = "password"
[Environment.prod]
WpPath = "/var/www/html/wordpress"
Username = "web-manager"
Host = "192.168.0.1:22"
AuthMethod = "publickey"
KeyPath = "/home/mike/.ssh/key.pem"
```
## Contribute
To contribute, take a closer look at the [CONTRIBUTING.md](CONTRIBUTING.md) file.
## Dependencies
* TOML handler : https://github.com/pelletier/go-toml
* Git handler : https://gopkg.in/src-d/go-git.v4
* Basic CLI : https://github.com/urfave/cli