iT邦幫忙

2023 iThome 鐵人賽

DAY 4
0

要啟用gitHub actions前,得先瞭解他的workflow是怎麼組成的
workflow格式: .yml檔
gitHub點選actions頁籤,有各種服務類型可以參考
https://ithelp.ithome.com.tw/upload/images/20230914/20163056UNkiDxVnnG.png

點擊任一服務後的範例格式,該yaml檔須放在workflow資料夾內

相關範例&說明:

name: Deploy Jupyter Notebook  # 工作流程的名稱,將顯示在 GitHub 上的工作流程列表中

on:
  push:  # 定義何時觸發這個工作流程
    branches:
      - main  # 當主分支(或其他指定的分支)有推送事件時觸發這個工作流程

jobs:
  deploy:  # 工作流程中的工作(job)名稱,這裡只有一個工作
    runs-on: ubuntu-latest  # 指定工作運行在最新的 Ubuntu 環境上

    steps:  # 工作中的步驟

      - name: Checkout code  # 步驟1:檢出代碼,這是一個預定義的操作
        uses: actions/checkout@v2

      - name: Deploy Notebook  # 步驟2:部署筆記本,這是一個 shell 指令步驟
        run: |
          # 在這裡添加你的部署腳本
          # 例如,你可以使用 nbconvert 將 .ipynb 轉換為 HTML 或 PDF 格式
          # 示例:jupyter nbconvert --to html notebook.ipynb
        working-directory: ./path/to/notebook/folder  # 此步驟的工作目錄

      # 如果需要,可以添加額外的步驟

關於觸發工作流程的yml語法可以參考官方文件
而在此次專案中需要用到的是on schedule事件搭配crontab語法來設定時間
https://ithelp.ithome.com.tw/upload/images/20230914/20163056akuuzhvLlI.png
因此工作流程須改為

on:
  schedule:
    - cron: '0 0 * * 7'  # 每週日的午夜(UTC時間)

關於crontab語法如何設置,可以參考鳥哥的資料來理解
要特別注意的是*號代表any,也就是說如果你設定五個星號,會變成無時無刻都在跑哦XD

剩下的關於如何部署已存在倉庫的.ipynb檔,留待明天說明囉~


上一篇
line_notify api獲取權杖的方式
下一篇
gitHub actions yaml檔設定說明-2
系列文
定期推送油價通知到Line上的訊息通知,並使用GitLab CI排程搭配Google Colab16
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言