@@ -190,9 +190,8 @@ vsock_request() {
190190 response=$( python3 /app/vsock_helper.py " $cid " " $port " " $request " )
191191
192192 # Check if the response contains an error
193- if echo " $response " | jq -e ' has("error")' > /dev/null; then
194- error_message=$( echo " $response " | jq -r ' .error' )
195- log " VSOCK request failed: $error_message "
193+ if echo " $response " | jq -e ' has("error")' > /dev/null 2>&1 ; then
194+ log " VSOCK request failed"
196195 return 1
197196 fi
198197
@@ -287,51 +286,44 @@ get_tinfoil_proxy_api_key_secret() {
287286}
288287
289288# Get AWS credentials
290- log " Fetching AWS credentials"
291289aws_creds=$( get_aws_credentials)
292290if [ -z " $aws_creds " ]; then
293291 log " Error: Failed to get AWS credentials"
294292 exit 1
295293fi
296294
297295# Add error checking for jq parsing
298- if ! access_key_id=$( echo " $aws_creds " | jq -r ' .response_value.AccessKeyId' ) ; then
296+ if ! access_key_id=$( echo " $aws_creds " | jq -r ' .response_value.AccessKeyId' 2> /dev/null ) ; then
299297 log " Error: Failed to parse AccessKeyId from AWS credentials"
300- log " AWS credentials response: $aws_creds "
301298 exit 1
302299fi
303- if ! secret_access_key=$( echo " $aws_creds " | jq -r ' .response_value.SecretAccessKey' ) ; then
300+ if ! secret_access_key=$( echo " $aws_creds " | jq -r ' .response_value.SecretAccessKey' 2> /dev/null ) ; then
304301 log " Error: Failed to parse SecretAccessKey from AWS credentials"
305302 exit 1
306303fi
307- if ! session_token=$( echo " $aws_creds " | jq -r ' .response_value.Token' ) ; then
304+ if ! session_token=$( echo " $aws_creds " | jq -r ' .response_value.Token' 2> /dev/null ) ; then
308305 log " Error: Failed to parse Token from AWS credentials"
309306 exit 1
310307fi
311- if ! region=$( echo " $aws_creds " | jq -r ' .response_value.Region' ) ; then
308+ if ! region=$( echo " $aws_creds " | jq -r ' .response_value.Region' 2> /dev/null ) ; then
312309 log " Error: Failed to parse Region from AWS credentials"
313310 exit 1
314311fi
315312
316- log " AWS credentials retrieved and parsed successfully"
317-
318313# Get encrypted database URL from Secrets Manager
319- log " Fetching encrypted database URL"
320314secret_response=$( get_database_url_secret)
321- log " Retrieved raw secret response"
322315
323316# Extract the database_url value from the JSON structure
324- encrypted_db_url=$( echo " $secret_response " | jq -r ' .response_value | fromjson | .database_url' )
317+ if ! encrypted_db_url=$( echo " $secret_response " | jq -r ' .response_value | fromjson | .database_url' 2> /dev/null) ; then
318+ log " Error: Failed to get encrypted database URL"
319+ exit 1
320+ fi
325321if [ -z " $encrypted_db_url " ]; then
326322 log " Error: Failed to get encrypted database URL"
327- log " Secret response: $secret_response "
328323 exit 1
329324fi
330325
331- log " Encrypted database URL retrieved successfully"
332-
333326# Decrypt the database URL using kmstool_enclave_cli
334- log " Decrypting database URL"
335327decryption_output=$( kmstool_enclave_cli decrypt \
336328 --region " $region " \
337329 --proxy-port 8000 \
@@ -340,20 +332,18 @@ decryption_output=$(kmstool_enclave_cli decrypt \
340332 --aws-session-token " $session_token " \
341333 --ciphertext " $encrypted_db_url " 2>&1 )
342334
343- log " Got decryption output, parsing URL"
344-
345335decrypted_db_url=$( echo " $decryption_output " | sed -n ' s/PLAINTEXT: //p' )
346336
347337if [ -z " $decrypted_db_url " ]; then
348338 log " Error: Failed to decrypt database URL"
349- log " Decryption output: $decryption_output "
350339 exit 1
351340fi
352341
353- log " Database URL decrypted successfully"
354-
355342# Decode the base64 decrypted URL
356- decoded_db_url=$( echo " $decrypted_db_url " | base64 -d)
343+ if ! decoded_db_url=$( echo " $decrypted_db_url " | base64 -d 2> /dev/null) ; then
344+ log " Error: Failed to decode base64 database URL"
345+ exit 1
346+ fi
357347
358348if [ -z " $decoded_db_url " ]; then
359349 log " Error: Failed to decode base64 database URL"
@@ -368,7 +358,6 @@ if [ -z "$DB_HOSTNAME" ]; then
368358fi
369359
370360echo " 127.0.0.1 $DB_HOSTNAME " >> /etc/hosts
371- log " Added $DB_HOSTNAME to /etc/hosts"
372361
373362# Add OpenAI API hostname to /etc/hosts
374363echo " 127.0.0.1 api.openai.com" >> /etc/hosts
@@ -459,7 +448,6 @@ log "Created /app/libnsm.so"
459448log " Network configuration:"
460449ip addr show
461450ip route
462- cat /etc/hosts
463451
464452# Start the traffic forwarder for the database in the background
465453log " Starting database traffic forwarder"
866854# Start the continuum-proxy if we're in AWS Nitro mode
867855if [ " $APP_MODE " != " local" ]; then
868856 # Get Continuum Proxy API key from Secrets Manager
869- log " Fetching Continuum Proxy API key"
870857 continuum_proxy_api_key_response=$( get_continuum_proxy_api_key_secret)
871- log " Retrieved raw Continuum Proxy API key response"
872858
873859 # Check if the response is an error
874- if echo " $continuum_proxy_api_key_response " | jq -e ' .response_type == "error"' > /dev/null; then
875- error_message=$( echo " $continuum_proxy_api_key_response " | jq -r ' .response_value' )
876- log " Error: Failed to get Continuum Proxy API key. Error message: $error_message "
860+ if echo " $continuum_proxy_api_key_response " | jq -e ' .response_type == "error"' > /dev/null 2>&1 ; then
861+ log " Error: Failed to get Continuum Proxy API key"
877862 exit 1
878863 fi
879864
880865 # Extract the encrypted API key value from the JSON structure
881- continuum_proxy_api_key_encrypted=$( echo " $continuum_proxy_api_key_response " | jq -r ' .response_value | fromjson | .api_key' )
866+ if ! continuum_proxy_api_key_encrypted=$( echo " $continuum_proxy_api_key_response " | jq -r ' .response_value | fromjson | .api_key' 2> /dev/null) ; then
867+ log " Error: Failed to extract Continuum Proxy API key from the response"
868+ exit 1
869+ fi
882870 if [ -z " $continuum_proxy_api_key_encrypted " ]; then
883871 log " Error: Failed to extract Continuum Proxy API key from the response"
884- log " Secret response: $continuum_proxy_api_key_response "
885872 exit 1
886873 fi
887874
888875 # Decrypt the API key using kmstool_enclave_cli
889- log " Decrypting Continuum Proxy API key"
890876 decryption_output=$( kmstool_enclave_cli decrypt \
891877 --region " $region " \
892878 --proxy-port 8000 \
@@ -899,20 +885,20 @@ if [ "$APP_MODE" != "local" ]; then
899885
900886 if [ -z " $decrypted_api_key " ]; then
901887 log " Error: Failed to decrypt Continuum Proxy API key"
902- log " Decryption output: $decryption_output "
903888 exit 1
904889 fi
905890
906891 # Base64 decode the decrypted API key
907- continuum_proxy_api_key=$( echo " $decrypted_api_key " | base64 -d)
892+ if ! continuum_proxy_api_key=$( echo " $decrypted_api_key " | base64 -d 2> /dev/null) ; then
893+ log " Error: Failed to base64 decode Continuum Proxy API key"
894+ exit 1
895+ fi
908896
909897 if [ -z " $continuum_proxy_api_key " ]; then
910898 log " Error: Failed to base64 decode Continuum Proxy API key"
911899 exit 1
912900 fi
913901
914- log " Continuum Proxy API key retrieved, decrypted, and decoded successfully"
915-
916902 log " Starting continuum-proxy on port 8092 with user-scoped salts and per-request fallback"
917903 run_forever continuum_proxy /app/continuum-proxy --port 8092 --apiKey " $continuum_proxy_api_key " &
918904
@@ -923,27 +909,25 @@ if [ "$APP_MODE" != "local" ]; then
923909 export OPENAI_API_BASE=" http://127.0.0.1:8092"
924910
925911 # Get Tinfoil Proxy API key from Secrets Manager
926- log " Fetching Tinfoil Proxy API key"
927912 tinfoil_proxy_api_key_response=$( get_tinfoil_proxy_api_key_secret)
928- log " Retrieved raw Tinfoil Proxy API key response"
929913
930914 # Check if the response is an error
931- if echo " $tinfoil_proxy_api_key_response " | jq -e ' .response_type == "error"' > /dev/null; then
932- error_message=$( echo " $tinfoil_proxy_api_key_response " | jq -r ' .response_value' )
933- log " Error: Failed to get Tinfoil Proxy API key. Error message: $error_message "
915+ if echo " $tinfoil_proxy_api_key_response " | jq -e ' .response_type == "error"' > /dev/null 2>&1 ; then
916+ log " Error: Failed to get Tinfoil Proxy API key"
934917 exit 1
935918 fi
936919
937920 # Extract the encrypted API key value from the JSON structure
938- tinfoil_proxy_api_key_encrypted=$( echo " $tinfoil_proxy_api_key_response " | jq -r ' .response_value | fromjson | .api_key' )
921+ if ! tinfoil_proxy_api_key_encrypted=$( echo " $tinfoil_proxy_api_key_response " | jq -r ' .response_value | fromjson | .api_key' 2> /dev/null) ; then
922+ log " Error: Failed to extract Tinfoil Proxy API key from the response"
923+ exit 1
924+ fi
939925 if [ -z " $tinfoil_proxy_api_key_encrypted " ]; then
940926 log " Error: Failed to extract Tinfoil Proxy API key from the response"
941- log " Secret response: $tinfoil_proxy_api_key_response "
942927 exit 1
943928 fi
944929
945930 # Decrypt the API key using kmstool_enclave_cli
946- log " Decrypting Tinfoil Proxy API key"
947931 decryption_output=$( kmstool_enclave_cli decrypt \
948932 --region " $region " \
949933 --proxy-port 8000 \
@@ -956,19 +940,20 @@ if [ "$APP_MODE" != "local" ]; then
956940
957941 if [ -z " $decrypted_api_key " ]; then
958942 log " Error: Failed to decrypt Tinfoil Proxy API key"
959- log " Decryption output: $decryption_output "
960943 exit 1
961944 fi
962945
963946 # Base64 decode the decrypted API key
964- tinfoil_proxy_api_key=$( echo " $decrypted_api_key " | base64 -d)
947+ if ! tinfoil_proxy_api_key=$( echo " $decrypted_api_key " | base64 -d 2> /dev/null) ; then
948+ log " Error: Failed to base64 decode Tinfoil Proxy API key"
949+ exit 1
950+ fi
965951
966952 if [ -z " $tinfoil_proxy_api_key " ]; then
967953 log " Error: Failed to base64 decode Tinfoil Proxy API key"
968954 exit 1
969955 fi
970956
971- log " Tinfoil Proxy API key retrieved, decrypted, and decoded successfully"
972957else
973958 # For local mode, use the default OpenAI API base or the one set in the environment
974959 export OPENAI_API_BASE=${OPENAI_API_BASE:- " https://api.openai.com" }
0 commit comments