Initial commit
This commit is contained in:
parent
2215b75985
commit
00f87e7e2e
|
@ -0,0 +1,98 @@
|
|||
#
|
||||
#
|
||||
#
|
||||
|
||||
|
||||
bundle agent roundcube(cfg)
|
||||
{
|
||||
classes:
|
||||
|
||||
|
||||
|
||||
"roundcube_untar" expression => not(fileexists("$(cfg[install_sub_dir])/index.php"));
|
||||
"config_exists" expression => fileexists("$(cfg[install_sub_dir])/config/config.inc.php");
|
||||
"backup_config_exists" expression => fileexists("$(cfg[backup_dir])/config.inc.php");
|
||||
|
||||
|
||||
"run_backups" expression => isvariable("cfg[backup_dir]");
|
||||
|
||||
|
||||
run_backups::
|
||||
"backup_config_exists" expression => fileexists("$(cfg[backup_dir])/config.inc.php");
|
||||
"sql_backup_exists" expression => fileexists("$(cfg[backup_dir])/roundcube.sql");
|
||||
|
||||
run_backups::
|
||||
|
||||
vars:
|
||||
"dlfile" string => "$(sys.workdir)/data/public/$(cfg[src_tgz])";
|
||||
files:
|
||||
"$(dlfile)"
|
||||
copy_from => remote_dcp("$(def.hub_public_dir)/$(cfg[src_tgz])","$(sys.policy_hub)"),
|
||||
handle => "roundcube_tgz_copied",
|
||||
classes => if_repaired ("roundcube_untar"),
|
||||
perms => m(644);
|
||||
|
||||
"$(cfg[install_dir])/public"
|
||||
link_from => ln_s("$(cfg[install_sub_dir])"),
|
||||
move_obstructions => "true",
|
||||
depends_on => {"roundcube_untarred"};
|
||||
|
||||
run_backups&(!config_exists)&backup_config_exists::
|
||||
"$(cfg[install_sub_dir])/config/config.inc.php"
|
||||
copy_from => local_cp("$(cfg[backup_dir])/config.inc.php"),
|
||||
perms => m("644"),
|
||||
classes => if_repaired("roundcube_config_repaired"),
|
||||
depends_on => {"roundcube_untarred"};
|
||||
|
||||
run_backups&config_exists::
|
||||
"$(cfg[backup_dir])/config.inc.php"
|
||||
copy_from => local_dcp("$(cfg[install_sub_dir])/config/config.inc.php"),
|
||||
depends_on => {"roundcube_untarred"};
|
||||
|
||||
methods:
|
||||
"any" usebundle => mysql_table_exists(@(cfg),"users");
|
||||
|
||||
config_exists|roundcube_configr_repaired::
|
||||
"any" usebundle => rm_rf ("$(cfg[install_sub_dir])/installer");
|
||||
|
||||
commands:
|
||||
roundcube_untar::
|
||||
"/usr/bin/tar"
|
||||
args => "xzvf $(dlfile) -C $(cfg[install_dir])",
|
||||
depends_on => {"roundcube_tgz_copied"},
|
||||
handle => "roundcube_untarred";
|
||||
!roundcube_untar::
|
||||
"/usr/bin/true"
|
||||
inform => "false",
|
||||
depends_on => {"roundcube_tgz_copied"},
|
||||
handle => "roundcube_untarred";
|
||||
|
||||
"run_backups&sql_backup_exists&(!mysql_$(cfg[db_name])_users_exists)"::
|
||||
"$(mysql.mysql_cmd)"
|
||||
args => "-h$(cfg[db_host]) -u$(cfg[db_user]) -p$(cfg[db_pass]) $(cfg[db_name]) < $(cfg[backup_dir])/roundcube.sql",
|
||||
contain => wmde_cmd_useshell;
|
||||
|
||||
methods:
|
||||
run_backups::
|
||||
# "any" usebundle => mysql_backup_db(@(cfg),"$(cfg[backup_dir])/roundcube.sql");
|
||||
"any" usebundle => create_mysql_backup_cron_job(@(cfg),"$(cfg[backup_dir])/roundcube.sql","users","true");
|
||||
!run_backups::
|
||||
"any" usebundle => create_mysql_backup_cron_job(@(cfg),"$(cfg[backup_dir])/roundcube.sql","users","false");
|
||||
|
||||
|
||||
|
||||
reports:
|
||||
# "mysql_$(cfg[db_name])_users_exists"::
|
||||
# "DB EXISTS! ROUNDCUBE";
|
||||
|
||||
# "sql_backup_exists"::
|
||||
# "SQL_BACKUP_EXISTS FILE $(cfg[backup_dir])/roundcube.sql"
|
||||
# ;
|
||||
|
||||
# run_backups&(!config_exists)&backup_config_exists::
|
||||
# "ROUNDCUBE CAN RESTORE config";
|
||||
|
||||
# "run_backups"::
|
||||
# "ROUNDCUBE SHOULD RUN BACKUPS";
|
||||
}
|
||||
|
Loading…
Reference in New Issue