51 lines
1.3 KiB
Markdown
51 lines
1.3 KiB
Markdown
# Usage
|
|
|
|
This project uses [Deployer](https://deployer.org/) for scripted installation
|
|
|
|
## Preparation
|
|
|
|
### Initial setup
|
|
|
|
Install Composer.
|
|
|
|
Clone the repository into a separate directory (`deployer` for example) on your server and checkout this branch.
|
|
|
|
Run `composer install`. Commit the `composer.lock` file, if it's changed.
|
|
|
|
Add an alias for the deployer command: `alias dep='/usr/local/php8.2/bin/php /home/XXX/deployer/vendor/bin/dep'`. Load the changed configuration.
|
|
|
|
Create a deploy key (if it's not exist). Set it in the repository settings.
|
|
|
|
### Update Deployer
|
|
|
|
- `cd deployer`
|
|
- `composer update`
|
|
- `commit changes`
|
|
|
|
## Project
|
|
|
|
### Deployment
|
|
|
|
- `cd deployer`
|
|
- `dep deploy [stage]`
|
|
|
|
### Rollback
|
|
|
|
... in case of errors after successful deployment
|
|
|
|
This command set `current` directory to previous deployment:
|
|
|
|
- `dep rollback [stage]`
|
|
|
|
## Available tasks
|
|
|
|
- dep `deploy` [stage] - create a new release for defined stage
|
|
- dep `rollback` [stage] - switch to previous release
|
|
- dep `migrate`[stage] - run all database migrations
|
|
|
|
- dep `list`- list all available commands
|
|
|
|
### work in progress
|
|
- dep `duplicateDatabase` [stage] - dump contents from source database (live) to destination database (stage) and replace live to stage URLs
|
|
- dep `getVersion` [stage] - show version of current WordPress installation
|