99 runs-on : ubuntu-latest
1010 steps :
1111 - name : Checkout pyglotaran-validation
12- uses : actions/checkout@v3
12+ uses : actions/checkout@v4
1313
1414 - name : Checkout compare results to comparison-results
15- uses : actions/checkout@v3
15+ uses : actions/checkout@v4
1616 with :
1717 repository : " glotaran/pyglotaran-examples"
1818 ref : comparison-results
@@ -49,12 +49,12 @@ jobs:
4949 example_name : ${{fromJson(needs.create-example-list.outputs.example-list)}}
5050 steps :
5151 - name : Checkout pyglotaran main branch
52- uses : actions/checkout@v3
52+ uses : actions/checkout@v4
5353 with :
5454 repository : " glotaran/pyglotaran"
5555
5656 - name : Set up Python 3.10
57- uses : actions/setup-python@v4
57+ uses : actions/setup-python@v5
5858 with :
5959 python-version : " 3.10"
6060 - name : Install pyglotaran
@@ -75,34 +75,79 @@ jobs:
7575 pip freeze
7676
7777 - name : Upload Example Plots Artifact
78- uses : actions/upload-artifact@v3
78+ if : always()
79+ uses : actions/upload-artifact@v4
7980 with :
80- name : example-plots
81- path : ${{ steps.example-run.outputs.plots -path }}
81+ name : example-notebooks-${{ matrix.example_name }}
82+ path : ${{ steps.example-run.outputs.notebook -path }}
8283
8384 - name : Upload Example Results
84- uses : actions/upload-artifact@v3
85+ uses : actions/upload-artifact@v4
8586 with :
86- name : example-results
87+ name : example-results-${{ matrix.example_name }}
8788 path : ~/pyglotaran_examples_results
8889
90+ collect-artifacts :
91+ if : always()
92+ name : " Collect artifacts and reupload as bundle"
93+ runs-on : ubuntu-latest
94+ needs : [run-examples]
95+ steps :
96+ - name : Download Notebooks Artifacts
97+ uses : actions/download-artifact@v4
98+ with :
99+ path : example-notebooks
100+ pattern : example-notebooks-*
101+ merge-multiple : true
102+
103+ - name : Upload Example Notebooks Artifact
104+ uses : actions/upload-artifact@v4
105+ with :
106+ name : example-notebooks
107+ path : example-notebooks
108+ overwrite : true
109+
110+ - name : Delete Intermediate Notebooks artifacts
111+ uses : GeekyEggo/delete-artifact@v5
112+ with :
113+ name : example-notebooks-*
114+
115+ - name : Download Result Artifacts
116+ uses : actions/download-artifact@v4
117+ with :
118+ path : example-results
119+ pattern : example-results-*
120+ merge-multiple : true
121+
122+ - name : Upload Example Result Artifact
123+ uses : actions/upload-artifact@v4
124+ with :
125+ name : example-results
126+ path : example-results
127+ overwrite : true
128+
129+ - name : Delete Intermediate Result artifacts
130+ uses : GeekyEggo/delete-artifact@v5
131+ with :
132+ name : example-results-*
133+
89134 compare-results :
90135 name : Compare Results
91136 runs-on : ubuntu-latest
92- needs : [run-examples ]
137+ needs : [collect-artifacts ]
93138 steps :
94139 - name : Checkout pyglotaran-validation
95- uses : actions/checkout@v3
140+ uses : actions/checkout@v4
96141
97142 - name : Checkout compare results
98- uses : actions/checkout@v3
143+ uses : actions/checkout@v4
99144 with :
100145 repository : " glotaran/pyglotaran-examples"
101146 ref : comparison-results
102147 path : comparison-results
103148
104149 - name : Download result artifact
105- uses : actions/download-artifact@v3
150+ uses : actions/download-artifact@v4
106151 with :
107152 name : example-results
108153 path : comparison-results-current
@@ -118,7 +163,7 @@ jobs:
118163 echo "::endgroup::"
119164
120165 - name : Set up Python 3.10
121- uses : actions/setup-python@v4
166+ uses : actions/setup-python@v5
122167 with :
123168 python-version : " 3.10"
124169
0 commit comments