User Tools

Site Tools


esmith:build:createlinks

This is an old revision of the document!


esmith::Build::CreateLinks

esmith::Build::CreateLUser(Contributed Perl Documesmith::Build::CreateLinks(3)

for the latest version, do

yum install nethserver-devtools
perldoc esmith::Build::CreateLinks

NAME

     esmith::Build::CreateLinks - A library for creating symlinks during rpm construction.

SYNOPSIS

         use esmith::Build::CreateLinks qw(:all);
         safe_symlink("../../../functions/$function", "$cgibin/$function")

DESCRIPTION

This function works like symlink(), but if the directory being linked to does not exist, it will create it.

        ie. safe_symlink("../../../functions/$function", "$cgibin/$function")

This function creates a link to a web panel.

        ie.
         my $panel = "manager";
         panel_link("tug", $panel);

This function creates a symlink from the common manager directory to a file in the functions directory.

This function creates a symlink from an action’s ordered location in an event directory to its action script.

        ie.
         my $event = "tug-update";
         event_link("tug-conf", $event, "10");
         event_link("conf-masq", $event, "20");
         event_link("adjust-masq", $event, "30");
         event_link("tug-restart", $event, "40");

This function creates a symlink from an action’s ordered location in a validator directory to its action script.

        ie.
         my $validator = "user-name";
         validator_link("uniq-accountname", $validator, "10");
         validator_link("max-users", $validator, "20");

validator_actions($validatorName, @action_specs)

Create links to actions for the given validator. @actions_specs is a list of pairs Action ⇒ Priority. E.g

       validator_actions('validator-name', 'act1' => '10', 'act2' => '20', ..);

See also validator_link().

This function creates a symlink from a SysV init start or kill link in a runlevel to e-smith-service, a wrapper that is config db aware.

        ie.
         safe_symlink("daemontools", "root/etc/rc.d/init.d/tug");
         service_link_enhanced("tug", "S85", "7");
         service_link_enhanced("tug", "K25", "6");
         service_link_enhanced("tug", "K25", "0");

safe_touch

This function creates an empty file, but first creates any enclosing directories. For example:

       safe_touch("a/b/c/d");

will create any of the directories “a”, “a/b”, “a/b/c” which don’t exist, then create an empty file “a/b/c/d”.

templates2events

This function creates a file tree (of empty files) which is used by the generic_template_expand action to determine which templates need to be expanded for a particular event. Takes one file argument and a list of event names, e.g.

      templates2events("/etc/some/file", "event1", "event2", ...);

event_templates($event, @paths)

This function is similar to templates2events(): determines the list of templates to be expanded for the given an event name. E.g.

      event_templates("event1", "/etc/some/file1", "/etc/some/file2, ...);

event_actions($event, @action_specs)

Create links to actions for the given event. @actions_specs is a list of pairs Action ⇒ Priority. E.g

       event_actions('myevent', 'act1' => '10', 'act2' => '20', ..);

See also event_link().

event_services($event, @service_specs)

Create links for the given $event in services2adjust/ subdirectory. @service_specs is a list of pairs Service ⇒ LinkDestination

       event_services('myevent', 'sshd' => 'restart', 'samba' => 'reload')

See also safe_symlink().

AUTHOR

  1. SME Server Developers bugs@e-smith.com

perl v5.10.1 2015-05-19 esmith::Build::CreateLinks(3)

esmith/build/createlinks.1432275126.txt.gz · Last modified: 2019/06/05 19:48 (external edit)