File: bugzilla3.preinst

package info (click to toggle)
bugzilla 3.0.4.1-2%2Blenny2
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 4,328 kB
  • ctags: 29
  • sloc: sh: 525; makefile: 160; perl: 98
file content (79 lines) | stat: -rw-r--r-- 1,724 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#!/bin/sh 

# Summary of how this script is called:
# . new-preinst install
# . new-preinst install old-version
# . new-preinst upgrade old-version 

debug()
{
	if [ -n "$DEBIAN_BUGZILLA_DEBUG" ]; then
		echo "$1" >&2
	fi
}

# Use the same order as for mv
replace_file()
{
	file_source="$1"
	file_dest="$2"

	if [ ! -e $file_source ]; then
		debug "$file_source has already been moved"
	else
		if [ ! -e $file_dest ]; then
			mv $file_source $file_dest || exit 10
			debug "mv $file_source $file_dest"
		else
			cp $file_dest ${file_dest}.old
			debug "ucf $file_source $file_dest"
			ucf $file_source $file_dest || exit 11
		fi
		chown www-data:www-data $file_dest
		#rm -f $file_source
	fi
}

upgrade_params_file()
{
	file="$1"
	if [ -e $file ]; then
		debug "Moving $file"
		replace_file $file /etc/bugzilla3/params
	fi
}


##############################################################
# Main
#############################################################

set -e
mode="$1"
version="$2"

if [ "$mode" = "upgrade" ]; then

	# Upgrade the 2.16 packages and older
	params_216="/var/lib/bugzilla3/data/params"
	if  [ -n "$version" ] && dpkg --compare-versions $version lt 2.16.7-6; then
		debug "Upgrading $version"
		upgrade_params_file $params_216
	fi

	# Upgrade previous 2.18 packages
	params_218="/usr/share/bugzilla3/web/data/params"
	if [ -n "$version" ] && dpkg --compare-versions "$version" lt 2.18-4; then
		debug "Upgrading $version"
		upgrade_params_file $params_218
	fi

	# Upgrade previous 2.22 package
	params_222="/usr/share/bugzilla3/debian/params"
	if [ -n "$version" ] && dpkg --compare-versions "$version" lt 2.22.1; then
		debug "Upgrading $version"
		upgrade_params_file $params_222
	fi
fi

#DEBHELPER#