Skip to content

Commit from GitHub Actions (Update TagMark Data) #671

Commit from GitHub Actions (Update TagMark Data)

Commit from GitHub Actions (Update TagMark Data) #671

name: Update TagMark Data
on:
schedule:
- cron: '0 17 * * *'
push:
paths:
- 'data/tagmarks.jsonl'
workflow_dispatch:
env:
TAGMARK_PY_DIR: tagmark-py
TAGMARK_UI_DATA: ${{ github.workspace }}/data/tagmarks.jsonl
TAGMARK_UI_DATA_NEW: ${{ github.workspace }}/data/tagmarks.jsonl.new
jobs:
update:
runs-on: ubuntu-latest
name: Update
steps:
- name: Checkout Repo my-tagmarks
uses: actions/checkout@v3
with:
token: ${{ secrets.GH_PAT_TAGMARK }}
- name: Checkout Repo tagmark-py
uses: actions/checkout@v3
with:
repository: pwnfan/tagmark-py
ref: main
path: ${{ env.TAGMARK_PY_DIR }}
- name: Setup Python
id: setup-python
uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Load pip Cache
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
restore-keys: ${{ runner.os }}-pip
- name: Install Poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
- name: Load cached venv
id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}
- name: Generate New TagMark UI Data
working-directory: ${{ env.TAGMARK_PY_DIR }}
run: |
poetry install --no-interaction
source .venv/bin/activate
poetry run tagmark_cli convert \
-i ${{ env.TAGMARK_UI_DATA }} \
-f tagmark_jsonlines \
-t ${{ secrets.GH_PAT_TAGMARK }} \
-o ${{ env.TAGMARK_UI_DATA_NEW }} \
-u ${{ vars.TAGMARK_DATA_EXPIRED_HOURS }}
rm -rf ${{ env.TAGMARK_UI_DATA }}
mv ${{ env.TAGMARK_UI_DATA_NEW }} ${{ env.TAGMARK_UI_DATA }}
- name: Commit and Push New Code
uses: EndBug/add-and-commit@v9
with:
add: ${{ env.TAGMARK_UI_DATA }}
default_author: github_actions
pull: '--autostash'