@@ -55,14 +55,44 @@ name: Multinode
5555 type : string
5656 default : main
5757jobs :
58+ generate-vector :
59+ runs-on : ubuntu-latest
60+ outputs :
61+ vector : ${{ steps.set-vector.outputs.vector }}
62+ steps :
63+ - name : Generate build vector
64+ id : set-vector
65+ run : |
66+ echo ${{ inputs.os_distribution }}
67+ echo ${{ inputs.os_distribution == 'rocky' }}
68+ if [[ ${{ inputs.os_distribution == 'rocky' }} ]]; then
69+ echo "vector={\"distro\": \"rocky\", \"release\": \"9\", \"ssh_user\": \"cloud-user\"}" >> $GITHUB_OUTPUT
70+ elif [[ ${{ inputs.os_distribution == 'ubuntu-jammy' }} ]]; then
71+ echo "vector={\"distro\": \"ubuntu\", \"release\": \"jammy\", \"ssh_user\": \"ubuntu\"}" >> $GITHUB_OUTPUT
72+ else
73+ echo "vector={\"distro\": \"ubuntu\", \"release\": \"noble\", \"ssh_user\": \"ubuntu\"}" >> $GITHUB_OUTPUT
74+ fi
75+ debug :
76+ runs-on : ubuntu-latest
77+ needs :
78+ - generate-vector
79+ steps :
80+ - name : Print vector
81+ id : print-vector
82+ run : |
83+ echo ${{ fromJson(needs.generate-vector.outputs.vector).distro }}
84+ echo ${{ fromJson(needs.generate-vector.outputs.vector).release }}
85+ echo ${{ fromJson(needs.generate-vector.outputs.vector).ssh_user }}
5886 multinode :
5987 name : Multinode
88+ needs :
89+ - generate-vector
6090 uses :
stackhpc/stackhpc-openstack-gh-workflows/.github/workflows/[email protected] 6191 with :
6292 multinode_name : ${{ inputs.multinode_name }}
63- os_distribution : ${{ inputs.os_distribution }}
64- os_release : ${{ inputs.os_distribution == 'rocky' && '9' || 'jammy' }}
65- ssh_username : ${{ inputs.os_distribution == 'rocky' && 'cloud-user' || 'ubuntu' }}
93+ os_distribution : ${{ fromJson(needs.generate-vector.outputs.vector).distro }}
94+ os_release : ${{ fromJson(needs.generate-vector.outputs.vector).release }}
95+ ssh_username : ${{ fromJson(needs.generate-vector.outputs.vector).ssh_user }}
6696 neutron_plugin : ${{ inputs.neutron_plugin }}
6797 upgrade : ${{ inputs.upgrade }}
6898 break_on : ${{ inputs.break_on }}
0 commit comments