JMComic-Crawler-Python/.github/workflows/download_dispatch.yml

98 lines
2.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: 下载JM本子(dispatch)
on:
workflow_dispatch:
inputs:
JM_ALBUM_IDS:
type: string
description: 本子id多个id用-隔开,如 '123-456-789'
required: true
DIR_RULE:
type: string
description: 下载文件夹规则对应option配置文件里的dir_rule.rule。此处可以不填默认使用repo里的配置文件的`Bd_Aauthor_Atitle_Pindex`。
default: ''
required: false
ZIP_NAME:
type: string
default: 本子.tar.gz
description: 压缩文件名称
required: false
UPLOAD_NAME:
type: string
default: 下载完成的本子
description: 上传文件名称
required: false
# JM_USERNAME:
# type: string
# default: ''
# description: '禁漫帐号不建议使用用户名和密码会泄露在日志中。最好用secrets'
# required: false
#
# JM_PASSWORD:
# type: string
# default: ''
# description: '禁漫密码不建议使用用户名和密码会泄露在日志中。最好用secrets'
# required: false
jobs:
crawler:
runs-on: ubuntu-latest
env:
# 工作流输入
JM_ALBUM_IDS: ${{ github.event.inputs.JM_ALBUM_IDS }}
DIR_RULE: ${{ github.event.inputs.DIR_RULE }}
ZIP_NAME: ${{ github.event.inputs.ZIP_NAME }}
UPLOAD_NAME: ${{ github.event.inputs.UPLOAD_NAME }}
# sccrets
JM_USERNAME: ${{ secrets.JM_USERNAME }}
JM_PASSWORD: ${{ secrets.JM_PASSWORD }}
# 固定值
JM_DOWNLOAD_DIR: /home/runner/work/jmcomic/download/
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.11
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install Dependency
run: |
python -m pip install --upgrade pip
pip install -r requirements-dev.txt
- name: 安装jmcomicpip
if: ${{ github.ref != 'refs/heads/dev' }}
run: |
pip install jmcomic -i https://pypi.org/project --upgrade
- name: 安装jmcomiclocal
if: ${{ github.ref == 'refs/heads/dev' }}
run: |
pip install -e ./
- name: 运行下载脚本
continue-on-error: true
run: |
cd ./usage/
python workflow_download.py
- name: 压缩文件
run: |
cd $JM_DOWNLOAD_DIR
tar -zcvf "../$ZIP_NAME" ./
mv "../$ZIP_NAME" .
- name: 上传结果
uses: actions/upload-artifact@v3
with:
name: ${{ env.UPLOAD_NAME }}
path: ${{ env.JM_DOWNLOAD_DIR }}/${{ env.ZIP_NAME }}
if-no-files-found: error
retention-days: 90