pdns-console/README.md

98 lines
2.3 KiB
Markdown
Raw Normal View History

2015-02-16 23:18:22 +01:00
# pdns-console
2015-02-18 13:53:21 +01:00
PDNS-Console provided a CLI to manage PowerDNS application and improved it by adding a powerfull DNS zone versionning.
2015-02-23 01:08:46 +01:00
2015-02-23 21:45:19 +01:00
# Commands
## Available commands
### Helpers
```
about Show information about pdns-console
help Displays help for a command
list Lists commands
```
### Manage domains
```
domain:add Add a domain
domain:list List domains
domain:remove Remove a domain
```
### Manage zones
```
zone:add Add a zone
zone:assign Assign a zone to a domain.
zone:list List DNS zones
zone:push Push activated zones to PowerDNS tables
zone:record:add Add a zone record
zone:record:remove Remove a zone record
zone:remove Remove a zone
zone:unassign Unassign the domain zone
zone:version:active Active a zone version
zone:version:add Add a zone version
zone:version:copy Copy a zone version
zone:version:remove Remove an unactivated zone version
zone:version:unactive Active a zone version
```
2015-02-23 01:08:46 +01:00
# Installation
## Requirements
* PHP >= 5.4
2015-02-23 01:42:56 +01:00
* PDO with module for database connection
2015-02-23 01:08:46 +01:00
* Instance of PDNS (Powerdns) >= 3.1 with MySQL/PostgreSQL/SQLite backend
## Downloading sources
```shell
cd /usr/local/src/
git clone https://github.com/simmstein/pdns-console.git
cd pdns-console
```
2015-02-23 01:20:16 +01:00
### Dependances
2015-02-23 01:08:46 +01:00
2015-02-23 01:20:16 +01:00
```
curl -sS https://getcomposer.org/installer | php
./composer.phar install
```
### Database
#### Edit *propel.yaml*
2015-02-23 01:08:46 +01:00
* ```dsn: "mysql:host=localhost;dbname=pdns"```
2015-02-23 01:23:45 +01:00
* Change *localhost* with the database server name
* Change "pdns" with the database name
2015-02-23 01:08:46 +01:00
2015-02-23 01:23:45 +01:00
* Change user and password values with your pdsn database login
2015-02-23 01:20:16 +01:00
Run `./app/propel/console config:convert`
#### Models
The sources does not contain all application models. You have to generate them:
Run `./app/propel/console --recursive model:build`
#### Database updates
2015-02-23 01:23:45 +01:00
pdns-console needs to update pdns original tables and uses 3 more.
2015-02-23 01:20:16 +01:00
```shell
./app/propel/console --recursive migration:diff
./app/propel/console --recursive migration:migrate
```
## Symlink
2015-02-23 01:21:17 +01:00
To access the console without using the full path of `app/console`, make a symlink:
2015-02-23 01:20:16 +01:00
2015-02-23 01:25:04 +01:00
```ln -s $PWD/app/console /usr/local/bin/pdns-console```