forked from importers/git-importer
		
	Compare commits
	
		
			4 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 94fdb3b442 | ||
|  | f2358446da | ||
| 9660e633af | |||
| 85b9ed5e75 | 
							
								
								
									
										15
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,5 +1,18 @@ | |||||||
|  | Installation | ||||||
|  | ------------ | ||||||
|  |  | ||||||
|     sudo zypper in python3-psycopg |     sudo zypper in python3-psycopg | ||||||
|     sudo su - postgres |     sudo su - postgres | ||||||
| # `createdb -O <LOCAL_USER> imported_git` |     createdb -O <LOCAL_USER> imported_git` | ||||||
|  |  | ||||||
| To reset the database, drop table scheme | To reset the database, drop table scheme | ||||||
|  |  | ||||||
|  |  | ||||||
|  | Gitea parameters | ||||||
|  | ---------------- | ||||||
|  |  | ||||||
|  |   * `GITEA_HOST` - default: src.opensuse.org | ||||||
|  |   * `GITEA_USER` - Used to generate SSH links for push. Default: gitea | ||||||
|  |   * `GITEA_ORG`  - target organization to push to | ||||||
|  |   * `GITEA_DEFAULT_BRANCH` - default branch | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										18
									
								
								lib/git.py
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								lib/git.py
									
									
									
									
									
								
							| @@ -252,15 +252,27 @@ class Git: | |||||||
|     def add_gitea_remote(self, package): |     def add_gitea_remote(self, package): | ||||||
|         repo_name = package.replace("+", "_") |         repo_name = package.replace("+", "_") | ||||||
|         org_name = "rpm" |         org_name = "rpm" | ||||||
|  |         gitea_user = "gitea" | ||||||
|  |         gitea_host = "src.opensuse.org" | ||||||
|  |         default_branch = "factory" | ||||||
|  |  | ||||||
|  |         if os.getenv("GITEA_HOST"): | ||||||
|  |             gitea_host = getenv("GITEA_HOST") | ||||||
|  |         if os.getenv("GITEA_USER"): | ||||||
|  |             gitea_user = getenv("GITEA_USER") | ||||||
|  |         if os.getenv("GITEA_ORG"): | ||||||
|  |             org_name = getenv("GITEA_ORG") | ||||||
|  |         if os.getenv("GITEA_DEFAULT_BRANCH"): | ||||||
|  |             default_branch = getenv("GITEA_DEFAULT_BRANCH") | ||||||
|  |  | ||||||
|         if not os.getenv("GITEA_TOKEN"): |         if not os.getenv("GITEA_TOKEN"): | ||||||
|             logging.warning("Not adding a remote due to missing $GITEA_TOKEN") |             logging.warning("Not adding a remote due to missing $GITEA_TOKEN") | ||||||
|             return |             return | ||||||
|  |  | ||||||
|         url = f"https://src.opensuse.org/api/v1/org/{org_name}/repos" |         url = f"https://{gitea_host}/api/v1/org/{org_name}/repos" | ||||||
|         response = requests.post( |         response = requests.post( | ||||||
|             url, |             url, | ||||||
|             data={"name": repo_name, "object_format_name": "sha256"}, |             data={"name": repo_name, "object_format_name": "sha256", "default_branch": default_branch}, | ||||||
|             headers={"Authorization": f"token {os.getenv('GITEA_TOKEN')}"}, |             headers={"Authorization": f"token {os.getenv('GITEA_TOKEN')}"}, | ||||||
|             timeout=10, |             timeout=10, | ||||||
|         ) |         ) | ||||||
| @@ -268,7 +280,7 @@ class Git: | |||||||
|         # 201 Created |         # 201 Created | ||||||
|         if response.status_code not in (201, 409): |         if response.status_code not in (201, 409): | ||||||
|             print(response.data) |             print(response.data) | ||||||
|         url = f"gitea@src.opensuse.org:{org_name}/{repo_name}.git" |         url = f"{gitea_user}@{gitea_host}:{org_name}/{repo_name}.git" | ||||||
|         self.git_run( |         self.git_run( | ||||||
|             ["remote", "add", "origin", url], |             ["remote", "add", "origin", url], | ||||||
|         ) |         ) | ||||||
|   | |||||||
| @@ -29,7 +29,7 @@ class GitExporter: | |||||||
|             self.git.open() |             self.git.open() | ||||||
|         else: |         else: | ||||||
|             self.git.create() |             self.git.create() | ||||||
|             self.git.add_gitea_remote(package) |             # self.git.add_gitea_remote(package) | ||||||
|         self.state_file = os.path.join(self.git.path, ".git", "_flat_state.yaml") |         self.state_file = os.path.join(self.git.path, ".git", "_flat_state.yaml") | ||||||
|         self.gc_interval = 200 |         self.gc_interval = 200 | ||||||
|         self.cachedir = cachedir |         self.cachedir = cachedir | ||||||
| @@ -47,7 +47,7 @@ class GitExporter: | |||||||
|         left_to_commit = [] |         left_to_commit = [] | ||||||
|         for flat in reversed(flats): |         for flat in reversed(flats): | ||||||
|             found_state = False |             found_state = False | ||||||
|             for branch in ["factory"]: |             for branch in ["factory", "devel"]: | ||||||
|                 if flat.commit.dbid == state_data.get(branch): |                 if flat.commit.dbid == state_data.get(branch): | ||||||
|                     branch_state[branch] = flat.commit |                     branch_state[branch] = flat.commit | ||||||
|                     flat.commit.git_commit = self.git.branch_head(branch) |                     flat.commit.git_commit = self.git.branch_head(branch) | ||||||
|   | |||||||
| @@ -83,6 +83,7 @@ class LFSOid: | |||||||
|             self.register() |             self.register() | ||||||
|  |  | ||||||
|     def check(self): |     def check(self): | ||||||
|  |         return True | ||||||
|         url = f"http://localhost:9999/check/{self.sha256}/{self.size}" |         url = f"http://localhost:9999/check/{self.sha256}/{self.size}" | ||||||
|         response = requests.get( |         response = requests.get( | ||||||
|             url, |             url, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user