Skip to content

Commit 4e857dd

Browse files
authored
Merge pull request #35 from funktechno/f/ftp
F/ftp
2 parents 24097ca + fd90e24 commit 4e857dd

1 file changed

Lines changed: 56 additions & 13 deletions

File tree

.github/workflows/ftp-deploy.yml

Lines changed: 56 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ concurrency:
66
cancel-in-progress: true
77

88
on:
9-
push:
10-
branches: [ master ]
9+
# push:
10+
# branches: [ master ]
1111
workflow_dispatch:
1212
# inputs:
1313
# build_windows:
@@ -36,10 +36,25 @@ jobs:
3636
mkdir -p deploy
3737
3838
# Copy all .php files while preserving directory structure, but exclude the config folder
39-
# --prune-empty-dirs removes directories that would be empty after filtering
39+
# --prune-empty-dirs removes directories that would be empty after filtering --dry-run
4040
rsync -av --prune-empty-dirs \
41-
--include='*/' --include='*.php' \
42-
--exclude='config/**' --exclude='library/mailFunctions.php' --exclude='tests/**' --exclude='mail/**' --exclude='*' ./ deploy/
41+
--exclude='config' \
42+
--exclude='library/mailFunctions.php' \
43+
--exclude='tests' \
44+
--exclude='mail' \
45+
--include='*.php' \
46+
--include='*/' \
47+
--exclude='*' \
48+
./ deploy/
49+
50+
# rsync -av --prune-empty-dirs \
51+
# --include='css/**' \
52+
# --include='images/**' \
53+
# --include='assets/**' \
54+
# --include='examples/**' \
55+
# --include='*/' \
56+
# --exclude='*' \
57+
# ./ deploy/
4358
4459
# Ensure specific asset directories are included
4560
for d in assets css images examples; do
@@ -51,14 +66,42 @@ jobs:
5166
echo "Deploy package contents:"
5267
find deploy -maxdepth 4 -type f | sed -n '1,200p'
5368
54-
- name: Deploy to FTP server
55-
uses: SamKirkland/FTP-Deploy-Action@4.3.0
56-
with:
57-
server: ${{ secrets.FTP_SERVER }}
58-
username: ${{ secrets.FTP_USER }}
59-
password: ${{ secrets.FTP_PASSWORD }}
60-
port: ${{ secrets.FTP_PORT }}
61-
local-dir: deploy/
69+
- name: Manual SFTP Upload
70+
run: |
71+
echo "Starting manual SFTP upload..."
72+
73+
echo "put deploy/*" > sftp_batch.txt
74+
export SSHPASS=${{ secrets.FTP_PASSWORD }}
75+
sshpass -e \
76+
sftp -o StrictHostKeyChecking=no \
77+
-o UserKnownHostsFile=/dev/null \
78+
-P ${{ secrets.FTP_PORT }} \
79+
-b sftp_batch.txt \
80+
${{ secrets.FTP_USER }}@${{ secrets.FTP_SERVER }}
81+
# sshpass -p "${{ secrets.FTP_PASSWORD }}" sftp user@host
82+
83+
# lftp -u "$FTP_USER","$FTP_PASSWORD" -p 221 sftp://$FTP_SERVER <<EOF
84+
# mirror -R ./deploy /
85+
# EOF
86+
# - name: Upload via SFTP
87+
# uses: appleboy/scp-action@v1
88+
# with:
89+
# host: ${{ secrets.FTP_SERVER }}
90+
# username: ${{ secrets.FTP_USER }}
91+
# password: ${{ secrets.FTP_PASSWORD }}
92+
# port: ${{ secrets.FTP_PORT }}
93+
# source: "deploy/*"
94+
# target: "/"
95+
# debug: true
96+
97+
# - name: Deploy to FTP server
98+
# uses: SamKirkland/FTP-Deploy-Action@4.3.0
99+
# with:
100+
# server: ${{ secrets.FTP_SERVER }}
101+
# username: ${{ secrets.FTP_USER }}
102+
# password: ${{ secrets.FTP_PASSWORD }}
103+
# port: ${{ secrets.FTP_PORT }}
104+
# local-dir: deploy/
62105
# server-dir: /
63106
# ${{ secrets.FTP_REMOTE_DIR }}
64107

0 commit comments

Comments
 (0)