-
Notifications
You must be signed in to change notification settings - Fork 0
@.各ファイルの役割
Geusen edited this page Jul 14, 2022
·
13 revisions
Schedule_Bot
├─ client_secrets.json (GoogleDriveアクセス用)
├─ credentials.json (〃)
├─ schedule.py (プログラムが記述してある)
├─ settings.py (環境変数関連)
├─ settings.yaml (GoogleDriveアクセス用)
│
└─ .github
└─ workflows
└─ Schedule.yml (定期実行用ファイル)
※client_secrets.jsonとcredentials.jsonはschedule.pyで一時的に作成されるファイル
name: GitHub_Actions(shedule) (この名前で定期実行)
on: (実行のタイミング設定)
workflow_dispatch: (手動実行)
schedule: (定期実行)
- cron: "*/10 0-12,21-23 * * *" (分 時 日 月 曜)
#6時〜21時、10分ごとに動作
env: #環境変数から文字列(パスワードなど)を取得
ACCESS_TOKEN: ${{secrets.ACCESS_TOKEN}} (ACCESS_TOKENという変数取得)
ACCESS_TOKEN_SECRET: ${{secrets.ACCESS_TOKEN_SECRET}}
CONSUMER_KEY: ${{secrets.CONSUMER_KEY}}
CONSUMER_SECRET: ${{secrets.CONSUMER_SECRET}}
GOOGLE_URL: ${{secrets.GOOGLE_URL}}
LINE_NOTIFY: ${{secrets.LINE_NOTIFY}}
LINE_NOTIFY_27: ${{secrets.LINE_NOTIFY_27}}
DISCORD_TOKEN: ${{secrets.DISCORD_TOKEN}}
DISCORD_ID: ${{secrets.DISCORD_ID}}
DISCORD_ID_DEBUG: ${{secrets.DISCORD_ID_DEBUG}}
JSON: ${{secrets.JSON}}
CLIENT: ${{secrets.CLIENT}}
jobs: (実行内容)
python: (Python実行)
runs-on: ubuntu-latest (ubuntuで実行)
timeout-minutes: 5 (5分経過したら実行キャンセル)
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: '3.6.15' (Pythonバージョン指定)
architecture: 'x64'
- run: |
python -m pip install --upgrade pip (モジュールのインポートに必要な機能のアップデート)
pip install get-chrome-driver --upgrade (ChromeDriverを取得)
pip install python-dotenv==0.19.2 (モジュール取得)
pip install selenium==3.141.0
pip install tweepy==4.6.0
pip install discord.py==1.7.3
pip install pillow==8.4.0
pip install pydrive==1.3.1
pip install opencv-python==4.5.5.64
python schedule.py (Schedule.pyを実行)
- name: Keepalive Workflow (定期実行自動停止の阻止)
uses: gautamkrishnar/keepalive-workflow@1.0.7