#!/usr/bin/perl -w

=head1 NAME

    mk-glusterfs-server-files - создание файлов для шаринга директорий по glusterfs

=head1 USAGE

    mk-glusterfs-server-files debian/yandex-direct direct-app-logs posix-ro \
            -d dir=/var/www/ppc.yandex.ru/protected/logs \
            -d allow=ppcdev-migrate.yandex.ru

=head1 DESCRIPTION
    

=cut

use strict;
use warnings;

use SvnRelease::MkFiles;

my $mkfiles = SvnRelease::MkFiles->new(
    files => [
        {tmpl => 'glusterfs_server_config', file => "/etc/glusterfs/server.d/[% volume_name %].yaml", },
        ],
    templates_fh => \*DATA,
    );

my ($volume_name, $volume_type, @dummy) = $mkfiles->parse_options("volume_name volume_type");
if (@dummy) {
    $mkfiles->usage("Incorrect number of parameters");
} elsif ($volume_name !~ /^[a-z0-9_\-]+$/) {
    $mkfiles->usage("Incorrect volume_name");
} elsif ($volume_type !~ /^[a-z0-9_\-]+$/) {
    $mkfiles->usage("Incorrect volume_type");
}

$mkfiles->{vars}->{volume_name} = $volume_name;
$mkfiles->{vars}->{volume_type} = $volume_type;

$mkfiles->mk();

__DATA__
<< glusterfs_server_config
---
name: [% volume_name %]
type: [% volume_type %]
allow: [% allow %]
dir: [% dir %]
