From 92c11cdc87af1f1cd4eccb48a04eac027c76e69b Mon Sep 17 00:00:00 2001 From: chadcarlson Date: Mon, 30 Oct 2023 09:38:33 -0400 Subject: [PATCH] Fix var typo. complete run. --- .github/workflows/project.yaml | 123 ++++++++++++--------------------- 1 file changed, 45 insertions(+), 78 deletions(-) diff --git a/.github/workflows/project.yaml b/.github/workflows/project.yaml index bc348880..653a967c 100644 --- a/.github/workflows/project.yaml +++ b/.github/workflows/project.yaml @@ -336,7 +336,7 @@ jobs: - name: "[add_service_resources] 6. Test: endpoint data (session_storage)" working-directory: ${{ env.PROJECT_LOCALDIR }} run: | - EXPECTED="file" + EXPECTED="redis" STAG_URL_FRONTEND=$(upsun url --primary --pipe) STAG_URL_BACKEND=$STAG_URL_FRONTEND$BACKEND_PATH RESULT=$(curl -s $STAG_URL_BACKEND | jq -r '.session_storage') @@ -371,84 +371,51 @@ jobs: ################################################################################################ # J. Define production service resources. - - name: "[prod_service_resources] 1. Set Redis' resources." + - name: "[prod_service_resources] 1. Set Redis' resources on production." working-directory: ${{ env.PROJECT_LOCALDIR }} run: | upsun resources:set --size redis_persistent:0.1 --disk redis_persistent:512 -e $DEFAULT_BRANCH + - name: "[prod_service_resources] 2. Test: The update environment resources activity should complete." + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + ./utils/tests/activity_outcome.sh $DEFAULT_BRANCH environment.resources.update state complete "init_resources" + - name: "[prod_service_resources] 3. Test: The update environment resources activity should succeed." + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + ./utils/tests/activity_outcome.sh $DEFAULT_BRANCH environment.resources.update result success "init_resources" + - name: "[prod_service_resources] 4. Test: Updating environment resources should result in a 200 on the frontend production app." + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + EXPECTED_STATUS="200" + PROD_URL_FRONTEND=$(upsun url --primary --pipe) + ./utils/tests/url_status.sh $PROD_URL_FRONTEND $EXPECTED_STATUS "production frontend deployment (init_resources)" + - name: "[prod_service_resources] 5. Test: Updating environment resources should result in a 200 on the backend production app." + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + EXPECTED_STATUS="200" + PROD_URL_FRONTEND=$(upsun url --primary --pipe) + PROD_URL_BACKEND=$PROD_URL_FRONTEND$BACKEND_PATH + ./utils/tests/url_status.sh $PROD_URL_BACKEND $EXPECTED_STATUS "production backend deployment (init_resources)" + - name: "[prod_service_resources] 6. Test: endpoint data (session_storage)" + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + EXPECTED="redis" + PROD_URL_FRONTEND=$(upsun url --primary --pipe) + PROD_URL_BACKEND=$PROD_URL_FRONTEND$BACKEND_PATH + RESULT=$(curl -s $PROD_URL_BACKEND | jq -r '.session_storage') + ./$TEST_PATH/compare_strings.sh "$RESULT" "$EXPECTED" "PROD Backend data session_storage" + - name: "[prod_service_resources] 7. Test: endpoint data (environment_type)" + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + EXPECTED="production" + PROD_URL_FRONTEND=$(upsun url --primary --pipe) + PROD_URL_BACKEND=$PROD_URL_FRONTEND$BACKEND_PATH + RESULT=$(curl -s $PROD_URL_BACKEND | jq -r '.type') + ./$TEST_PATH/compare_strings.sh "$RESULT" "$EXPECTED" "PROD Backend data environment_type" - - # - name: "[add_service] 3. Set Redis' resources." - # run: | - # cd $TEST_PROJECT_LOCALDIR - - # upsun resources:set --size redis_persistent:0.1 --disk redis_persistent:512 -e $TEST_PROJECT_DEFAULT_BRANCH - # - name: "[add_service] 4. Test: verify activity completed." - # run: | - # cd $TEST_PROJECT_LOCALDIR - - # ACTIVITY_ID=$(upsun activity:list -e $TEST_PROJECT_DEFAULT_BRANCH --type environment.resources.update --limit 1 --no-header --columns=id --format plain) - # ACTIVITY_STATE=$(upsun activity:get $TEST_PROJECT_DEFAULT_BRANCH -P state) - # echo "::notice::Attempting to retrieve production resources.set activity state. Current state is: ${ACTIVITY_STATE}" - # if [ "${ACTIVITY_STATE}" = "complete" ]; then - # echo "::notice::Activity is complete." - # fi - # - name: "[add_service] 5. Test: verify activity has succeeded." - # run: | - # cd $TEST_PROJECT_LOCALDIR - - # ACTIVITY_ID=$(upsun activity:list -e $TEST_PROJECT_DEFAULT_BRANCH --type environment.resources.update --limit 1 --no-header --columns=id --format plain) - # ACTIVITY_RESULT=$(upsun activity:get $ACTIVITY_ID -P result) - # if [ "$ACTIVITY_RESULT" != "success" ]; then - # echo "::notice::Resources set on production has failed. Exiting." - # exit 1 - # else - # echo "::notice::Resources set on production successful." - # fi - # - name: "[merge] 6. Test: production URLS & endpoint data." - # run: | - # cd $TEST_PROJECT_LOCALDIR - # TEST_PROJECT_PROD_URL_FRONTEND=$(upsun url --primary --pipe) - # STATUS=$(curl --silent --head $TEST_PROJECT_PROD_URL_FRONTEND | awk '/^HTTP/{print $2}') - # if [ "$STATUS" != "200" ]; then - # echo "::notice::Frontend deployment did not succeed. Exiting." - # exit 1 - # else - # echo "::notice::Frontend deployment successful." - # fi - - # TEST_PROJECT_PROD_URL_BACKEND=$TEST_PROJECT_PROD_URL_FRONTEND$TEST_PROJECT_BACKEND_PATH - # STATUS=$(curl --silent --head $TEST_PROJECT_PROD_URL_BACKEND | awk '/^HTTP/{print $2}') - # if [ "$STATUS" != "200" ]; then - # echo "::notice::Backend deployment did not succeed. Exiting." - # exit 1 - # else - # echo "::notice::Backend deployment successful." - # fi - - # EXPECTED_STATUS="redis" - # STATUS_DATA=$(curl -s $TEST_PROJECT_PROD_URL_BACKEND | jq -r '.session_storage') - # if [ "$STATUS_DATA" != "$EXPECTED_STATUS" ]; then - # echo "::notice::Backend data session_storage is not the expected value ($EXPECTED_STATUS/$STATUS_DATA). Exiting." - # exit 1 - # else - # echo "::notice::Backend data session_storage as expected." - # fi - - # EXPECTED_STATUS="production" - # STATUS_DATA=$(curl -s $TEST_PROJECT_PROD_URL_BACKEND | jq -r '.type') - # if [ "$STATUS_DATA" != "$EXPECTED_STATUS" ]; then - # echo "::notice::Backend data environment type is not the expected value ($EXPECTED_STATUS/$STATUS_DATA). Exiting." - # exit 1 - # else - # echo "::notice::Backend data environment type as expected." - # fi - - # ################################################################################################ - # # # G. Cleanup. - # # - name: "[CLEANUP] 1. Delete project." - # # run: | - # # sleep 30 - # # echo "::notice::Cleaning up after successful run." - # # TEST_PROJECT_ID=$(upsun project:list -o "$TEST_ORG_NAME" --title "$TEST_PROJECT_TITLE" --pipe) - # # echo "::notice::Deleting project: ${TEST_PROJECT_ID}" - # # upsun project:delete -p $TEST_PROJECT_ID -y + ################################################################################################ + # K. Clean up test project. + - name: "[cleanup] 1. Delete project." + working-directory: ${{ env.PROJECT_LOCALDIR }} + run: | + upsun project:delete -y