diff --git a/e2e/test_helper.bash b/e2e/test_helper.bash index c84f394..e1d9a2a 100755 --- a/e2e/test_helper.bash +++ b/e2e/test_helper.bash @@ -30,7 +30,14 @@ delete_package() { init_namespace() { $DOCTL auth init --access-token $DO_API_KEY $DOCTL sls install - $DOCTL sls connect $TEST_NAMESPACE + + # Check if namespace exists, create if it doesn't + if ! $DOCTL sls connect $TEST_NAMESPACE 2>/dev/null; then + echo "Namespace $TEST_NAMESPACE not found, creating it..." + $DOCTL sls namespaces create --label $TEST_NAMESPACE --region nyc1 + sleep 10 # Wait for namespace to be ready + $DOCTL sls connect $TEST_NAMESPACE + fi CREDS=$($DOCTL sls status --credentials) export API_HOST=$(echo "$CREDS" | jq -r .APIHost) diff --git a/src/util.ts b/src/util.ts index d6f1288..abe796a 100644 --- a/src/util.ts +++ b/src/util.ts @@ -224,16 +224,18 @@ function locateBuild( remoteRequired: boolean, localRequired: boolean ) { + // Check for explicit remote build requests first (--remote-build flag or remoteBuild: true) + if (remoteRequired || (remoteRequested && !localRequired)) { + return 'remote'; + } if (!isRealBuild(buildField)) { // Not a real build. Check remote-default conditions. if (defaultRemote && !localRequired) { return 'remote-default'; } // else does not meet remote-default conditions return buildField; - } // else it's a real build. Check conditions for remote. - if (remoteRequired || (remoteRequested && !localRequired)) { - return 'remote'; - } // else does not meet conditions for remote + } + // else does not meet conditions for remote return buildField; }