github 작업으로 데이터베이스 정리

6283 단어 actionshackathon21

내 워크플로우



이 워크플로는 30분보다 오래된 세션 항목을 삭제하고 워크플로는 10분마다 실행됩니다.
github Repo

제출 카테고리:



엉뚱한 와일드카드

Yaml 파일 또는 코드 링크



워크플로:

name: Clean DB

on:
  schedule:
    # runs every 10 min
    - cron: '*/10 * * * *'

jobs:
  build:
    runs-on: ubuntu-latest
    steps:

      - name: checkout repo content
        uses: actions/checkout@v2 # checkout the repository content to github runner

      - name: setup python
        uses: actions/setup-python@v2
        with:
          python-version: '3.7.7' # install the python version needed

      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -r requirements.txt

      - name: execute py script # run main.py to get the latest data
        env:
          DbUser: ${{ secrets.DBUSER }}
          DbPass: ${{ secrets.DBPASS }}
          DbHost: ${{ secrets.DBHOST }}
          DB: ${{ secrets.DB }}
        run: python main.py


메인.py :

from connection import conn,cur
import mysql.connector

try:
    query = "DELETE FROM sessions WHERE TIMESTAMPDIFF(MINUTE,time,CURRENT_TIMESTAMP()) > 30"

    cur.execute(query)
    conn.commit()
    print("cleaned")
except mysql.connector.Error as    e:
    print("db error")
    print(e)


연결.py :

import os
import mysql.connector

conn = mysql.connector.connect(user=os.environ["DbUser"], 
                                  password= os.environ["DbPass"],
                                  host=os.environ["DbHost"],
                                  database=os.environ["DB"])

cur = conn.cursor()


추가 리소스/정보



mysql 데이터베이스에서 이 작업을 사용하고 있습니다action.

좋은 웹페이지 즐겨찾기