Difference between revisions of "Createlinks example script"
From SME Server
Jump to navigationJump to searchLine 50: | Line 50: | ||
event_link("yum-check-repository", "yum-update", "40"); | event_link("yum-check-repository", "yum-update", "40"); | ||
− | + | ==== Example 2 : Sme8admin==== | |
+ | #! /usr/bin/perl -w | ||
+ | |||
+ | use esmith::Build::CreateLinks qw(:all); | ||
+ | |||
+ | # Start and stop links | ||
+ | service_link_enhanced("sme8admind", "S99", "7"); | ||
+ | service_link_enhanced("sme8admind", "K97", "6"); | ||
+ | service_link_enhanced("sme8admind", "K20", "0"); | ||
+ | service_link_enhanced("sme8admind", "K20", "1"); | ||
+ | |||
+ | # Links for the panel | ||
+ | panel_link("sme8admin", "manager"); | ||
+ | #system("mkdir -p root/etc/e-smith/web/panels/manager/html/sme8admin"); | ||
+ | safe_symlink("/etc/e-smith/web/panels/manager/html/sme8admin", "root/etc/e-smith/web/panels/user/html/sme8admin"); | ||
+ | |||
+ | # Logrotate | ||
+ | event_link("sme8admin-parselog","logrotate","15"); | ||
[[Category:SME Server Development Framework]] | [[Category:SME Server Development Framework]] | ||
[[Category:Development Tools]] | [[Category:Development Tools]] | ||
[[Category:SME9-Development]] | [[Category:SME9-Development]] |
Revision as of 22:40, 22 December 2013
The build section lists commands to run as part of the build process This is where you can use a root/createlinks script to create events and action links. see
- Esmith::Build::CreateLinks
- SME_Server:Documentation:Developers_Manual#The_createlinks_script
- .spec_file_notes
%build perl createlinks
Example 1
#!/usr/bin/perl -w sub safe_symlink { my ($from, $to) = @_; use File::Basename; use File::Path; mkpath(dirname($to)); unlink($to); symlink($from, $to) or die "Can't create symlink from $from to $to: $!"; } sub panel_link { my ($function, $panel) = @_; safe_symlink("../../../functions/$function", "root/etc/e-smith/web/panels/$panel/cgi-bin/$function"); } sub event_link { my ($action, $event, $level) = @_; safe_symlink("../actions/${action}", "root/etc/e-smith/events/${event}/S${level}${action}"); } #-------------------------------------------------- # functions for manager panel #-------------------------------------------------- panel_link("yum", "manager"); #-------------------------------------------------- # actions for yum-update event #-------------------------------------------------- event_link("initialize-default-databases", "yum-update", "10"); event_link("conf-yum", "yum-update", "20"); event_link("yum-arch-repository", "yum-update", "30"); event_link("yum-check-repository", "yum-update", "40");
Example 2 : Sme8admin
#! /usr/bin/perl -w use esmith::Build::CreateLinks qw(:all); # Start and stop links service_link_enhanced("sme8admind", "S99", "7"); service_link_enhanced("sme8admind", "K97", "6"); service_link_enhanced("sme8admind", "K20", "0"); service_link_enhanced("sme8admind", "K20", "1"); # Links for the panel panel_link("sme8admin", "manager"); #system("mkdir -p root/etc/e-smith/web/panels/manager/html/sme8admin"); safe_symlink("/etc/e-smith/web/panels/manager/html/sme8admin", "root/etc/e-smith/web/panels/user/html/sme8admin"); # Logrotate event_link("sme8admin-parselog","logrotate","15");