1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| import gitlab import time import os import sys import pandas as pd
repo_url = "http://" + sys.argv[1] token = sys.argv[2]
df1 = pd.DataFrame(columns=['url']) g1 = gitlab.Gitlab(repo_url, private_token=token) projects = g1.projects.list(all=True) for project in projects: df1 = df1.append({'url':project.http_url_to_repo}, ignore_index=True)
if os.path.isfile("gitlab_sync_ignore.lst"): df2 = pd.read_csv("gitlab_sync_ignore.lst",sep=' ',header=None) df2.rename(columns={df2.columns[0]:"url"}, inplace=True) df3 = pd.concat([df1, df2, df2]).drop_duplicates(keep=False) else: df3 = df1
if os.path.isfile("gitlab_sync_old.lst"): df4 = pd.read_csv("gitlab_sync_old.lst",sep=' ',header=None) df4.rename(columns={df4.columns[0]:"url"}, inplace=True) df5 = pd.concat([df3, df4, df4]).drop_duplicates(keep=False) df4 = pd.concat([df3, df5, df5]).drop_duplicates(keep=False) df4.to_csv("gitlab_sync_to_inc.lst",index=0,header=0) df5.to_csv("gitlab_sync_to_full.lst",index=0,header=0) else: df5 = df3 df5.to_csv("gitlab_sync_to_full.lst",index=0,header=0)
|