|
42 | 42 | echo "OPENAI_MODEL_NAME=${{ secrets.OPENAI_MODEL_NAME || 'gpt-4o-mini' }}" >> $GITHUB_ENV |
43 | 43 | echo "LOGLEVEL=DEBUG" >> $GITHUB_ENV |
44 | 44 | 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')" |
45 | 54 |
|
46 | 55 | - name: Debug API Key Status |
47 | 56 | run: | |
|
61 | 70 | echo " - OPENAI_API_BASE: $OPENAI_API_BASE" |
62 | 71 | echo " - OPENAI_MODEL_NAME: $OPENAI_MODEL_NAME" |
63 | 72 | 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')" |
64 | 76 |
|
65 | 77 | - name: Debug Environment Variables Raw |
66 | 78 | run: | |
@@ -107,6 +119,39 @@ jobs: |
107 | 119 | " |
108 | 120 | continue-on-error: true |
109 | 121 |
|
| 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 | +
|
110 | 155 | - name: Run Unit Tests |
111 | 156 | run: | |
112 | 157 | cd src/praisonai && python -m pytest tests/unit/ -v --tb=short --disable-warnings --cov=praisonai --cov-report=term-missing |
@@ -161,8 +206,17 @@ jobs: |
161 | 206 | } |
162 | 207 |
|
163 | 208 | - 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 |
164 | 214 | run: | |
165 | 215 | 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')" |
166 | 220 | cd src/praisonai && python -m pytest tests/test.py -v --tb=short --disable-warnings |
167 | 221 |
|
168 | 222 | - name: Upload Coverage Reports |
|
0 commit comments