Examples¶
Below you can find some examples to import and export data using Gitana. Additional examples can be found in the test folder
Importer¶
from gitana.gitana import Gitana
CONFIG = {
'user': 'root',
'password': 'root',
'host': 'localhost',
'port': '3306',
'raise_on_warnings': False,
'buffered': True
}
def main():
g = Gitana(CONFIG, None)
g.delete_previous_logs()
g.init_db("_papyrus_db")
g.create_project("_papyrus_db", "papyrus")
print "import git data"
g.import_git_data("_papyrus_db", "papyrus", "papyrus_repo", "C:\\Users\\atlanmod\\Desktop\\eclipse-git-projects\\papyrus", None, 1, ["0.7.0"], 10)
print "import bugzilla data"
g.import_bugzilla_tracker_data("_papyrus_db", "papyrus", "papyrus_repo", "bugzilla-papyrus", "https://bugs.eclipse.org/bugs/xmlrpc.cgi", "papyrus", None, 10)
print "import eclipse forum data"
g.import_eclipse_forum_data("_papyrus_db", "papyrus", "papyrus-eclipse", "https://www.eclipse.org/forums/index.php/f/121/", None, 4)
print "import stackoverflow data"
g.import_stackoverflow_data("_papyrus_db", "papyrus", "papyrus-stackoverflow", "papyrus", None, ['YOUR-STACKOVERFLOW-TOKEN'])
if __name__ == "__main__":
main()
Graph Exporter¶
{"graph":
{"name": "users-on-issues",
"params": {"project": "papyrus",
"repo": "papyrus_repo",
"issuetracker": "bugzilla-papyrus",
"nodecolor": "random",
"edgecolor": "black",
"type": "undirected"}
}
}
from gitana.gitana import Gitana
CONFIG = {
'user': 'root',
'password': 'root',
'host': 'localhost',
'port': '3306',
'raise_on_warnings': False,
'buffered': True
}
def main():
g = Gitana(CONFIG, None)
g.export_to_graph("_papyrus_db", "./graph.json", "./graph.gexf")
if __name__ == "__main__":
main()
Report Exporter¶
{"report":
{"project": "papyrus",
"time_span": "this_year",
"repo_activity": {"names": ["papyrus_repo"],
"measures": ["#commits", "#repo-users"]},
"issue_tracker_activity": {"names": ["bugzilla-papyrus"],
"measures": ["#issues-open", "#issues-closed", "#issue-tracker-users"]},
"forum_activity": {"names": ["papyrus-eclipse", "papyrus-stackoverflow"],
"measures": ["#messages", "#forum-users", "#new-topics", "#active-topics"]}
}
}
from gitana.gitana import Gitana
CONFIG = {
'user': 'root',
'password': 'root',
'host': 'localhost',
'port': '3306',
'raise_on_warnings': False,
'buffered': True
}
def main():
g = Gitana(CONFIG, None)
g.export_to_report("_papyrus_db", "./report.json", "./report.html")
if __name__ == "__main__":
main()