← Back to team overview

clearcorp team mailing list archive

[Merge] lp:~carlos.vasquez/openerp-ccorp-scripts/bug927932 into lp:openerp-ccorp-scripts

 

Carlos Vásquez has proposed merging lp:~carlos.vasquez/openerp-ccorp-scripts/bug927932 into lp:openerp-ccorp-scripts.

Requested reviews:
  Carlos Vásquez (carlos.vasquez)
Related bugs:
  Bug #927932 in OpenERP CLEARCORP Scripts: "Bad link creation for addons"
  https://bugs.launchpad.net/openerp-ccorp-scripts/+bug/927932

For more details, see:
https://code.launchpad.net/~carlos.vasquez/openerp-ccorp-scripts/bug927932/+merge/91736
-- 
https://code.launchpad.net/~carlos.vasquez/openerp-ccorp-scripts/bug927932/+merge/91736
Your team CLEARCORP development team is subscribed to branch lp:openerp-ccorp-scripts.
=== added symlink 'bin-links/ccorp-openerp-restore-addons'
=== target is u'../openerp-scripts/openerp-restore-addons.sh'
=== modified file 'openerp-scripts/openerp-lib.sh'
--- openerp-scripts/openerp-lib.sh	2012-01-30 01:58:20 +0000
+++ openerp-scripts/openerp-lib.sh	2012-02-06 23:09:18 +0000
@@ -435,78 +435,41 @@
 	/etc/init.d/apache2 restart >> $INSTALL_LOG_FILE
 }
 
