This commit is contained in:
@@ -1,39 +1,31 @@
|
|||||||
name: Deploy to Plesk
|
name: Deploy to Plesk via FTP
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-deploy:
|
build-and-deploy:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Build project
|
- name: Build project
|
||||||
run: |
|
run: |
|
||||||
npm install
|
npm install
|
||||||
npm run build # Angular → dist/portfolio/
|
npm run build # Angular → dist/portfolio/
|
||||||
|
- name: Deploy via FTP
|
||||||
|
run: |
|
||||||
|
sudo apt-get update && sudo apt-get install -y lftp
|
||||||
|
|
||||||
- name: Deploy to Plesk
|
# Définir les variables
|
||||||
uses: appleboy/ssh-action@v0.1.7
|
HOST=${{ secrets.FTP_HOST }}
|
||||||
with:
|
USER=${{ secrets.FTP_USER }}
|
||||||
host: ${{ secrets.PLESK_HOST }}
|
PASSWORD=${{ secrets.FTP_PASSWORD }}
|
||||||
username: ${{ secrets.PLESK_USER }}
|
TARGET_DIR=/httpdocs/johanleroy/public
|
||||||
key: ${{ secrets.PLESK_SSH_KEY }}
|
LOCAL_DIR=./dist/portfolio
|
||||||
port: 22
|
|
||||||
script: |
|
|
||||||
TARGET=~/httpdocs/johanleroy/public
|
|
||||||
|
|
||||||
# Sauvegarde de l'ancien build
|
# Upload des fichiers
|
||||||
if [ -d $TARGET ]; then
|
lftp -c "
|
||||||
mv $TARGET ${TARGET}_backup_$(date +%F_%H%M)
|
open -u $USER,$PASSWORD $HOST
|
||||||
fi
|
mirror -R --delete --verbose $LOCAL_DIR $TARGET_DIR
|
||||||
|
"
|
||||||
# Créer le dossier cible si nécessaire
|
|
||||||
mkdir -p $TARGET
|
|
||||||
|
|
||||||
# Copier le build Angular
|
|
||||||
cp -r ./dist/portfolio/* $TARGET/
|
|
||||||
|
|||||||
Reference in New Issue
Block a user