@@ -369,13 +369,23 @@ jobs:
369369 requirement_test : ${{ steps.testset.outputs.requirement_test }}
370370 scripted_inputs : ${{ steps.testset.outputs.scripted_inputs }}
371371 escu : ${{ steps.testset.outputs.escu }}
372+ ucc_modinput_functional : ${{ steps.modinput-version.outputs.ucc_modinput_tests }}
372373 steps :
373374 - uses : actions/checkout@v3
374375 - id : testset
375- name : testsets
376+ name : Check available test types
376377 run : |
377378 find tests -type d -maxdepth 1 -mindepth 1 | sed 's|^tests/||g' | while read -r TESTSET; do echo "$TESTSET=true" >> "$GITHUB_OUTPUT"; echo "$TESTSET::true"; done
378-
379+ - id : modinput-version
380+ name : Check modinput tests version
381+ run : |
382+ CENTAURS_MODINPUT_TESTS_CHECK_DIR="tests/modinput_functional/centaurs"
383+ ucc_modinput_tests="true"
384+ if [ -d "$CENTAURS_MODINPUT_TESTS_CHECK_DIR" ]; then
385+ ucc_modinput_tests="false"
386+ fi
387+ echo "ucc_modinput_tests=$ucc_modinput_tests" >> "$GITHUB_OUTPUT"
388+
379389 run-unit-tests :
380390 name : test-unit-python3-${{ matrix.python-version }}
381391 if : ${{ needs.test-inventory.outputs.unit == 'true' }}
@@ -582,6 +592,11 @@ jobs:
582592 with :
583593 source : ${{ steps.uccgen.outputs.OUTPUT }}
584594 if : always()
595+ - name : artifact-openapi
596+ uses : actions/upload-artifact@v3
597+ with :
598+ name : artifact-openapi
599+ path : ${{ github.workspace }}/${{ steps.uccgen.outputs.OUTPUT }}/static/openapi.json
585600 - name : artifact-splunk-base
586601 uses : actions/upload-artifact@v3
587602 with :
@@ -870,8 +885,6 @@ jobs:
870885 always() &&
871886 needs.build.result == 'success'
872887 runs-on : ubuntu-latest
873- container :
874- image : ghcr.io/splunk/workflow-engine-base:2.0.3
875888 outputs :
876889 argo-server : ${{ steps.test-setup.outputs.argo-server }}
877890 argo-http1 : ${{ steps.test-setup.outputs.argo-http1 }}
@@ -888,14 +901,18 @@ jobs:
888901 addon-upload-path : ${{ steps.test-setup.outputs.addon-upload-path }}
889902 directory-path : ${{ steps.test-setup.outputs.directory-path }}
890903 s3-bucket : ${{ steps.test-setup.outputs.s3-bucket }}
904+ env :
905+ BUILD_NAME : ${{ needs.build.outputs.buildname }}
891906 steps :
892907 - uses : actions/checkout@v3
893908 with :
894909 submodules : recursive
910+ token : ${{ secrets.GH_TOKEN_ADMIN }}
895911 - name : setup for test
896912 id : test-setup
897913 shell : bash
898914 run : |
915+ sudo apt-get install -y crudini
899916 ADDON_NAME=$(crudini --get package/default/app.conf id name | tr '[:lower:]' '[:upper:]')
900917 if [[ -n $(echo "${ADDON_NAME}" | awk -F 'SPLUNK_TA_' '{print $2}') ]];
901918 then
@@ -924,6 +941,38 @@ jobs:
924941 echo "spl-host-suffix=wfe.splgdi.com"
925942 echo "k8s-manifests-branch=main"
926943 } >> "$GITHUB_OUTPUT"
944+ - uses : actions/download-artifact@v3
945+ if : ${{ needs.test-inventory.outputs.ucc_modinput_functional == 'true' }}
946+ id : download-openapi
947+ with :
948+ name : artifact-openapi
949+ path : ${{ github.workspace }}
950+ - name : Setup python
951+ if : steps.download-openapi.conclusion != 'skipped'
952+ uses : actions/setup-python@v4
953+ with :
954+ python-version : 3.7
955+ - name : modinput-test-prerequisites
956+ if : steps.download-openapi.conclusion != 'skipped'
957+ shell : bash
958+ env :
959+ PYTHON_KEYRING_BACKEND : keyring.backends.null.Keyring
960+ run : |
961+ sudo pip3 install poetry==1.2.2
962+ export POETRY_HTTP_BASIC_SPLUNK_ADD_ON_UCC_MODINPUT_TEST_USERNAME=${{ secrets.SA_GH_USER_NAME }}
963+ export POETRY_HTTP_BASIC_SPLUNK_ADD_ON_UCC_MODINPUT_TEST_PASSWORD=${{ secrets.GH_TOKEN_ADMIN }}
964+ poetry install --only modinput
965+ poetry run ucc-test-modinput -o ${{ steps.download-openapi.outputs.download-path }}/openapi.json -t ${{ steps.download-openapi.outputs.download-path }}/tmp/
966+ - name : upload-swagger-artifacts-to-s3
967+ if : steps.download-openapi.conclusion != 'skipped'
968+ id : swaggerupload
969+ env :
970+ AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
971+ AWS_DEFAULT_REGION : ${{ secrets.AWS_DEFAULT_REGION }}
972+ AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
973+ run : |
974+ swagger_name=swagger_$(basename "$BUILD_NAME" .spl)
975+ aws s3 sync "${{ github.workspace }}/tmp/restapi_client/" "s3://ta-production-artifacts/ta-apps/$swagger_name/" --exclude "*" --include "README.md" --include "*swagger_client*" --only-show-errors
927976
928977 run-knowledge-tests :
929978 if : |
0 commit comments