起因

Blog 从 Hexo 迁移到 Hugo 后就很少在这上面写文章了,为了完成公众号的认证,前些日子一直在写公众号文章,周五读了一篇文章感触颇深,讲得是“中年码农的困境”一种现状, 现在已经有很多三四十岁的码农了,很多公司对于中年的码农比较苛刻,由于他们的综合人力成本比较高,很容易被优化掉。

对于年轻的码农,作者给出的几条建议:

  1. 要有积累,不管是文字、视频、项目、代码等等,一定要有积累,要在本职工作以外,有一个东西你可以慢慢的积累下来。最开始几年,可能都没什么收益,但你最好还是要坚持下去。我觉得,积累是一种很强大的力量,比学习能力更重要。因为随着年龄的增长,比学习能力更重要。因为随着年龄的增长,你的学习能力是在下降的,而且行业的技术迭代比较快,一直会有新东西出现,你必须不断的保持学习,这很困难。
  2. 让自己不可或缺。公司制定了很多很完善的流程和制度,目的就是为了让每一位员工都可以被替代,一旦有人离职,都可以在短时间内找到替代他的人,这样才能保持公司的正常运转。个人的策略其实和公司相反,让公司不容易找到替代你的人。如果公司需要花费较长时间或较大的成本,才能找到合适的人来替换你,那么你就是不可或缺的。
  3. 要保持开放的头脑,要善于接收。每个人的见识是有局限的,世界是多元的,每一次的交流都是认识的碰撞。很多人就是不善于接受别人的观点,很固执。我并不是说,让你无脑地赞同别人,而是你愿意去尝试或者验证别人的观点。这样才会给自己带来更多的机会,蛮干是没有出路的。中国大部分码农的现状是不乐观的,如果你不多去思考的话,情况可能会更加的不乐观。

想法

为了让自己的写的东西更好的沉淀下来,也算是对得起每月支付的域名费(codingbing.com),觉定再优化一下 Hugo 写完 Blog 的部署流程,之前的部署方式是:本地写完一篇文章,build 后,然后通过一个脚本上传到阿里云的 OSS,还算省心吧。

最近再玩 Github action,突然有个想法,为什么不自动完成这以流程呢。于是乎就有了以下流程:

  1. 本地在Hugo写了一篇文章;
  2. 推送到(push)github 仓库 master
  3. action 自动触发部署,部署到阿里云的 OSSL

实现

使用的工具 peaceiris/actions-hugo,我的配置如下:

 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
40
41
42
name: github pages

on:
  push:
    branches:
      - main  # Set a branch to deploy
      - master
  pull_request:

jobs:
  deploy:
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/checkout@v2
        with:
          submodules: true  # Fetch Hugo themes (true OR recursive)
          fetch-depth: 0    # Fetch all history for .GitInfo and .Lastmod

      - name: Setup Hugo
        uses: peaceiris/actions-hugo@v2
        with:
          hugo-version: '0.83.1'
          # extended: true

      - name: Build
        run: hugo --minify

      # - name: Deploy
      #   uses: peaceiris/actions-gh-pages@v3
      #   if: github.ref == 'refs/heads/main'
      #   with:
      #     github_token: ${{ secrets.GITHUB_TOKEN }}
      #     publish_dir: ./public
      - name: Deploy to OSS
        uses: fangbinwei/aliyun-oss-website-action@v1
        with:
            accessKeyId: ${{ secrets.OSS_KEY_ID }}
            accessKeySecret: ${{ secrets.OSS_KEY_SECRET }}
            bucket: codingbing
            # e.g. "oss-cn-shanghai.aliyuncs.com"
            endpoint: oss-cn-shanghai.aliyuncs.com
            folder: ./public

Actions secrets 设置:

deploy