Check and build given lits of DL4MicEverywhere folders #49
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: Check and build given lits of DL4MicEverywhere folders | |
on: | |
workflow_dispatch: | |
inputs: | |
config_file_list: # the variable you can use in place of a matrix | |
description: 'List of folders and subfolder names from DL4MicEverywhere, they need to be separated by spaces. eg. "ZeroCostDL4Mic_notebooks/CARE_2D_DL4Mic External_notebooks/FRUNet-Exosomes Bespoke_notebooks/bioimageio-tensorflow"' | |
type: string | |
jobs: | |
check_notebooks: | |
name: Get the configurations from notebooks that need to be updated | |
outputs: | |
matrix: ${{ steps.create_json.outputs.matrix }} | |
runs-on: [self-hosted, dl4miceverywhere-builder] | |
steps: | |
- name: Get the input list of all the notebooks | |
id: list_notebooks | |
run: | | |
output="${{ inputs.config_file_list }}" | |
echo "$output" | |
echo "value=${output}" >> $GITHUB_OUTPUT | |
- if: ${{ steps.list_notebooks.outputs.value != '' }} | |
name: List and extract all notebook with new version | |
id: create_json | |
run: | | |
echo "Start" | |
files_json="{\"include\":[{\"notebook\":\"" | |
echo "$files_json" | |
first=true | |
for file in ${{ steps.list_notebooks.outputs.value }}; do | |
echo "$file was changed" | |
if [ "$first" = true ]; then | |
files_json+=$file | |
first=false | |
else | |
files_json+="\"},{\"notebook\":\""$file | |
fi | |
echo "$files_json" | |
done | |
files_json+="\"}]}" | |
echo "$files_json" | |
echo "matrix=$files_json" >> $GITHUB_OUTPUT | |
echo "END" | |
test_deploy_solutions: | |
if: ${{ needs.check_notebooks.outputs.matrix != '' }} | |
name: Call the testing and deploying the solutions | |
needs: check_notebooks | |
uses: ./.github/workflows/aux_test_deploy_solution_list.yml # calls the one above ^ | |
with: | |
matrix_json: ${{ needs.check_notebooks.outputs.matrix }} | |
secrets: inherit |