yeshan333 / actions-for-hexo-blog

GitHub Actions for my Hexo Blog
https://shansan.top
2 stars 2 forks source link

GitHub Actions 自动部署 Hexo 配置参考 #5

Open yeshan333 opened 4 years ago

yeshan333 commented 4 years ago
yeshan333 commented 4 years ago

第一次使用的 CI 不知道为什么对 git log 有破坏性变更

# workflow name
name: Hexo Blog CI

# master branch on push, auto run
on:
  push:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    # check it to your workflow can access it
    # from: https://github.com/actions/checkout
    - name: Checkout Repository master branch
      uses: actions/checkout@master

    # from: https://github.com/actions/setup-node
    - name: Setup Node.js 10.x
      uses: actions/setup-node@master
      with:
        node-version: "10.x"

    - name: Setup Hexo Dependencies
      run: |
        npm install hexo-cli -g
        npm install
    - name: Setup Deploy Private Key
      env:
        HEXO_DEPLOY_PRIVATE_KEY: ${{ secrets.HEXO_DEPLOY_PRIVATE_KEY }}
      run: |
        mkdir -p ~/.ssh/
        echo "$HEXO_DEPLOY_PRIVATE_KEY" > ~/.ssh/id_rsa
        chmod 600 ~/.ssh/id_rsa
        ssh-keyscan github.com >> ~/.ssh/known_hosts
    - name: Setup Git Infomation
      run: |
        git config --global user.name 'yeshan333'
        git config --global user.email '1329441308@qq.com'
    - name: Deploy Hexo
      run: |
        hexo clean
        hexo generate
        hexo deploy
yeshan333 commented 3 years ago

第一次使用的 CI 不知道为什么对 git log 有破坏性变更

# workflow name
name: Hexo Blog CI

# master branch on push, auto run
on:
  push:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    # check it to your workflow can access it
    # from: https://github.com/actions/checkout
    - name: Checkout Repository master branch
      uses: actions/checkout@master

    # from: https://github.com/actions/setup-node
    - name: Setup Node.js 10.x
      uses: actions/setup-node@master
      with:
        node-version: "10.x"

    - name: Setup Hexo Dependencies
      run: |
        npm install hexo-cli -g
        npm install
    - name: Setup Deploy Private Key
      env:
        HEXO_DEPLOY_PRIVATE_KEY: ${{ secrets.HEXO_DEPLOY_PRIVATE_KEY }}
      run: |
        mkdir -p ~/.ssh/
        echo "$HEXO_DEPLOY_PRIVATE_KEY" > ~/.ssh/id_rsa
        chmod 600 ~/.ssh/id_rsa
        ssh-keyscan github.com >> ~/.ssh/known_hosts
    - name: Setup Git Infomation
      run: |
        git config --global user.name 'yeshan333'
        git config --global user.email '1329441308@qq.com'
    - name: Deploy Hexo
      run: |
        hexo clean
        hexo generate
        hexo deploy

若不想把 Page Repo 的 git log 摧毁,hexo deploy 前添加 git clone git@github.com:yeshan333/yeshan333.github.io.git .deploy_git

yeshan333 commented 3 years ago
name: Site CI

on:
  pull_request:
    branches: [master]
  push:
    branches: [master]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      ......
      - name: Release to GitHub Pages
        env:
          USE_SSH: true
          GIT_USER: git
        run: |
          git config --global user.email "1329441308@qq.com"
          git config --global user.name "yeshan333"
          git clone git@github.com:yeshan333/yeshan333.github.io.git .deploy_git
          hexo clean
          hexo generate
          hexo deploy