|
2 | 2 |
|
3 | 3 | # Deploys to the production server.
|
4 | 4 |
|
5 |
| -RELEASE_DIR="/home/public_html/site/releases/" |
6 |
| -RSYNC_DIR="/home/public_html/site/latest/" |
| 5 | +REPO="/opt/website" |
| 6 | +RELEASE_DIR="/home/public_html/site/releases" |
| 7 | +SHARED_DIR="/home/public_html/site/shared" |
7 | 8 | USERGUIDE_DIR="/home/public_html/userguides"
|
8 | 9 | CONFIG_FILE="/home/public_html/config/.env.site"
|
9 | 10 |
|
10 |
| -cd ~/ |
11 |
| -RELEASE=`date +"%d-%m-%Y-%H-%M-%S"` |
| 11 | +RELEASE=`date +"%Y-%m-%d-%H-%M-%S"` |
| 12 | + |
| 13 | +echo $'Update website repository\n' |
| 14 | +cd $REPO |
| 15 | +git switch master |
| 16 | +git pull |
12 | 17 |
|
13 | 18 | echo $'Copy current release\n'
|
14 | 19 | cd $RELEASE_DIR
|
15 |
| -cp -r ../latest ./$RELEASE |
| 20 | +sudo cp -pr $REPO ./$RELEASE |
16 | 21 |
|
17 | 22 | echo $'Install composer dependencies\n'
|
18 | 23 | cd $RELEASE_DIR/$RELEASE
|
19 | 24 | composer install --no-dev
|
20 | 25 |
|
21 |
| -echo $'Setup FS\n' |
22 |
| -cd $RELEASE_DIR/$RELEASE |
23 |
| -sudo chmod -R 777 writable |
24 |
| -sudo chmod -R a+rx vendor |
| 26 | +if [ ! -d "$SHARED_DIR" ]; then |
| 27 | + echo $'Create shared directory\n' |
| 28 | + sudo mkdir -p "$SHARED_DIR" |
| 29 | + echo $'Setup folder permissions\n' |
| 30 | + sudo chown -R www-data:www-data writable |
| 31 | + sudo chmod -R 755 writable |
| 32 | + sudo cp -rp writable "$SHARED_DIR" |
| 33 | +fi |
| 34 | + |
| 35 | +echo $'Link writable\n' |
| 36 | +sudo rm -rf writable |
| 37 | +sudo ln -nsf "$SHARED_DIR/writable" writable |
| 38 | + |
| 39 | +echo $'Link .env\n' |
25 | 40 | sudo ln -nsf $CONFIG_FILE .env
|
26 | 41 |
|
27 |
| -echo $'Link current user guide\n' |
28 |
| -sudo ln -nsf $USERGUIDE_DIR/userguide4 public/user_guide |
| 42 | +echo $'Link user guides\n' |
| 43 | +ln -nsf $USERGUIDE_DIR/userguide4 public/user_guide |
| 44 | +ln -nsf $USERGUIDE_DIR/userguide3 public/userguide3 |
| 45 | +ln -nsf $USERGUIDE_DIR/userguide2 public/userguide2 |
29 | 46 |
|
30 |
| -echo $'Set up Links\n' |
| 47 | +echo $'Deploy: update symlink\n' |
31 | 48 | cd $RELEASE_DIR
|
32 | 49 | sudo ln -nsf $RELEASE_DIR/$RELEASE "../current"
|
| 50 | + |
| 51 | +echo $'Reload PHP8.1-FPM\n' |
33 | 52 | sudo service php8.1-fpm reload
|
0 commit comments