etienne-napoleone / goutte

💧 DigitalOcean snapshot automation
GNU General Public License v3.0
24 stars 1 forks source link

[v2] Add yml config importer and schema validator #19

Closed etienne-napoleone closed 3 years ago

etienne-napoleone commented 3 years ago

yml config schema:

name: regex('^[a-zA-Z]{3,}$')
keep: int()
targets: include('type')
---
type:
    droplets: include('droplet', required=False)
    volumes: include('volume', required=False)
---
droplet:
    names: list(regex('^[^-][A-Za-z0-9.-]*[^-]$'), required=False)
    tags: list(regex('^[A-Za-z0-9:-_]+$'), required=False)
---
volume:
    names: list(regex('^[^-][A-Za-z0-9-]*[^-]$'), required=False)