Current time: 11-23-2024, 03:49 AM Hello There, Guest! (LoginRegister)


Post Reply 
 
Thread Rating:
  • 2 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[in USE]Webapplikationen automatisch installieren
Author Message
Achmed Offline
Junior Member
*

Posts: 104
Joined: Jan 2007
Reputation: 0
Post: #43
RE: Webapplikationen automatisch installieren
Das Paket kann so nicht funzen.
Kurze Erklärung:
Die Ordner web & sql sowie die Dateien sql_tables & (in diesem Fall) joomla müssen in der obersten Ebene des Archivs zu finden sein.
Ein übergeordneter Ordner "joomla" funkioniert nicht.
Das Shell-Script muss muss der Software angepasst werden.
Es bringt nichts, wenn du eine configuration.php erstellst, die den Inhalt einer phpbb-config.php hat.
So sollte die in deinem Fall aussehen:
Code:
#!/bin/sh

#
# Do not make changes to this static vars
#

type=$1
sw_software_db=$2
sw_software_prefix=$3
sw_database=$4
sw_database_user=$5
sw_database_tmp_pwd=$6
dmn_name=$7
sw_dest_path=$8
sw_pfad=$9
db_tables="sql_tables"


#
# This is the place for dynamic vars
#

config_file="configuration.php"
pfad=${sw_pfad:7}
email="webmaster@$dmn_name"
config="config"
new_config=$sw_software_prefix$config
users="users"
new_users=$sw_software_prefix$users


#
# install/delete
#

case "$type" in
    install)

        cat > $sw_dest_path/$config_file << "EOF"
<?php
class JConfig {
/* Site Settings */
var $offline = '0';
var $offline_message = 'Diese Website ist zurzeit im Wartungsmodus.<br /> Bitte kommen Sie später wieder.';
var $sitename = 'ispCP-Joomla';
var $editor = 'tinymce';
var $list_limit = '20';
var $legacy = '0';
/* Debug Settings */
var $debug = '0';
var $debug_lang = '0';
/* Database Settings */
var $dbtype = 'mysql';
var $host = 'localhost';
/* Server Settings */
var $live_site = '';
var $secret = 'XBg1HJl5b8wYpE1d';
var $gzip = '0';
var $error_reporting = '-1';
var $helpurl = 'http://help.joomla.org';
var $xmlrpc_server = '0';
var $ftp_host = '127.0.0.1';
var $ftp_port = '21';
var $ftp_user = '';
var $ftp_pass = '';
var $ftp_root = '';
var $ftp_enable = '0';
/* Locale Settings */
var $offset = '0';
var $offset_user = '0';
/* Mail Settings */
var $mailer = 'mail';
var $fromname = 'ispCP-Joomla';
var $sendmail = '/usr/sbin/sendmail';
var $smtpauth = '0';
var $smtpuser = '';
var $smtppass = '';
var $smtphost = 'localhost';
/* Cache Settings */
var $caching = '0';
var $cachetime = '15';
var $cache_handler = 'file';
/* Meta Settings */
var $MetaDesc = 'Joomla! - dynamische Portal-Engine und Content-Management-System';
var $MetaKeys = 'joomla, Joomla';
var $MetaTitle = '1';
var $MetaAuthor = '1';
/* SEO Settings */
var $sef           = '0';
var $sef_rewrite   = '0';
var $sef_suffix    = '0';
/* Feed Settings */
var $feed_limit   = 10;
/* Session Setting */
var $lifetime = '15';
var $session_handler = 'database';
}
?>
EOF

        sed -i "15 a\\var \$dbprefix = '$sw_software_prefix';" $sw_dest_path/$config_file
        sed -i "15 a\\var \$db = '$sw_database';" $sw_dest_path/$config_file
        sed -i "15 a\\var \$password = '$sw_database_tmp_pwd';" $sw_dest_path/$config_file
        sed -i "15 a\\var \$user = '$sw_database_user';" $sw_dest_path/$config_file
        sed -i "37 a\\var \$mailfrom = '$email';" $sw_dest_path/$config_file
        sed -i "59 a\\var \$tmp_path = '$sw_dest_path/tmp';" $sw_dest_path/$config_file
        sed -i "59 a\\var \$log_path = '$sw_dest_path/logs';" $sw_dest_path/$config_file

        mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database < ./sql/sql.sql

        exec 4<$db_tables

        while read -u 4 table; do

            echo "ALTER TABLE $table RENAME AS $sw_software_prefix$table" | mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database

        done

#### Hier müssen die DB-Änderungen hin... ####
#### Benutzerpasswort, evtl. Pfade usw.    ####

    ;;

    delete)

        exec 4<$db_tables

        while read -u 4 table; do

            echo "DROP TABLE IF EXISTS $sw_software_prefix$table" | mysql -u$sw_database_user -p$sw_database_tmp_pwd $sw_database

        done

    ;;

    *)

        exit 0

    ;;
esac

exit 0

Da jede Software individuelle Anpassungen benötigt, kannst du nicht einfach ein Script 1:1 übernehmen.
Das ist im Übrigen der einzige Grund, weshalb es das Shell-Script gibt. Ich hab keine Ahnung, wie ich den Prozess ansonsten automatisieren kann.

Edit: Die Datei sql_tables benötigt eine Leerzeile am Ende.

Edit2:
In der sql.sql würde ich folgendes entfernen:
INSERT INTO `session` <-- den ganzen Insert-Block. Du schleppst nur unnötige Daten rum.
INSERT INTO `users` <-- die E-Mail Adresse und das Passwort des Administrators. Die fügst du noch über das Shell-Script ein.
(This post was last modified: 06-11-2008 09:01 PM by Achmed.)
06-11-2008 08:47 PM
Find all posts by this user Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Webapplikationen automatisch installieren - Achmed - 06-11-2008 08:47 PM

Forum Jump:


User(s) browsing this thread: 15 Guest(s)