vb如何使用ftp函式,vb如何使用ftp函式要知道這些

愛喝啤酒的雷神發表於2020-10-13
堅持不懈的尋找方案終於有了結果——使用GitLab CI持續整合並自動部署到FTP。

這樣減少了相當多的人力工作。

主要分為兩個過程

在介紹過程前還有一個更簡單方便的方法可以先告訴不喜歡倒騰的,那就是IIS7伺服器管理工具。
IIS7伺服器管理工具可以批次管理、定時上傳下載、同步操作、資料備份、到期提醒、自動更新。IIS7伺服器管理工具適用於Windows作業系統和liunx作業系統;支援Ftp客戶端批次操作。
官網地址:
ftpds.png

接下來是兩個過程的詳解

持續整合

第一步很關鍵,但是也很簡單。建立GitLab私有倉庫以後,在專案根目錄新增 .gitlab-ci.yml配置檔案,以便上傳程式碼後GitLab CI使用。

其中有兩個關鍵點。第一個是標記 expire_in,不然會自動刪除的。第二個是我這裡配置了分支是 master,這個依自己情況而定。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# This file is a template, and might need editing before it works on your project.
# Full project: 
image: node:12.14.1
cache:
  paths:
    - node_modules/
before_script:
  - npm install hexo-cli -g
  - test -e package.json && npm install
  - hexo generate
pages:
  script:
    - hexo generate
  artifacts:
    expire_in: 3 days  # <== !!!
    paths:
      - public  # <== 每次會將生成的 public 資料夾當成附件,儲存起來
  only:
    - master

自動部署

自動部署這個折騰了很久。先描述過程,後面再說自己挖的坑。

增加FTP伺服器配置後, .gitlab-ci.yml配置檔案如下:
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
# This file is a template, and might need editing before it works on your project.
# Full project: 
image: node:12.14.1
cache:
  paths:
    - node_modules/
before_script:
  - npm install hexo-cli -g
  - test -e package.json && npm install
  - hexo generate
pages:
  script:
    - hexo generate
    - apt-get update -qq && apt-get install -y -qq lftp
  artifacts:
    expire_in: 3 days  # <== !!!
    paths:
      - public  # <== 每次會將生成的 public 資料夾當成附件,儲存起來
  only:
    - master
  after_script:
  - lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -Rev public/ ./ --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
大致流程是先安裝lftp工具,再上傳。特別注意,這裡為了不在程式碼中暴露關鍵資訊,使用了 $USERNAME  $PASSWORD  $HOST來獲取CI/CD中提前配置好的變數值。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69984138/viewspace-2726613/,如需轉載,請註明出處,否則將追究法律責任。

相關文章