1111 - " @bigcommerce/catalyst-b2b-makeswift@latest"
1212jobs :
1313 deploy-tag :
14- name : Deploy `{{ github.ref_name }}` tag
14+ name : Deploy `$ {{ github.ref_name }}` tag
1515 runs-on : ubuntu-latest
1616 concurrency :
1717 group : ${{ github.workflow }}-${{ github.ref_name }}
@@ -21,23 +21,52 @@ jobs:
2121 - name : Install Vercel CLI
2222 run : npm install --global vercel@latest
2323
24- - name : Parse Tag and Build Domain
24+ - name : Parse Tag and Build Configuration
2525 id : parse-tag
2626 run : |
2727 TAG="${{ github.ref_name }}"
2828 PACKAGE_NAME=$(echo "$TAG" | sed -E 's/^@bigcommerce\/([^@]+)@.*$/\1/')
29+
2930 case "$PACKAGE_NAME" in
30- "catalyst-core") DOMAIN="catalyst-demo.site" ;;
31- "catalyst-makeswift") DOMAIN="makeswift.catalyst-demo.site" ;;
32- "catalyst-b2b-makeswift") DOMAIN="b2b-makeswift.catalyst-demo.site" ;;
33- *) echo "Error: Unknown package name: $PACKAGE_NAME"; exit 1 ;;
31+ "catalyst-core")
32+ echo "domain=catalyst-demo.site" >> $GITHUB_OUTPUT
33+ echo "env_prefix=CORE" >> $GITHUB_OUTPUT
34+ echo "is_makeswift=false" >> $GITHUB_OUTPUT
35+ ;;
36+ "catalyst-makeswift")
37+ echo "domain=makeswift.catalyst-demo.site" >> $GITHUB_OUTPUT
38+ echo "env_prefix=MAKESWIFT" >> $GITHUB_OUTPUT
39+ echo "is_makeswift=true" >> $GITHUB_OUTPUT
40+ ;;
41+ "catalyst-b2b-makeswift")
42+ echo "domain=b2b-makeswift.catalyst-demo.site" >> $GITHUB_OUTPUT
43+ echo "env_prefix=B2B_MAKESWIFT" >> $GITHUB_OUTPUT
44+ echo "is_makeswift=true" >> $GITHUB_OUTPUT
45+ ;;
46+ *)
47+ echo "Error: Unknown package name: $PACKAGE_NAME"
48+ exit 1
49+ ;;
3450 esac
35- echo "domain=$DOMAIN" >> $GITHUB_OUTPUT
3651
3752 - name : Deploy to Vercel
3853 id : deploy
54+ env :
55+ CHANNEL_ID : ${{ steps.parse-tag.outputs.env_prefix == 'CORE' && secrets.CORE_BIGCOMMERCE_CHANNEL_ID || steps.parse-tag.outputs.env_prefix == 'MAKESWIFT' && secrets.MAKESWIFT_BIGCOMMERCE_CHANNEL_ID || secrets.B2B_MAKESWIFT_BIGCOMMERCE_CHANNEL_ID }}
56+ STOREFRONT_TOKEN : ${{ steps.parse-tag.outputs.env_prefix == 'CORE' && secrets.CORE_BIGCOMMERCE_STOREFRONT_TOKEN || steps.parse-tag.outputs.env_prefix == 'MAKESWIFT' && secrets.MAKESWIFT_BIGCOMMERCE_STOREFRONT_TOKEN || secrets.B2B_MAKESWIFT_BIGCOMMERCE_STOREFRONT_TOKEN }}
57+ MAKESWIFT_KEY : ${{ steps.parse-tag.outputs.env_prefix == 'MAKESWIFT' && secrets.MAKESWIFT_SITE_API_KEY || secrets.B2B_MAKESWIFT_SITE_API_KEY }}
3958 run : |
40- DEPLOYMENT_URL=$(vercel deploy --token=${{ secrets.VERCEL_TOKEN }})
59+ # Build deploy command with env vars
60+ DEPLOY_CMD="vercel deploy --token=${{ secrets.VERCEL_TOKEN }}"
61+ DEPLOY_CMD="$DEPLOY_CMD --env BIGCOMMERCE_CHANNEL_ID=$CHANNEL_ID"
62+ DEPLOY_CMD="$DEPLOY_CMD --env BIGCOMMERCE_STOREFRONT_TOKEN=$STOREFRONT_TOKEN"
63+
64+ # Add Makeswift-specific env var if applicable
65+ if [[ "${{ steps.parse-tag.outputs.is_makeswift }}" == "true" ]]; then
66+ DEPLOY_CMD="$DEPLOY_CMD --env MAKESWIFT_SITE_API_KEY=$MAKESWIFT_KEY"
67+ fi
68+
69+ DEPLOYMENT_URL=$(eval $DEPLOY_CMD)
4170 echo "deployment_url=$DEPLOYMENT_URL" >> $GITHUB_OUTPUT
4271
4372 - name : Set Vercel Domain Alias
0 commit comments