forked from nilearn/nilearn
-
Notifications
You must be signed in to change notification settings - Fork 0
59 lines (56 loc) · 2.33 KB
/
Copy pathcheck_gha_workflow.yml
File metadata and controls
59 lines (56 loc) · 2.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
---
# Workflow to check the time taken to run tests and build the documentation.
#
# Pings Github API to collect information about:
#
# - how long each run of the test suite lasted,
# - how long the build of the doc lasted.
#
# Plots the results and saves it as an artifact to download and manually inspect
# to see if there is a trend in tests or doc build taking longer.
#
# .. seealso::
#
# `maint_tools/check_gha_workflow.py <https://github.com/nilearn/nilearn/blob/main/maint_tools/check_gha_workflow.py>`_
#
###
name: Benchmark test suite
on:
schedule:
# Uses the cron schedule for github actions
# https://docs.github.com/en/actions/reference/workflows-and-actions/events-that-trigger-workflows#schedule
# ┌───────────── minute (0 - 59)
# │ ┌───────────── hour (0 - 23)
# │ │ ┌───────────── day of the month (1 - 31)
# │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
# │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
# │ │ │ │ │
# │ │ │ │ │
# │ │ │ │ │
# * * * * *
# Runs at 00:00, on day 1 of every 3rd month
- cron: 0 0 1 */3 *
# This enables manual triggering from GitHub UI
# https://docs.github.com/en/actions/reference/workflows-and-actions/events-that-trigger-workflows#workflow_dispatch
workflow_dispatch:
jobs:
check_gha_workflow:
if: github.repository == 'nilearn/nilearn'
runs-on: ubuntu-latest
permissions: {}
steps:
- name: Checkout nilearn
uses: actions/checkout@v6
- name: Setup python
uses: actions/setup-python@v6
with:
python-version: 3.14
- name: Install dependencies
run: python -m pip install --requirement maint_tools/requirements.txt
- name: Collect and plot test suite run time
run: python maint_tools/check_gha_workflow.py ${{ secrets.GITHUB_TOKEN }}
- name: Upload output
uses: actions/upload-artifact@v7
with:
name: test_runs_timing_outputs
path: maint_tools/*_runs_timing.*