rename_taiga_slug.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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. print(f"Current project slug: '{p['slug']}'")
  27. # Update project name and slug to LocalFoodAI_lanfr144
  28. new_name = "LocalFoodAI_lanfr144"
  29. new_slug = "localfoodai-lanfr144"
  30. print(f"Updating project slug in Taiga to '{new_slug}'...")
  31. # Check current version
  32. version = p.get('version', 1)
  33. payload = {
  34. "name": new_name,
  35. "slug": new_slug,
  36. "version": version
  37. }
  38. patch_resp = requests.patch(f'{base_url}/projects/{project_id}', json=payload, headers=headers, verify=False)
  39. if patch_resp.status_code == 200:
  40. updated_p = patch_resp.json()
  41. print("Project successfully updated!")
  42. print(f"New project name: '{updated_p['name']}'")
  43. print(f"New project slug: '{updated_p['slug']}'")
  44. else:
  45. print(f"Failed to update project: {patch_resp.status_code}")
  46. print(patch_resp.text)
  47. if __name__ == '__main__':
  48. main()