Chaindata Fetch External #1643
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: Chaindata Fetch External | |
on: | |
# runs at `0 minutes past the hour, every 6 hours`, starting at midnight UTC | |
schedule: | |
- cron: '0 0/6 * * *' | |
# can be run manually from the `Actions` tab | |
workflow_dispatch: | |
# Sets permissions of the GITHUB_TOKEN to allow pushing commits | |
permissions: | |
contents: write | |
id-token: write | |
concurrency: | |
# only run 1 job per branch/pr/etc at a time | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
jobs: | |
publish: | |
name: 'Fetch externals and push changes to repo' | |
timeout-minutes: 15 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Enable corepack | |
run: corepack enable | |
- name: Setup pnpm | |
uses: pnpm/action-setup@v4 | |
- name: Setup Node.js environment | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: pnpm | |
- name: Install dependencies | |
run: pnpm install --frozen-lockfile | |
- name: Fetch external | |
env: | |
COINGECKO_API_URL: ${{ vars.COINGECKO_API_URL}} | |
COINGECKO_API_KEY_NAME: ${{ vars.COINGECKO_API_KEY_NAME}} | |
COINGECKO_API_KEY_VALUE: ${{ secrets.COINGECKO_API_KEY_VALUE }} | |
run: pnpm fetch-external | |
- name: Commit changes | |
env: | |
CHAINDATA_CI_SUPERUSER_ACCESS_TOKEN: ${{ secrets.CHAINDATA_CI_SUPERUSER_ACCESS_TOKEN }} | |
run: | | |
git config --local --unset-all 'http.https://github.com/.extraheader' | |
git remote set-url origin https://x-access-token:${CHAINDATA_CI_SUPERUSER_ACCESS_TOKEN}@github.com/TalismanSociety/chaindata | |
git config user.name "chaindata-ci-superuser[bot]" | |
git config user.email "146698419+chaindata-ci-superuser[bot]@users.noreply.github.com" | |
if [[ "$(git status --porcelain=v2)" != "" ]]; then | |
git add . | |
git commit -m 'chore: updated externals' | |
git push | |
fi |