File: createplugin.sh

package info (click to toggle)
fusionforge 5.3.2%2B20141104-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 60,472 kB
  • sloc: php: 271,846; sql: 36,817; python: 14,575; perl: 6,406; sh: 5,980; xml: 4,294; pascal: 1,411; makefile: 911; cpp: 52; awk: 27
file content (89 lines) | stat: -rwxr-xr-x 2,271 bytes parent folder | download | duplicates (4)
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
80
81
82
83
84
85
86
87
88
89
#!/bin/sh

# TODO missing copyright

#set -x

path=$(dirname $0)
modelfullname=HelloWorld
modelminus=`echo $modelfullname | tr '[A-Z]' '[a-z]'`
modelplugdir=$path/../plugins/$modelminus
dopackage=0

usage() {
	echo Usage: $0 [--dopackage] PluginName
}

echo "Plugin template creator"
if [ $# -eq 0 ] 
then
	usage
else
	case $1 in 
		--dopackage)
			dopackage=1
			shift
			;;
		*)
			;;
	esac
	fullname=$1
	minus=`echo $1 | tr '[A-Z]' '[a-z]'`
	plugdir=$minus
	current_dir=`pwd`
	if [ "`basename $current_dir`" != "plugins" ]; then
	    echo "Please launch the script from withing the src/plugins/ dir"
	    exit 1
	fi
	[ ! -d $modelplugdir/debian/fusionforge-plugin-$modelminus ] || (cd $modelplugdir ; debclean)
	echo "Creating $1 plugin"
	echo "Creating directory $plugdir"
	[ ! -d $plugdir ] && mkdir $plugdir
	(cd $modelplugdir;find bin;find etc;find common;find include;find www;find utils;find db;find cronjobs;find tests; find translations; find README; find NAME)|sort|while read debfile
	do
		if [ -d $modelplugdir/$debfile ]
		then
			newdebdir=`echo $debfile | sed "s/$modelminus/$minus/g"`
			if [ ! -d $plugdir/$newdebdir ]
			then
				echo "Making directory $plugdir/$newdebdir" ; mkdir $plugdir/$newdebdir
			fi
		else
			newdebfile=`echo $debfile | sed "s/$modelminus/$minus/g"`
			if [ ! -f $plugdir/$newdebfile ]
			then
				echo "Creating $plugdir/$newdebfile"
				cat $modelplugdir/$debfile | \
					sed "s/$modelminus/$minus/g" | \
					sed "s/$modelfullname/$fullname/g" > \
				$plugdir/$newdebfile
			fi
		fi
	done

	if [ $dopackage -ne 0 ]
	then
		echo "Doing package"
		chmod +x $plugdir/utils/*
		chmod +x $plugdir/bin/*
		(cd $modelplugdir;find debian;find packaging)|sort|while read debfile
		do
			if [ -d $modelplugdir/$debfile ]
			then
				newdebdir=`echo $debfile | sed "s/$modelminus/$minus/g"`
				[ -d $plugdir/$newdebdir ] || (echo "Making directory $plugdir/$newdebdir" ; mkdir $plugdir/$newdebdir)
			else
				newdebfile=`echo $debfile | sed "s/$modelminus/$minus/g"`
				if [ ! -f $plugdir/$newdebfile ]
				then
					echo "Creating $plugdir/$newdebfile"
					cat $modelplugdir/$debfile | \
						sed "s/$modelminus/$minus/g" | \
						sed "s/$modelfullname/$fullname/g" > \
					$plugdir/$newdebfile
				fi
			fi
		done
	fi
fi