initial commit of file from CVS for smeserver-git on Sat Sep 7 19:54:49 AEST 2024
This commit is contained in:
117
createlinks
Executable file
117
createlinks
Executable file
@@ -0,0 +1,117 @@
|
||||
#!/usr/bin/perl -w
|
||||
use esmith::Build::CreateLinks qw(:all);
|
||||
# our event specific for updating with yum without reboot
|
||||
$event = 'smeserver-git-update';
|
||||
#add here the path to your templates needed to expand
|
||||
#see the /etc/systemd/system-preset/49-koozali.preset should be present for systemd integration on all you yum update event
|
||||
|
||||
foreach my $file (qw(
|
||||
/etc/systemd/system-preset/49-koozali.preset
|
||||
/etc/httpd/conf/httpd.conf
|
||||
))
|
||||
{
|
||||
templates2events( $file, $event );
|
||||
}
|
||||
#action needed in case we have a systemd unit
|
||||
event_link('systemd-default', $event, '10');
|
||||
event_link('systemd-reload', $event, '50');
|
||||
#action specific to this package
|
||||
#event_link('action', $event, '30');
|
||||
#services we need to restart
|
||||
safe_symlink('restart',"root/etc/e-smith/events/$event/services2adjust/httpd-e-smith");
|
||||
#and Server Manager panel link
|
||||
#panel_link('somefunction', 'manager');
|
||||
|
||||
use File::Basename;
|
||||
|
||||
# Overview of Events, Actions, Template & Services
|
||||
# ================================================
|
||||
|
||||
# git-create
|
||||
# ----------
|
||||
|
||||
# git-modify
|
||||
# ----------
|
||||
|
||||
# git-delete
|
||||
# ----------
|
||||
|
||||
# git-repository-create
|
||||
# ---------------------
|
||||
|
||||
# git-repository-modify
|
||||
# ---------------------
|
||||
|
||||
# git-repository-delete
|
||||
# ---------------------
|
||||
|
||||
# user-delete
|
||||
# -----------
|
||||
|
||||
# group-modify
|
||||
# ------------
|
||||
|
||||
# group-delete
|
||||
# ------------
|
||||
|
||||
# domain-modify
|
||||
# -------------
|
||||
# The domain/server name is used in the GitWeb view.
|
||||
|
||||
# domain-delete
|
||||
# -------------
|
||||
# If a domain is deleted, we need to check if the deleted domain may have been the in use for Git.
|
||||
|
||||
# Git Contrib Modified or Deleted
|
||||
# -------------------------------
|
||||
|
||||
for my $event ( qw( git-modify
|
||||
git-delete ) )
|
||||
{
|
||||
safe_symlink("sigusr1", "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith");
|
||||
templates2events("/etc/httpd/conf/httpd.conf", $event)
|
||||
}
|
||||
|
||||
# Git Repository Create / Modify
|
||||
# ------------------------------
|
||||
# Repository setting created or updated. regenerate the httpd.conf file and signal the
|
||||
# server restart.
|
||||
|
||||
for my $event ( qw( git-repository-create
|
||||
git-repository-modify ) )
|
||||
{
|
||||
event_link("git-repository-create-modify", $event, "05");
|
||||
templates2events("/etc/httpd/conf/httpd.conf", $event);
|
||||
safe_symlink("sigusr1", "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith");
|
||||
}
|
||||
|
||||
# Git Repository Delete
|
||||
# ---------------------
|
||||
# Perform the repository delete action and then regenerate the httpd.conf file.
|
||||
|
||||
for my $event (qw( git-repository-delete ))
|
||||
{
|
||||
event_link("git-repository-delete", $event, "05");
|
||||
safe_symlink("sigusr1", "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith");
|
||||
templates2events("/etc/httpd/conf/httpd.conf", $event)
|
||||
}
|
||||
|
||||
# User Delete / Group Delete / Group Modify
|
||||
# -----------------------------------------
|
||||
# For either Users or Groups being deleted or Groups being modified, we need
|
||||
# to go through all the git repositiories and update the UserRead, UserWrite,
|
||||
# GroupRead and GroupWrite entries. We then need to expand the httpd.conf
|
||||
# template to ensure that the expanded user names there are still the right
|
||||
# ones and also we need to update the git repositories themselves to update
|
||||
# the mailing list for each repository.
|
||||
|
||||
for my $event ( qw( user-delete
|
||||
group-delete
|
||||
group-modify ) )
|
||||
{
|
||||
event_link("git-delete-user-or-group-from-access-list", $event, "05");
|
||||
safe_symlink("sigusr1", "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith");
|
||||
templates2events("/etc/httpd/conf/httpd.conf", $event)
|
||||
}
|
||||
|
||||
panel_link('git', 'manager');
|
Reference in New Issue
Block a user