44 workflow_dispatch :
55 push :
66 schedule :
7- - cron : ' 0 2 * * *'
7+ - cron : " 0 2 * * *"
88
99concurrency :
1010 group : ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.run_number }}
@@ -17,76 +17,75 @@ jobs:
1717 outputs :
1818 matrix : ${{ steps.set-matrix.outputs.matrix }}
1919 steps :
20- - uses : actions/checkout@v4
21- - id : set-matrix
22- run : |
23- echo "matrix={\"node\":[$(python getter.py)]}" >> $GITHUB_OUTPUT
24- - name : " Set Up Julia"
25- uses : julia-actions/setup-julia@v2
26- with :
27- version : ' 1.10'
28- - uses : julia-actions/cache@v2
29- with :
30- cache-name : julia-cache;workflow=${{ github.workflow }};ref=${{ github.run_id }}
31- include-matrix : false
32- - name : " Install julia pre-requisites"
33- run : |
34- julia -e '
35- using Pkg
36- Pkg.add("Oscar")
37- Pkg.add("BenchmarkTools")
38- Pkg.add("GraphRecipes")
39- Pkg.add("Graphs")
40- Pkg.add("Interact")
41- Pkg.add("Plots")'
20+ - uses : actions/checkout@v4
21+ - id : set-matrix
22+ run : |
23+ echo "matrix={\"node\":[$(python getter.py)]}" >> $GITHUB_OUTPUT
24+ - name : " Set Up Julia"
25+ uses : julia-actions/setup-julia@v2
26+ with :
27+ version : " 1.10"
28+ - uses : julia-actions/cache@v2
29+ with :
30+ cache-name : julia-cache;workflow=${{ github.workflow }};ref=${{ github.run_id }}
31+ include-matrix : false
32+ - name : " Install julia pre-requisites"
33+ run : |
34+ julia -e '
35+ using Pkg
36+ Pkg.add("Oscar")
37+ Pkg.add("BenchmarkTools")
38+ Pkg.add("GraphRecipes")
39+ Pkg.add("Graphs")
40+ Pkg.add("Interact")
41+ Pkg.add("Plots")'
4242 job2 :
4343 needs :
44- - job1
44+ - job1
4545 name : " Run tests"
4646 runs-on : ubuntu-latest
4747 strategy :
4848 fail-fast : false
4949 matrix : ${{fromJSON(needs.job1.outputs.matrix)}}
5050 timeout-minutes : 60
5151 steps :
52- - uses : julia-actions/cache@v2
53- with :
54- cache-name : julia-cache;workflow=${{ github.workflow }};ref=${{ github.run_id }}
55- include-matrix : false
56- - uses : actions/checkout@v4
57- - name : " Install Jupyter"
58- run : pip3 install notebook jupytext
59- - name : " Install julia pre-requisites"
60- run : |
61- julia -e '
62- using Pkg
63- Pkg.add("Oscar")
64- Pkg.add("BenchmarkTools")
65- Pkg.add("GraphRecipes")
66- Pkg.add("Graphs")
67- Pkg.add("Interact")
68- Pkg.add("IJulia")
69- Pkg.add("Plots")'
70- - run : mkdir -pv notebooks
71- - name : Use default julia environment
72- run : |
73- cat ~/.local/share/jupyter/kernels/julia-1.10/kernel.json | sed 's/^.*project=.*$//' > ~/.local/share/jupyter/kernels/julia-1.10/kernel.json.new
74- mv -v ~/.local/share/jupyter/kernels/julia-1.10/kernel.json.new ~/.local/share/jupyter/kernels/julia-1.10/kernel.json
75- - run : python3 tester.py ${{ matrix.node }}
76- - name : Upload new notebook
77- uses : actions/upload-artifact@v4
78- with :
79- name : ${{ matrix.node }}
80- path : notebooks/*.ipynb
81- retention-days : 7
82- - name : Notify Slack Action
83- if : always()
84- uses : ravsamhq/notify-slack-action@2.5.0
85- with :
52+ - uses : julia-actions/cache@v2
53+ with :
54+ cache-name : julia-cache;workflow=${{ github.workflow }};ref=${{ github.run_id }}
55+ include-matrix : false
56+ - uses : actions/checkout@v4
57+ - name : " Install Jupyter"
58+ run : pip3 install --break-system-packages notebook jupytext
59+ - name : " Install julia pre-requisites"
60+ run : |
61+ julia -e '
62+ using Pkg
63+ Pkg.add("Oscar")
64+ Pkg.add("BenchmarkTools")
65+ Pkg.add("GraphRecipes")
66+ Pkg.add("Graphs")
67+ Pkg.add("Interact")
68+ Pkg.add("IJulia")
69+ Pkg.add("Plots")'
70+ - run : mkdir -pv notebooks
71+ - name : Use default julia environment
72+ run : |
73+ cat ~/.local/share/jupyter/kernels/julia-1.10/kernel.json | sed 's/^.*project=.*$//' > ~/.local/share/jupyter/kernels/julia-1.10/kernel.json.new
74+ mv -v ~/.local/share/jupyter/kernels/julia-1.10/kernel.json.new ~/.local/share/jupyter/kernels/julia-1.10/kernel.json
75+ - run : python3 tester.py ${{ matrix.node }}
76+ - name : Upload new notebook
77+ uses : actions/upload-artifact@v4
78+ with :
79+ name : ${{ matrix.node }}
80+ path : notebooks/*.ipynb
81+ retention-days : 7
82+ - name : Notify Slack Action
83+ if : always()
84+ uses : ravsamhq/notify-slack-action@2.5.0
85+ with :
8686 token : ${{ secrets.GITHUB_TOKEN }}
8787 status : ${{ job.status }}
8888 message_format : " {emoji} *${{matrix.node}}* {status_message} in <{run_url}>"
89- notify_when : ' failure,cancelled,skipped'
90- env :
91- SLACK_WEBHOOK_URL : ${{ secrets.ACTION_MONITORING_SLACK }}
92-
89+ notify_when : " failure,cancelled,skipped"
90+ env :
91+ SLACK_WEBHOOK_URL : ${{ secrets.ACTION_MONITORING_SLACK }}
0 commit comments