rename_taiga_project.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import requests
  2. import urllib3
  3. import os
  4. import sys
  5. urllib3.disable_warnings()
  6. sys.stdout.reconfigure(encoding='utf-8')
  7. TAIGA_USER = os.environ.get('TAIGA_USER', 'FrancoisLange')
  8. TAIGA_PASS = os.environ.get('TAIGA_PASS', 'your_db_password_here')
  9. base_url = 'https://192.168.130.161/taiga/api/v1'
  10. def main():
  11. print("Connecting to Taiga...")
  12. auth_resp = requests.post(f'{base_url}/auth', json={'type': 'normal', 'username': TAIGA_USER, 'password': TAIGA_PASS}, verify=False)
  13. if auth_resp.status_code != 200:
  14. print("Auth failed!")
  15. return
  16. auth = auth_resp.json()
  17. headers = {
  18. 'Authorization': f'Bearer {auth["auth_token"]}',
  19. 'Content-Type': 'application/json'
  20. }
  21. project_id = 21
  22. # Fetch current project details
  23. print("Fetching current project details...")
  24. p = requests.get(f'{base_url}/projects/{project_id}', headers=headers, verify=False).json()
  25. print(f"Current project name: '{p['name']}'")
  26. # Update project name to LocalFoodAI_lanfr144
  27. new_name = "LocalFoodAI_lanfr144"
  28. print(f"Renaming project in Taiga to '{new_name}'...")
  29. # Check current version
  30. version = p.get('version', 1)
  31. payload = {
  32. "name": new_name,
  33. "version": version
  34. }
  35. patch_resp = requests.patch(f'{base_url}/projects/{project_id}', json=payload, headers=headers, verify=False)
  36. if patch_resp.status_code == 200:
  37. updated_p = patch_resp.json()
  38. print("Project successfully renamed!")
  39. print(f"New project name: '{updated_p['name']}'")
  40. print(f"New project slug: '{updated_p['slug']}'")
  41. else:
  42. print(f"Failed to rename project: {patch_resp.status_code}")
  43. print(patch_resp.text)
  44. if __name__ == '__main__':
  45. main()