Browse Source

tool work

Eeems 10 years ago
parent
commit
7f0eacae95
9 changed files with 110 additions and 37 deletions
  1. 0 14
      bin/add-project
  2. 0 10
      bin/add-site
  3. 2 2
      bin/install-shell
  4. 35 0
      bin/package-add
  5. 12 0
      bin/package-del
  6. 30 0
      bin/site-add
  7. 7 0
      bin/site-del
  8. 13 0
      etc/packages.conf
  9. 11 11
      etc/sites.conf

+ 0 - 14
bin/add-project

@@ -1,14 +0,0 @@
-#!/bin/bash
-if [[ "$1" != "" ]];then
-	if [[ "$2" != "" ]];then
-		mkdir -p src/$1;
-		ln -s `readlink -f $2`  src/$1/src;
-		echo "Linked source in $2";
-	else
-		mkdir -p src/$1/src;
-	fi;
-	touch src/$1/build.sh
-	echo "Created project $1";
-else
-	echo "Usage: $0 <projectname> [<sourcedir>]";
-fi;

+ 0 - 10
bin/add-site

@@ -1,10 +0,0 @@
-#!/bin/bash
-if [[ "$1" != "" ]] && [[ "$2" != "" ]]; then
-	read -s -p "Password:" pass;
-	file=`dirname $BASH_SOURCE`/../etc/sites.d/$2;
-	touch $file;
-	echo "sites+=([username]=\"$1\" [host]=\"$2\" [password]=\"$pass\")" > $file;
-	echo "Site $2 created";
-else
-	echo "Usage: $0 <username> <hostname>"
-fi;

+ 2 - 2
bin/install-shell

@@ -1,7 +1,7 @@
 #!/bin/bash
 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:`readlink -f $(dirname $BASH_SOURCE)`;
-if [[ "$1" != "" ]];then
-	$1;
+if [[ "$@" != "" ]];then
+	$@;
 else
 	sh;
 fi;

+ 35 - 0
bin/package-add

@@ -0,0 +1,35 @@
+#!/bin/bash
+if [[ "$1" != "" ]];then
+	btype="";
+	script="";
+	if [[ "$2" != "" ]];then
+		mkdir -p src/$1;
+		ln -s `readlink -f $2`  src/$1/src;
+		echo "Linked source in $2";
+	else
+		mkdir -p src/$1/src;
+	fi;
+	touch src/$1/build.sh
+	echo -e "Type:\n (1) script\n (2) git\n (3) svn";
+	while [[ ! $btype =~ ^1|2|3$ ]]; do
+		read btype;
+	done;
+	case $btype in
+		2)
+			btype="git";
+		;;
+		3)
+			btype="svn";
+		;;
+		*)
+			btype="script";
+			read -p "Script path: " script;
+		;;
+	esac;
+	file=`dirname $BASH_SOURCE`/../etc/packages.d/$1;
+	touch $file;
+	echo "packages+=([name]=\"$1\" [type]=\"$btype\" [script]=\"$script\")" > $file;
+	echo "Created project $1";
+else
+	echo "Usage: $0 <package> [<sourcedir>]";
+fi;

+ 12 - 0
bin/package-del

@@ -0,0 +1,12 @@
+#!/bin/bash
+if [[ "$1" != "" ]];then
+	dir="$(dirname $BASH_SOURCE)/..";
+	if [[ -L "$dir/src/$1/src" ]];then
+		rm -f $dir/src/$1/src;
+	fi;
+	rm -rf $dir/src/$1;
+	rm -f $dir/etc/packages.d/$1;
+	echo "Package $1 removed";
+else
+	echo "Usage: $0 <package>";
+fi;

+ 30 - 0
bin/site-add

@@ -0,0 +1,30 @@
+#!/bin/bash
+if [[ "$1" != "" ]] && [[ "$2" != "" ]]; then
+	root="";
+	stype="";
+	if [[ "$3" != "" ]];then
+		root="$3";
+	fi;
+	echo -e "\nType:\n (1) ssh\n (2) ftp\n (3) rsync";
+	while [[ ! $stype =~ ^1|2|3$ ]]; do
+		read stype;
+	done;
+	case $stype in
+		1)
+			stype="ssh";
+		;;
+		2)
+			stype="ftp";
+		;;
+		3)
+			stype="rsync";
+		;;
+	esac;
+	read -s -p "Password:" pass;
+	file=`dirname $BASH_SOURCE`/../etc/sites.d/$1@$2;
+	touch $file;
+	echo "sites+=([username]=\"$1\" [host]=\"$2\" [password]=\"$(echo $pass | gpg -c | base64)\" [root]=\"$root\" [type]=\"$stype\")" > $file;
+	echo -e "Site $1@$2 created";
+else
+	echo "Usage: $0 <username> <hostname> [<root directory>]"
+fi;

+ 7 - 0
bin/site-del

@@ -0,0 +1,7 @@
+#!/bin/bash
+if [[ "$1" != "" ]] && [[ "$2" != "" ]]; then
+	rm -f $(dirname $BASH_SOURCE)/../etc/sites.d/$1@$2;
+	echo "Site $1@$2 removed";
+else
+	echo "Usage: $0 <username> <hostname>"
+fi;

+ 13 - 0
etc/packages.conf

@@ -0,0 +1,13 @@
+############################################################################################
+#                                                                                          #
+#                           Package declaration                                            #
+#                                                                                          #
+############################################################################################
+packages=()
+for f in `dirname $BASH_SOURCE`/packages.d/*; do source $f; done
+############################################################################################
+#                                                                                          #
+#                   To Add a new package:                                                  #
+# packages+=([name]="name" [type]="script|git|svn" [script]="update script if applicable") #
+#                                                                                          #
+############################################################################################

+ 11 - 11
etc/sites.conf

@@ -1,13 +1,13 @@
-############################################################################################
-#                                                                                          #
-#                           Site declaration                                               #
-#                                                                                          #
-############################################################################################
+####################################################################################################################
+#                                                                                                                  #
+#                                        Site declaration                                                          #
+#                                                                                                                  #
+####################################################################################################################
 sites=()
 for f in `dirname $BASH_SOURCE`/sites.d/*; do source $f; done
-############################################################################################
-#                                                                                          #
-#                   To Add a new site:                                                     #
-# sites+=([username]="username" [password]="password" [host]="hostname" [type]="ssh|ftp")  #
-#                                                                                          #
-############################################################################################
+####################################################################################################################
+#                                                                                                                  #
+#                                       To Add a new site:                                                         #
+# sites+=([username]="username" [password]="password" [host]="hostname" [type]="ssh|ftp" [root]="root directory")  #
+#                                                                                                                  #
+####################################################################################################################