CronJob #4100
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CronJob | |
on: | |
schedule: | |
- cron: "0 2,3,4,5,6,7,8,9,10,14,18,22 * * *" # on the hour for hours 0,2,3,4,5,6,7,8,9,10,14,18, and 22 | |
push: | |
env: | |
OPTIMISM_MAINNET_RPC_URL: ${{secrets.OPTIMISM_MAINNET_RPC_URL}} | |
NODE_OPTIONS: "--max_old_space_size=32768" | |
permissions: write-all | |
jobs: | |
runCLI: | |
name: PrizePool Prizes Computation | |
runs-on: ${{ matrix.os }} | |
strategy: | |
max-parallel: 1 | |
matrix: | |
node: ["18.16.0"] | |
os: [ubuntu-latest] | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v3 | |
- name: Use Node ${{ matrix.node }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node }} | |
- name: Install Dependencies | |
id: installDependencies | |
uses: bahmutov/npm-install@v1 | |
with: | |
install-command: yarn | |
# -------------------------------------------------------- # | |
# Optimism Mainnet | |
# -------------------------------------------------------- # | |
# 1. Install | |
- name: Install PoolTogether V5 CLI | |
run: | | |
npm install -g @generationsoftware/[email protected] | |
echo "$(npm -g bin)" >> $GITHUB_PATH | |
# 2. Compute | |
- name: Optimism Mainnet Draw Prizes | |
id: drawPrizesOptimismMainnet | |
uses: chuckbergeron/executable-wrapper@f94b435740d6b958c2d7eb76c77657e761819cfe | |
continue-on-error: true | |
with: | |
run_command: ptv5 compute drawPrizes -o ./prizes -p 0xe32e5E1c5f0c80bD26Def2d0EA5008C107000d6A -c 10 | |
# 3. Commit | |
- name: Commit Optimism Mainnet | |
if: steps.drawPrizesOptimismMainnet.outputs.runStatus == 'true' | |
continue-on-error: true | |
run: | | |
git config pull.rebase false | |
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
git pull | |
git add ./prizes/10 | |
git commit -m "Add draw for Optimism Mainnet draw #${{steps.drawPrizesOptimismMainnet.outputs.drawId}}" | |
# 4. Push | |
- name: Push changes (if required) | |
uses: ad-m/github-push-action@master | |
if: steps.drawPrizesOptimismMainnet.outputs.runStatus == 'true' | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
branch: ${{ github.ref }} | |
force: true | |
# -------------------------------------------------------- # | |
# Comment Error | |
# -------------------------------------------------------- # | |
- name: Comment Error | |
id: commentError | |
if: steps.drawPrizesOptimismMainnet.outputs.exitcode == 1 | |
uses: actions/github-script@v5 | |
continue-on-error: true | |
with: | |
script: | | |
await github.rest.issues.create({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
title: `Draw Prizes Failed: Exit Code 1` | |
}) |