目的
因为Hugo是部署在COS(腾讯云对象存储)上的,每次部署和同步代码都需要在本地用Hugo进行编译后将public中的静态文件上传到COS,然后删除public文件夹再将当前
的项目结构同步至github仓库中(为什么不用github pages?因为访问速度的问题)。每次发布文章的操作比较繁琐,所以可以利用github Actions来实现自动部署至COS。
这样免去了对本地环境的要求和手动上传文件到COS的繁琐操作。
Actions配置
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
name: Deloy to COS
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up Go
uses: actions/setup-go@v1.0.0
with:
version: 1.13.5
- name: Install Hugo
run: |
export GOPATH=$HOME
mkdir $HOME/src
cd $HOME/src
git clone https://github.com/gohugoio/hugo.git
cd hugo
go install
- name: Set up Python
uses: actions/setup-python@v1
with:
python-version: 2.7.16
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- name: Install coscmd
run: |
pip install coscmd
- name: deploy
run: |
$HOME/bin/hugo
coscmd config -a 腾讯云AccessId -s 腾讯云SecretKey -b 桶名称 -r 桶地区 -m 10
coscmd upload -r -s public/ /
|