FTP-Deploy-Action 项目教程
1. 项目的目录结构及介绍
FTP-Deploy-Action 项目的目录结构相对简单,主要包含以下几个文件和文件夹:
FTP-Deploy-Action/
├── .github/
│ └── workflows/
│ └── ftp-deploy.yml
├── .gitignore
├── LICENSE
├── README.md
└── src/
└── deploy.js
- .github/workflows/: 该目录包含 GitHub Actions 的工作流配置文件。
ftp-deploy.yml是用于配置 FTP 部署的工作流文件。 - .gitignore: 用于指定 Git 忽略的文件和目录。
- LICENSE: 项目的开源许可证文件。
- README.md: 项目的介绍文档,通常包含项目的使用说明、安装步骤等信息。
- src/: 项目的源代码目录,包含主要的部署逻辑代码。
2. 项目的启动文件介绍
项目的启动文件是 src/deploy.js。该文件是 FTP-Deploy-Action 的核心逻辑文件,负责处理文件的上传、删除等操作。以下是 deploy.js 的主要功能:
- 初始化配置: 从 GitHub Actions 的环境变量中读取 FTP 配置信息。
- 连接 FTP 服务器: 使用配置信息连接到目标 FTP 服务器。
- 文件同步: 比较本地文件和远程文件,执行上传、删除等操作,确保远程服务器上的文件与本地一致。
3. 项目的配置文件介绍
FTP-Deploy-Action 的配置主要通过 GitHub Actions 的工作流文件 .github/workflows/ftp-deploy.yml 进行。以下是该配置文件的主要内容:
name: FTP Deploy
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: FTP Deploy
uses: SamKirkland/FTP-Deploy-Action@4.0.0
with:
server: ${{ secrets.FTP_SERVER }}
username: ${{ secrets.FTP_USERNAME }}
password: ${{ secrets.FTP_PASSWORD }}
local-dir: ./dist/
server-dir: /public_html/
- name: 工作流的名称,这里是
FTP Deploy。 - on: 触发工作流的事件,这里是
push事件,并且只在main分支上触发。 - jobs: 定义工作流的任务。
- deploy: 任务的名称。
- runs-on: 任务运行的环境,这里是
ubuntu-latest。 - steps: 任务的具体步骤。
- Checkout code: 检出代码。
- FTP Deploy: 使用 FTP-Deploy-Action 进行部署。
- server: FTP 服务器地址,从 GitHub Secrets 中读取。
- username: FTP 用户名,从 GitHub Secrets 中读取。
- password: FTP 密码,从 GitHub Secrets 中读取。
- local-dir: 本地需要上传的目录,这里是
./dist/。 - server-dir: 远程服务器的目标目录,这里是
/public_html/。
- runs-on: 任务运行的环境,这里是
- deploy: 任务的名称。
通过以上配置,FTP-Deploy-Action 可以自动将本地 dist/ 目录中的文件上传到远程 FTP 服务器的 /public_html/ 目录中。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