-function mkserver_openerp_addons {
-	# Install OpenERP addons
-	log_echo "Installing OpenERP addons..."
-	cd /srv/openerp/$branch/src/openobject-addons >> $INSTALL_LOG_FILE
-	for x in $(ls -d *); do
-		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
-			log_echo "openobject-addons: module $x already present, removing"
-			rm -r /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-		fi
-		ln -s /srv/openerp/$branch/src/openobject-addons/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-	done
-}
-
-function mkserver_ccorp_addons {
-	# Install ccorp addons
-	log_echo "Installing ccorp addons..."
-	cd /srv/openerp/$branch/src/ccorp-addons >> $INSTALL_LOG_FILE
-	for x in $(ls -d *); do
-		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
-			log_echo "ccorp-addons: module $x already present, removing"
-			rm -r /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-		fi
-		ln -s /srv/openerp/$branch/src/ccorp-addons/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-	done
-}
-
-function mkserver_costa_rica_addons {
-	# Install OpenERP costa-rica
-	log_echo "Installing OpenERP costa-rica..."
-	cd /srv/openerp/$branch/src/costa-rica-addons >> $INSTALL_LOG_FILE
-	for x in $(ls -d *); do
-		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
-			log_echo "costa-rica-addons: module $x already present, removing"
-			rm -r /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-		fi
-		ln -s /srv/openerp/$branch/src/costa-rica-addons/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-	done
-}
-
-function mkserver_extra_addons {
-	# Install OpenERP extra addons
-	log_echo "Installing OpenERP extra addons..."
-	cd /srv/openerp/$branch/src/openobject-addons-extra >> $INSTALL_LOG_FILE
-	for x in $(ls -d *); do
-		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
-			log_echo "openobject-addons-extra: module $x already present, removing"
-			rm -r /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-		fi
-		ln -s /srv/openerp/$branch/src/openobject-addons-extra/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-	done
-}
-
-function mkserver_nan_tic_addons {
-	# Install nan-tic modules
-	log_echo "Installing nan-tic modules..."
-	cd /srv/openerp/$branch/src/nan-tic-addons >> $INSTALL_LOG_FILE
-	for x in $(ls -d *); do
-		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
-			log_echo "nan-tic-addons: module $x already present, removing"
-			rm -r /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
-		fi
-		ln -s /srv/openerp/$branch/src/nan-tic-addons/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
+function mkserver_addons_mk_links {
+	# Create symbolic links for addons
+	# $1: project (src branch)
+	log_echo "Creating symbolic links for $1..."
+	cd /srv/openerp/$branch/src/$1 >> $INSTALL_LOG_FILE
+	for x in $(ls -d *); do
+		if [[ -d /srv/openerp/$branch/instances/$name/addons/$x ]]; then
+			log_echo "$1: module $x already present, skipping"
+		else
+			ln -s /srv/openerp/$branch/src/$1/$x /srv/openerp/$branch/instances/$name/addons/$x >> $INSTALL_LOG_FILE
+		fi
+	done
+}
+
+function mkserver_addons_rm_links {
+	# Remove symbolic links for addons
+	log_echo "Removing symbolic links for $name..."
+	cd /srv/openerp/$branch/instances/$name/addons >> $INSTALL_LOG_FILE
+	for x in $(ls -d *); do
+		if [[ -h /srv/openerp/$branch/instances/$name/addons/$x ]]; then
+			log_echo "$x is a symbolic linked addon, removing"
+			rm $x >> $INSTALL_LOG_FILE
+		else
+			log_echo "$x is not a symbolic linked addon, skipping"
+		fi
 	done
 }
 
 function mkserver_install_addons {
-	if [[ $install_nantic =~ ^[Yy]$ ]]; then mkserver_nan_tic_addons; fi
-	if [[ $install_magentoerpconnect =~ ^[Yy]$ ]]; then mkserver_magentoerpconnect; fi
-	if [[ $install_extra_addons =~ ^[Yy]$ ]]; then mkserver_extra_addons; fi
-	if [[ $install_costa_rica_addons =~ ^[Yy]$ ]]; then mkserver_costa_rica_addons; fi
-	if [[ $install_ccorp_addons =~ ^[Yy]$ ]]; then mkserver_ccorp_addons; fi
-	if [[ $install_openerp_addons =~ ^[Yy]$ ]]; then mkserver_openerp_addons; fi
+	if [[ $install_openerp_addons =~ ^[Yy]$ ]]; then mkserver_addons_mk_links openobject-addons; fi
+	if [[ $install_ccorp_addons =~ ^[Yy]$ ]]; then mkserver_addons_mk_links openerp-ccorp-addons; fi
+	if [[ $install_costa_rica_addons =~ ^[Yy]$ ]]; then mkserver_addons_mk_links openerp-costa-rica; fi
+	if [[ $install_extra_addons =~ ^[Yy]$ ]]; then mkserver_addons_mk_links openobject-addons-extra; fi
+	if [[ $install_magentoerpconnect =~ ^[Yy]$ ]]; then mkserver_addons_mk_links magentoerpconnect; fi
+	if [[ $install_nantic =~ ^[Yy]$ ]]; then mkserver_addons_mk_links nantic; fi
 }
 
 function make_menus {

=== added file 'openerp-scripts/openerp-restore-addons.sh'
--- openerp-scripts/openerp-restore-addons.sh	1970-01-01 00:00:00 +0000
+++ openerp-scripts/openerp-restore-addons.sh	2012-02-06 23:09:18 +0000
@@ -0,0 +1,107 @@
+#       openerp-restore-addons.sh
+#       
+#       Copyright 2010 ClearCorp S.A. <info@xxxxxxxxxxxxxxx>
+#       
+#       This program is free software; you can redistribute it and/or modify
+#       it under the terms of the GNU General Public License as published by
+#       the Free Software Foundation; either version 2 of the License, or
+#       (at your option) any later version.
+#       
+#       This program is distributed in the hope that it will be useful,
+#       but WITHOUT ANY WARRANTY; without even the implied warranty of
+#       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#       GNU General Public License for more details.
+#       
+#       You should have received a copy of the GNU General Public License
+#       along with this program; if not, write to the Free Software
+#       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+#       MA 02110-1301, USA.
+#!/bin/bash
+
+if [[ ! -d $OPENERP_CCORP_DIR ]]; then
+	echo "openerp-ccorp-scripts not installed."
+	exit 1
+fi
+
+#~ Libraries import
+. $OPENERP_CCORP_DIR/main-lib/checkRoot.sh
+. $OPENERP_CCORP_DIR/main-lib/getDist.sh
+. $OPENERP_CCORP_DIR/openerp-scripts/openerp-lib.sh
+
+# Check user is root
+checkRoot
+
+# Init log file
+INSTALL_LOG_PATH=/var/log/openerp
+INSTALL_LOG_FILE=$INSTALL_LOG_PATH/install.log
+
+if [[ ! -f $INSTALL_LOG_FILE ]]; then
+	mkdir -p $INSTALL_LOG_PATH
+	touch $INSTALL_LOG_FILE
+fi
+
+function log {
+	echo "$(date): $1" >> $INSTALL_LOG_FILE
+}
+function log_echo {
+	echo $1
+	log "$1"
+}
+log ""
+
+# Set distribution
+dist=""
+getDist dist
+log_echo "Distribution: $dist"
+log_echo ""
+
+openerp_get_dist
+
+# Print title
+log_echo "OpenERP update addons script"
+log_echo "----------------------------"
+log_echo ""
+
+# Source installation variables
+if [ -d /etc/openerp/5.0 ] && [ ! -d /etc/openerp/6.0 ]; then
+	branch="5"
+elif [ ! -d /etc/openerp/5.0 ] && [ -d /etc/openerp/6.0 ]; then
+	branch="6"
+else
+	branch=""
+	while [[ ! $branch =~ ^[56]$ ]]; do
+		read -p "You have installed versions 5 and 6, choose the version for this server instance (5/_6_): " branch
+		if [[ $branch == "" ]]; then
+			branch="6"
+		fi
+		log_echo ""
+	done
+fi
+
+if [[ $branch =~ ^[5]$ ]]; then
+	log_echo "This server will use 5.0 branch."
+	branch="5.0"
+else
+	log_echo "This server will use 6.0 branch."
+	branch="6.0"
+fi
+
+. /etc/openerp/$branch/install.cfg
+
+name=""
+while [[ $name == "" ]]; do
+	read -p "Enter the OpenERP server name: " name
+	if [[ $name == "" ]]; then
+		log_echo "The name cannot be blank."
+	elif [[ ! -d /srv/openerp/$branch/instances/$name ]]; then
+		log_echo "There isn't any instance named $name"
+		name=""
+	fi
+done
+
+log_echo "Restoring addons for $name"
+mkserver_addons_rm_links
+mkserver_install_addons
+
+
+exit 0


Follow ups