-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathproject-clone
executable file
·61 lines (45 loc) · 1.68 KB
/
project-clone
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
#!/usr/bin/env bash
if [ ! -n "$1" ]
then
echo "error: Parameter project_name_from not found"
echo -e "Usage: project-clone [PROJECT_NAME_FROM] [NEW_PROJECT_NAME]"
exit 1
fi
if [ ! -n "$2" ]
then
echo "error: Parameter new_project_name not found"
echo -e "Usage: project-clone [PROJECT_NAME_FROM] [NEW_PROJECT_NAME]"
exit 1
fi
projectName="$1"
projectPath="/var/www/$1"
if [ -e "$projectPath" ]
then
echo "Project $projectName don't exists"
exit 1
fi
newProjectName="$2"
newProjectPath="/var/www/$2"
if [ -e "$newProjectPath" ]
then
echo "Project $newProjectName already exists"
exit 1
fi
mkdir $newProjectPath
chmod 777 $newProjectPath
#clone project
cd $newProjectPath;
git clone $projectPath .
#Не доделано
###################################################################
#configure project
configTemplate="protected/config/.env.example"
configFile="protected/config/.env"
sed -e "s/project_name/$1/" -e "s/APP_DEBUG=false/APP_DEBUG=true/" -e "s/APP_ENV=prod/APP_ENV=dev/" -e "s/DB_HOST=localhost/DB_HOST=mysql/" $configTemplate > $configFile
#createDBCommand="CREATE DATABASE \\`$projectName\\` CHARACTER SET utf8 COLLATE utf8_general_ci;"
#GRANT ALL ON `$projectName`.* TO `username`@localhost IDENTIFIED BY 'password';
#mysqlCommand="mysql -hmysql -uprog -p123 -e $createDBCommand"
#echo $mysqlCommand
cd /var/www/laradock
docker-compose exec --user=laradock workspace sh -c "mysql -hmysql -uprog -p123 -e 'CREATE DATABASE \`$projectName\` CHARACTER SET utf8 COLLATE utf8_general_ci;' && cd $projectPath && composer install && protected/yiic db applySchema && protected/yiic migrate up --interactive=0 && protected/yiic rbac reset"
nginx-add-project $projectName