taiga-sync/main.py

88 lines
2.1 KiB
Python
Raw Normal View History

2024-06-02 17:07:38 +02:00
#/usr/bin/env python
import os
2024-06-04 12:49:24 +02:00
from sys import exit
import gitea
2024-06-02 17:07:38 +02:00
from dotenv import load_dotenv
from taiga import TaigaAPI
load_dotenv()
2024-06-04 12:49:24 +02:00
print("Creating TaigaAPI object")
taiga_api = TaigaAPI(host=os.getenv('TAIGA_HOST'))
2024-06-02 17:07:38 +02:00
print("Authenticating")
2024-06-04 12:49:24 +02:00
taiga_api.auth(
username=os.getenv('TAIGA_USERNAME'),
password=os.getenv('TAIGA_PASSWORD')
2024-06-02 17:07:38 +02:00
)
2024-06-04 12:49:24 +02:00
print("Retrieving user peter")
users = taiga_api.users.list_users()
saved_user = None
for u in users:
if u.username == "PeterSurda":
saved_user = u
break
if not saved_user:
print("Can't find user PeterSurda")
exit(1)
print("Retrieving test-project")
old_project = taiga_api.projects.get_by_slug('test-project')
print("Retrieving project roles")
roles = old_project.list_roles()
saved_role = None
for r in roles:
if r.slug == 'product-owner':
saved_role = r
break
if not saved_role:
print("Can't find product-owner role for project")
exit(1)
#membership = old_project.add_membership('peter+taiga@bitmessage.at', '')
print("Retrieving project membership")
memberships = old_project.list_memberships()
found = False
for m in memberships:
if m.user == saved_user.id:
if m.role != saved_role.role.id:
print("Modifying membership")
m.role = saved_role.role.id
m.update()
else:
found = True
break
if not found:
print("Adding membership")
old_project.add_membership(email=None,
role=saved_role.id,
username=saved_user.username)
2024-06-02 17:07:38 +02:00
#print(new_project)
2024-06-04 12:49:24 +02:00
#print("Creating test project")
#new_project = taiga_api.projects.create('TEST PROJECT', 'TESTING API')
#print("Creating test story")
#userstory = new_project.add_user_story(
# 'New Story', description='Blablablabla'
#)
#print("Done")
#gitea_api = gitea.Gitea(os.getenv('GITEA_HOST'),
# os.getenv('GITEA_TOKEN'))
2024-06-02 17:07:38 +02:00
2024-06-04 12:49:24 +02:00
#print("Gitea Version: " + gitea_api.get_version())
#print("API-Token belongs to user: " + gitea_api.get_user().username)
2024-06-02 17:07:38 +02:00
2024-06-04 12:49:24 +02:00
#org = gitea.Organization.request(gitea_api, "Sysdeploy")
2024-06-02 17:07:38 +02:00
2024-06-04 12:49:24 +02:00
#v = vars(org)
2024-06-02 17:07:38 +02:00
2024-06-04 12:49:24 +02:00
#print(v)