mirror of
https://github.com/beetbox/beets.git
synced 2025-12-06 08:39:17 +01:00
48 lines
1.4 KiB
YAML
48 lines
1.4 KiB
YAML
name: integration tests
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "0 0 * * SUN" # run every Sunday at midnight
|
|
|
|
env:
|
|
PYTHON_VERSION: "3.10"
|
|
|
|
jobs:
|
|
test_integration:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- name: Install Python tools
|
|
uses: BrandonLWhite/pipx-install-action@v1.0.3
|
|
- uses: actions/setup-python@v6
|
|
with:
|
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
cache: poetry
|
|
|
|
- name: Install dependencies
|
|
run: poetry install
|
|
|
|
- name: Test
|
|
env:
|
|
INTEGRATION_TEST: 1
|
|
run: poe test
|
|
|
|
- name: Check external links in docs
|
|
run: poe check-docs-links
|
|
|
|
- name: Notify on failure
|
|
if: ${{ failure() }}
|
|
env:
|
|
ZULIP_BOT_CREDENTIALS: ${{ secrets.ZULIP_BOT_CREDENTIALS }}
|
|
run: |
|
|
if [ -z "${ZULIP_BOT_CREDENTIALS}" ]; then
|
|
echo "Skipping notify, ZULIP_BOT_CREDENTIALS is unset"
|
|
exit 0
|
|
fi
|
|
|
|
curl -X POST https://beets.zulipchat.com/api/v1/messages \
|
|
-u "${ZULIP_BOT_CREDENTIALS}" \
|
|
-d "type=stream" \
|
|
-d "to=github" \
|
|
-d "subject=${GITHUB_WORKFLOW} - $(date -u +%Y-%m-%d)" \
|
|
-d "content=[${GITHUB_WORKFLOW}#${GITHUB_RUN_NUMBER}](${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}) failed."
|