bot-bot #36136
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: bot-bot | |
on: | |
workflow_dispatch: null | |
# schedule: | |
# - cron: '15 * * * *' | |
concurrency: bot-v2 | |
jobs: | |
bot: | |
name: bot | |
runs-on: "ubuntu-latest" | |
defaults: | |
run: | |
shell: bash -leo pipefail {0} | |
steps: | |
- name: get latest release | |
id: latest_release | |
run: | | |
tag_name=$(gh api repos/regro/cf-scripts/releases/latest --jq '.tag_name') | |
echo "latest release: ${tag_name}" | |
echo "tag_name=${tag_name}" >> "$GITHUB_OUTPUT" | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | |
with: | |
ref: ${{ steps.latest_release.outputs.tag_name }} | |
path: cf-scripts | |
- uses: mamba-org/setup-micromamba@617811f69075e3fd3ae68ca64220ad065877f246 # v1 | |
with: | |
environment-file: cf-scripts/conda-lock.yml | |
environment-name: cf-scripts | |
condarc-file: cf-scripts/autotick-bot/condarc | |
- name: do local setup and stop me if needed | |
run: | | |
cd cf-scripts | |
python autotick-bot/stop_me_if_needed.py | |
- name: install bot code | |
if: success() && ! env.CI_SKIP | |
run: | | |
source cf-scripts/autotick-bot/install_bot_code.sh | |
env: | |
BOT_TOKEN: ${{ secrets.AUTOTICK_BOT_TOKEN }} | |
- name: run migrations | |
if: success() && ! env.CI_SKIP | |
timeout-minutes: 210 | |
run: | | |
export TIMEOUT=7200 | |
export RUN_URL="https://github.com/regro/cf-scripts/actions/runs/${RUN_ID}" | |
pushd cf-graph | |
conda-forge-tick auto-tick | |
env: | |
BOT_TOKEN: ${{ secrets.AUTOTICK_BOT_TOKEN }} | |
RUN_ID: ${{ github.run_id }} | |
MEMORY_LIMIT_GB: 7 | |
CF_TICK_GRAPH_DATA_BACKENDS: "${{ vars.CF_TICK_GRAPH_DATA_BACKENDS }}" | |
MONGODB_CONNECTION_STRING: ${{ secrets.MONGODB_CONNECTION_STRING }} | |
# emptied at the beginning and end of each run, used by Python tempdir | |
TMPDIR: ${{ runner.temp }} | |
- name: status of changes | |
if: github.ref == 'refs/heads/main' && always() && ! env.CI_SKIP | |
run: | | |
pushd cf-graph | |
git status | |
- name: deploy | |
if: github.ref == 'refs/heads/main' && always() && ! env.CI_SKIP | |
run: | | |
pushd cf-graph | |
export RUN_URL="https://github.com/regro/cf-scripts/actions/runs/${RUN_ID}" | |
conda-forge-tick deploy-to-github | |
env: | |
BOT_TOKEN: ${{ secrets.AUTOTICK_BOT_TOKEN }} | |
RUN_ID: ${{ github.run_id }} | |
- name: bump on fail | |
if: github.ref == 'refs/heads/main' && failure() && ! env.CI_SKIP | |
run: | | |
export ACTION_URL="https://github.com/regro/cf-scripts/actions/runs/${RUN_ID}" | |
python cf-scripts/autotick-bot/bump_bot_team.py | |
env: | |
BOT_TOKEN: ${{ secrets.AUTOTICK_BOT_TOKEN }} | |
RUN_ID: ${{ github.run_id }} | |
ACTION_NAME: ${{ github.workflow }} | |
- name: trigger next job | |
uses: benc-uk/workflow-dispatch@e2e5e9a103e331dad343f381a29e654aea3cf8fc # v1.2.4 | |
if: github.ref == 'refs/heads/main' && ! cancelled() && ! failure() && ! env.CI_SKIP | |
with: | |
workflow: bot-bot | |
ref: ${{ github.event.ref }} | |
token: ${{ secrets.AUTOTICK_BOT_TOKEN }} |