NAME

App::DistSync - Utility synchronization of the mirror distribution-sites

VERSION

Version 1.06

SYNOPSIS

use App::DistSync;

my $ds = new App::DistSync(
        dir => "/var/www/www.example.com/dist",
        pid => $$,
    );

$ds->init or die ("Initialization error");

$ds->sync or die ("Sync error");

DESCRIPTION

Utility synchronization of the mirror distribution-sites

METHODS

new
my $ds = new App::DistSync(
        dir => "/var/www/www.example.com/dist",
        pid => $$,
    );

Returns the object

init
$ds->init or die ("Initialization error");

Initializing the mirror in the specified directory

sync
$ds->sync or die ("Sync error");

Synchronization of the specified directory with the remote resources (mirrors)

SHARED FUNCTIONS

fdelete
my $status = fdelete( $file );

Deleting a file if it exists

fetch
my $struct = fetch( $URI_STRING, "path/to/file.txt", "/tmp/file.txt" );

Fetching file from remote resource by URI and filename. The result will be written to the specified file. For example: "/tmp/file.txt"

Function returns structure, contains:

{
    status  => 1,         # Status. 0 - Errors; 1 - OK
    mtime   => 123456789, # Last-Modified in ctime format or 0 in case of errors
    size    => 123,       # Content-length
    code    => 200,       # HTTP Status code
};
touch
my $status = touch( $file );

Makes files exist, with current timestamp. See original in "touch" in ExtUtils::Command

PRIVATE FUNCTIONS

debug

show debug information

manifind, maniread, maniwrite

Working with manifest file

read_yaml, write_yaml

Working with YAML files

HISTORY

See Changes file

DEPENDENCIES

CTK

TO DO

See TODO file

BUGS

* none noted

SEE ALSO

CTK

AUTHOR

Serż Minus (Sergey Lepenkov) http://www.serzik.com <abalama@cpan.org>

COPYRIGHT

Copyright (C) 1998-2019 D&D Corporation. All Rights Reserved

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See LICENSE file and https://dev.perl.org/licenses/