Ansible Deployment Test on EUMETSAT via EWCCLI #114
This file contains hidden or 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: Ansible Deployment Test on EUMETSAT via EWCCLI | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| itemName: | |
| description: Name of the Community Hub item to test | |
| required: true | |
| type: string | |
| catalogRef: | |
| description: Branch, tag, or commit SHA of the target Community Hub catalog version. | |
| required: false | |
| default: "main" | |
| type: string | |
| inputSpecJson: | |
| description: JSON object with input values for the selected item. If set, overrides defaults defined in the catalog. | |
| required: false | |
| type: string | |
| permissions: | |
| contents: read | |
| actions: write | |
| env: | |
| EWC_CLI_LOGIN_REGION: '${{ secrets.EUMETSAT_EWC_CLI_LOGIN_REGION }}' | |
| EWC_CLI_LOGIN_TENANT_NAME: '${{ secrets.EUMETSAT_EWC_CLI_LOGIN_TENANT_NAME }}' | |
| OS_APPLICATION_CREDENTIAL_ID: '${{ secrets.EUMETSAT_OS_APPLICATION_CREDENTIAL_ID }}' | |
| OS_APPLICATION_CREDENTIAL_SECRET: '${{ secrets.EUMETSAT_OS_APPLICATION_CREDENTIAL_SECRET }}' | |
| OS_AUTH_URL: '${{ secrets.EUMETSAT_OS_AUTH_URL }}' | |
| OS_REGION_NAME: '${{ secrets.EUMETSAT_OS_REGION_NAME }}' | |
| ANSIBLE_SSH_PRIVATE_KEY: '${{ secrets.EUMETSAT_ANSIBLE_SSH_PRIVATE_KEY }}' | |
| ANSIBLE_SSH_PUBLIC_KEY: '${{ secrets.EUMETSAT_ANSIBLE_SSH_PUBLIC_KEY }}' | |
| ITEM_NAME: ${{ inputs.itemName }} | |
| CATALOG_REF: ${{ inputs.catalogRef }} | |
| INPUT_SPEC_JSON: '${{ inputs.inputSpecJson }}' | |
| jobs: | |
| deploy-test: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install EWCCLI and its dependencies | |
| run: pip install . | |
| - name: Test deployment | |
| run: .github/scripts/test-deployment-ansible.sh | |
| - name: Upload test deployment result | |
| uses: actions/upload-artifact@v4 | |
| if: ${{ always() }} | |
| with: | |
| name: artifacts_${{ github.run_id }} | |
| path: ./artifacts |