Skip to content

Commit 9191092

Browse files
committed
chore: add debugging steps for PraisonAI API key validation in GitHub Actions workflow
- Introduced additional checks to verify the presence and validity of the OpenAI API key within the workflow. - Added a new step to directly test the PraisonAI API key usage, enhancing visibility into the API key configuration and its integration with the PraisonAI model. - These changes aim to improve debugging capabilities and ensure proper API key handling during the workflow execution.
1 parent 954281e commit 9191092

1 file changed

Lines changed: 54 additions & 0 deletions

File tree

.github/workflows/test-core.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,15 @@ jobs:
4242
echo "OPENAI_MODEL_NAME=${{ secrets.OPENAI_MODEL_NAME || 'gpt-4o-mini' }}" >> $GITHUB_ENV
4343
echo "LOGLEVEL=DEBUG" >> $GITHUB_ENV
4444
echo "PYTHONPATH=${{ github.workspace }}/src/praisonai-agents:$PYTHONPATH" >> $GITHUB_ENV
45+
# Also export to current shell session for immediate availability
46+
export OPENAI_API_KEY="${{ secrets.OPENAI_API_KEY || 'sk-test-key-for-github-actions-testing-only-not-real' }}"
47+
export OPENAI_API_BASE="${{ secrets.OPENAI_API_BASE || 'https://api.openai.com/v1' }}"
48+
export OPENAI_MODEL_NAME="${{ secrets.OPENAI_MODEL_NAME || 'gpt-4o-mini' }}"
49+
export LOGLEVEL=DEBUG
50+
# Verify immediate availability
51+
echo "🔧 Immediate verification in same step:"
52+
echo " OPENAI_API_KEY length in current session: ${#OPENAI_API_KEY}"
53+
echo " OPENAI_API_KEY starts with sk-: $(echo "$OPENAI_API_KEY" | grep -q '^sk-' && echo 'YES' || echo 'NO')"
4554
4655
- name: Debug API Key Status
4756
run: |
@@ -61,6 +70,9 @@ jobs:
6170
echo " - OPENAI_API_BASE: $OPENAI_API_BASE"
6271
echo " - OPENAI_MODEL_NAME: $OPENAI_MODEL_NAME"
6372
echo " - LOGLEVEL: $LOGLEVEL"
73+
echo "🔍 Is API key actually set?"
74+
echo " - API key starts with sk-: $(echo "$OPENAI_API_KEY" | grep -q '^sk-' && echo 'YES' || echo 'NO')"
75+
echo " - API key is not test key: $([ "$OPENAI_API_KEY" != 'sk-test-key-for-github-actions-testing-only-not-real' ] && echo 'YES' || echo 'NO')"
6476
6577
- name: Debug Environment Variables Raw
6678
run: |
@@ -107,6 +119,39 @@ jobs:
107119
"
108120
continue-on-error: true
109121

122+
- name: Debug PraisonAI API Key Usage
123+
env:
124+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY || 'sk-test-key-for-github-actions-testing-only-not-real' }}
125+
OPENAI_API_BASE: ${{ secrets.OPENAI_API_BASE || 'https://api.openai.com/v1' }}
126+
OPENAI_MODEL_NAME: ${{ secrets.OPENAI_MODEL_NAME || 'gpt-4o-mini' }}
127+
LOGLEVEL: DEBUG
128+
run: |
129+
echo "🔍 Testing PraisonAI API key usage directly..."
130+
cd src/praisonai
131+
python -c "
132+
import os
133+
import sys
134+
sys.path.insert(0, '.')
135+
136+
print('🔧 Direct PraisonAI API Key Check:')
137+
print(f'Environment OPENAI_API_KEY: {os.environ.get(\"OPENAI_API_KEY\", \"NOT_SET\")[:10]}...')
138+
139+
# Test PraisonAI initialization
140+
from praisonai import PraisonAI
141+
praisonai = PraisonAI()
142+
143+
print(f'PraisonAI config_list: {praisonai.config_list}')
144+
api_key_from_config = praisonai.config_list[0].get('api_key', 'NOT_SET')
145+
print(f'API key from PraisonAI config: {api_key_from_config[:10] if api_key_from_config != \"NOT_SET\" else \"NOT_SET\"}...')
146+
147+
# Test PraisonAIModel
148+
from praisonai.inc.models import PraisonAIModel
149+
model = PraisonAIModel(model='openai/gpt-4o-mini')
150+
print(f'PraisonAIModel api_key: {model.api_key[:10] if model.api_key != \"nokey\" else \"DEFAULT_NOKEY\"}...')
151+
print(f'PraisonAIModel api_key_var: {model.api_key_var}')
152+
print(f'PraisonAIModel base_url: {model.base_url}')
153+
"
154+
110155
- name: Run Unit Tests
111156
run: |
112157
cd src/praisonai && python -m pytest tests/unit/ -v --tb=short --disable-warnings --cov=praisonai --cov-report=term-missing
@@ -161,8 +206,17 @@ jobs:
161206
}
162207
163208
- name: Run Legacy Tests with API Key
209+
env:
210+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY || 'sk-test-key-for-github-actions-testing-only-not-real' }}
211+
OPENAI_API_BASE: ${{ secrets.OPENAI_API_BASE || 'https://api.openai.com/v1' }}
212+
OPENAI_MODEL_NAME: ${{ secrets.OPENAI_MODEL_NAME || 'gpt-4o-mini' }}
213+
LOGLEVEL: DEBUG
164214
run: |
165215
echo "🧪 Running legacy tests with real API key..."
216+
echo "🔧 Final environment check before pytest:"
217+
echo " OPENAI_API_KEY set: $([ -n "$OPENAI_API_KEY" ] && echo 'YES' || echo 'NO')"
218+
echo " OPENAI_API_KEY length: ${#OPENAI_API_KEY}"
219+
echo " OPENAI_API_KEY starts with sk-: $(echo "$OPENAI_API_KEY" | grep -q '^sk-' && echo 'YES' || echo 'NO')"
166220
cd src/praisonai && python -m pytest tests/test.py -v --tb=short --disable-warnings
167221
168222
- name: Upload Coverage Reports

0 commit comments

Comments
 (0)