Cześć!
Mam problem z GitHub Actions podczas próby integracji z Google Sheets API. Próbuję zapisać dane uwierzytelniające Google Sheets jako plik credentials.json z sekretów repozytorium. Niestety, plik tworzony przez workflow jest pusty, co skutkuje błędem w skrypcie Pythona, gdy próbuję użyć tych danych do autoryzacji.
Konfiguracja:
W repozytorium GitHub dodałem sekret GOOGLE_SHEETS_CREDENTIALS, który zawiera poprawną zawartość pliku JSON wygenerowanego z Google Cloud Console.
W workflow GitHub Actions próbuję zapisać sekret jako plik credentials.json w poniższy sposób:
- name: Save Google Sheets credentials
run: echo "${{ secrets.GOOGLE_SHEETS_CREDENTIALS }}" | tr -d '\r' > credentials.json
Następnie sprawdzam, czy plik został poprawnie zapisany:
- name: Debug: Check if credentials.json is empty
run: |
if [ ! -s credentials.json ]; then
echo "Error: credentials.json is empty!"
exit 1
fi
Zawsze otrzymuję komunikat o błędzie, że plik credentials.json jest pusty.
Sprawdziłem zawartość sekreta bezpośrednio w GitHub, i wygląda na to, że jest tam poprawny plik JSON. Dodałem też krok, aby wyświetlić zawartość sekreta w logach, ale nawet wtedy nie widzę żadnych danych.
Co próbowałem:
Sprawdziłem kilkakrotnie zawartość sekreta, na pewno jest to pełny i poprawny plik JSON z Google Cloud Console.
Użyłem polecenia tr -d '\r', aby usunąć ewentualne problematyczne znaki nowej linii.
Dodałem dodatkowe kroki debugowania, ale plik zawsze wychodzi pusty.
Czy ktoś spotkał się z podobnym problemem i wie, co może być przyczyną? Będę wdzięczny za każdą pomoc!