test-dispatch #47
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: Build Ska Package | |
on: | |
repository_dispatch: | |
types: | |
- test-dispatch | |
jobs: | |
arguments: | |
runs-on: ubuntu-latest | |
outputs: | |
package: ${{ steps.arguments.outputs.package }} | |
tag: ${{ steps.arguments.outputs.tag }} | |
arch: ${{ steps.arguments.outputs.arch }} | |
upload: ${{ steps.arguments.outputs.upload }} | |
python_version: ${{ steps.arguments.outputs.python_version }} | |
numpy_version: ${{ steps.arguments.outputs.numpy_version }} | |
channel_in: ${{ steps.arguments.outputs.channel_in }} | |
channel_out: ${{ steps.arguments.outputs.channel_out }} | |
steps: | |
- name: Arch | |
run: | | |
echo "Arch: '${{ github.event.client_payload.arch }}'" | |
echo "not arch: '${{ !github.event.client_payload.arch }}'" | |
echo "not Arch (2): ${{ (github.event.client_payload.arch != 'true') && (github.event.client_payload.arch != 'True')}}" | |
echo "not Arch (3): ${{ !github.event.client_payload.arch && (github.event.client_payload.arch != 'true') && (github.event.client_payload.arch != 'True')}}" | |
echo "not Arch (4): ${{ fromJSON(github.event.client_payload.arch) }}" | |
echo "not Arch (5): ${{ !github.event.client_payload.arch && fromJSON(github.event.client_payload.arch) }}" | |
- name: If arch | |
if: ${{ github.event.client_payload.arch }} | |
run: echo "arch" | |
- name: If not arch | |
if: ${{ !github.event.client_payload.arch }} | |
run: echo "not arch" | |
- name: Check arguments | |
id: arguments | |
run: | | |
MISSING="" | |
set_default() { | |
if [[ -z "$2" ]]; then | |
echo "Setting default value for $1" | |
echo "$1=$3" >> $GITHUB_OUTPUT | |
else | |
echo "$1=$2" >> $GITHUB_OUTPUT | |
fi | |
} | |
require () { | |
if [[ -z "$2" ]]; then | |
echo "Required value $1 not given" | |
MISSING="$MISSING $1" | |
else | |
echo "$1=$2" >> $GITHUB_OUTPUT | |
fi | |
} | |
require package ${{ github.event.client_payload.package }} | |
require tag ${{ github.event.client_payload.tag }} | |
set_default arch "${{ github.event.client_payload.arch }}" false | |
set_default upload "${{ github.event.client_payload.upload }}" false | |
set_default python_version "${{ github.event.client_payload.python_version }}" 3.11 | |
set_default numpy_version "${{ github.event.client_payload.numpy_version }}" 1.26.2 | |
set_default channel_in "${{ github.event.client_payload.channe_in }}" "flight" | |
set_default channel_out "${{ github.event.client_payload.channel_out }}" "test" | |
if [ "${{ github.event.client_payload.upload }}" == "" ]; then echo upload is not given; fi | |
if [ "${{ github.event.client_payload.upload }}" == "false" ]; then echo upload is false; fi | |
if [ "${{ github.event.client_payload.upload }}" == "False" ]; then echo upload is False; fi | |
if [[ ! -z $MISSING ]]; then echo "::warning:: Missing parameters: $MISSING"; exit 1; fi | |
- name: Add summary | |
run: | | |
echo "## Payload Arguments" >> $GITHUB_STEP_SUMMARY | |
echo "- Package: ${{ steps.arguments.outputs.package }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Tag: ${{ steps.arguments.outputs.tag }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Arch: ${{ steps.arguments.outputs.arch }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Upload: ${{ steps.arguments.outputs.upload }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Python version: ${{ steps.arguments.outputs.python_version }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Numpy version: ${{ steps.arguments.outputs.numpy_version }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Input channel: ${{ steps.arguments.outputs.channel_in }}" >> $GITHUB_STEP_SUMMARY | |
echo "- Output channel: ${{ steps.arguments.outputs.channel_out }}" >> $GITHUB_STEP_SUMMARY | |
build: | |
runs-on: ubuntu-latest | |
needs: arguments | |
steps: | |
- name: List arguments | |
run: | | |
echo "Package: ${{ needs.arguments.outputs.package }}" | |
echo "Tag: ${{ needs.arguments.outputs.tag }}" | |
echo "Arch: ${{ needs.arguments.outputs.arch }}" | |
echo "Upload: ${{ needs.arguments.outputs.upload }}" | |
echo "Python version: ${{ needs.arguments.outputs.python_version }}" | |
echo "Numpy version: ${{ needs.arguments.outputs.numpy_version }}" | |
echo "Input channel: ${{ needs.arguments.outputs.channel_in }}" | |
echo "Output channel: ${{ needs.arguments.outputs.channel_out }}" | |
- name: Upload | |
if: ${{ github.event.client_payload.upload }} | |
run: echo "Uploading" |