Commit Graph
46 Commits
Author SHA1 Message Date
Danny Sauer 109cc1eda4 fix(sourcehut): keep logging context local to each operation (#435) 2026-09-09 18:34:36 +02:00
Om Lahore 1774a02416 Check the error when listing GitLab descendant groups (#429)
Both ScanAndCollect calls dropped their error. ScanAndCollect returns
whatever it managed to collect alongside the error, so a failed or
partial ListDescendantGroups left subgroups short without saying so, and
the include/exclude org maps were built from an incomplete list. For
includeorgs that silently drops repos from the backup set.

The GetGroup call seven lines above each of these already logs and
continues on error, so this matches the surrounding code.
2026-09-01 10:11:28 +02:00
Ryan ed581d75d9 fix GitLab mirroring visibility, URL parsing, and ref pushes (#423) 2026-08-18 20:34:43 +02:00
Jonathan Van Eenwyk 7dc1fa0d72 fix: gitlab organization filtering not including nested subgroups (#409)
Gitlab supports nesting subgroups up to 20 levels deep. However, these
two filters were actually applied to projects in the provided
organization/group as well as projects in any immediate subgroup, but
not to projects in more deeply nested subgroups. Presumably, the
original intention of these filters was that the entire
organization/group would be either included or excluded, not only
projects in the group and its immediate subgroups.

Fix by using ListDescendantGroups() to get all descendant/nested groups.
Also, use gitlab.ScanAndCollect() to handle paginated results.
2026-07-08 07:58:58 +02:00
Andreas Wachter 97c1d192bd fixed exclude org race condition (#393) 2026-05-14 19:11:11 +02:00
Andreas Wachter 3369a9fa37 fix gitlab format issue (#386) 2026-05-04 12:15:38 +02:00
Andreas Wachter 9daf4cef3d updated bitbucket and gitlab code, updated dependencies (#381) 2026-04-20 10:18:02 +02:00
Andreas Wachter 4bbe669b71 fix findings from 372 (#373) 2026-04-06 11:34:05 +02:00
Andreas Wachter e6999418e2 Fix linting (#372) 2026-04-05 21:39:20 +02:00
Andreas Wachter 17f7c6cf05 remove defaultbranch, as it is not used anywhere 2025-07-24 08:00:21 +02:00
Arjun Ingole 593c15a63a [FIX] gitlab: fix issue with existing namespaces (#337)
Signed-off-by: Arjun Ingole <arjuningole38@gmail.com>
2025-07-02 12:29:50 +02:00
Andreas Wachter 4c4cbeaca5 switched to gitlab.com/gitlab-org/api/client-go (#331) 2025-06-06 15:06:53 +02:00
Andreas Wachter 976b457a5c added exit code when an error occured (#289) 2025-01-05 08:52:11 +01:00
Andreas Wachter b645f842c3 added a wait interval for api limit, break loop when user doesn't exist (#284)
* added a wait interval for api limit, break loop when user doesn't exist

* add similar logic to the rest too
2024-12-31 10:03:11 +01:00
Andreas Wachter fe1afa35b1 improve debug messages for gitlab (#263)
* improve debug messages for gitlab

* get all repos you have access to

* fix gitlab and better debug outputs
2024-08-29 06:44:53 +02:00
Andreas Wachter dc04acaddd remove debug prints 2024-08-27 10:23:01 +02:00
Andreas Wachter d51caa0352 include and exclude gitlab subgroups (#261) 2024-08-27 10:13:26 +02:00
Andreas Wachter 67db501a30 added error counter for issues and stop after a 403 occurs (#256)
* added error counter for issues and stop after a 403 occurs

* added errorcounter to other hosters too
2024-08-20 14:13:42 +02:00
Andreas Wachter 0e76cf9481 enable push to gitlab (#233) 2024-04-16 13:34:05 +02:00
Andreas Wachter 99c7dd14ab use gitlab token (#232) 2024-04-16 09:12:47 +02:00
Andreas Wachter a62270dee5 debug msgs and check if pushedat is nil (#227) 2024-04-15 08:09:38 +02:00
Andreas Wachter acbb331450 get gitlab user (#201) 2024-01-25 07:40:36 +01:00
Andreas Wachter 52a834b42b backup issues from github (#185)
* backup issues from github

* gitlab issues

* added gitea

* added gogs

* added onedev

* updated examples

* added more documentation
2023-12-01 07:58:53 +01:00
Andreas Wachter fecb4040e6 added sublogger to gitea (#178)
* added sublogger to gitea

* implemented the rest of the subloggers
2023-10-04 10:55:24 +02:00
Andreas Wachter 64a67254e6 implemented exclude forks (#155) 2023-06-04 08:30:02 +02:00
Seow Alex d622367738 Backup description and visibility (#146) 2023-04-23 21:11:12 +02:00
Andreas Wachter 8a86bc4904 backup contributed repos from github (#141) 2023-02-28 19:11:36 +01:00
Andreas Wachter e56f8c8ec2 Logging dont die because of everything (#139)
* token can be environment variable

* don't quit because of everything
2023-02-20 17:00:19 +01:00
Andreas Wachter 3d125133ef implement filters for github (#137)
* implement filters for github

* add filter to exclude archived repositories

* add filter for gitea/forgejo

* gogs filter option

* fix error log

* include gitlab filters

* fix logging

* parse duration

* filters for onedev and sourcehut

* adapted conf.example.yml
2023-02-20 16:05:01 +01:00
Andreas Wachter f61574bf9c improved prometheus metrics (#134)
* improved prometheus metrics

* change RepoTime to gauge

* fix gitea, only set metrics if ran
2023-02-10 06:07:11 +01:00
Tom Moulard 646b792ac1 chore: add linting (#101)
* chore: adding makefile

* chore: adding lint

* chore: update package name

* lint: run with fix

* chore: update main.go

* chore: update main_test.go

* chore: update types.go

* chore: update logger.go

* chore: update types_test.go

* chore: update prometheus.go

* chore: update local.go

* chore: update gitlab.go

* chore: update gogs.go

* chore: update bitbucket.go

* chore: update gitea.go

* chore: update github.go

* chore: update main*.go

* chore: go mod tidy

* chore: update action to have a correct working-directory
2022-03-20 11:25:11 +01:00
Matthew Toohey 8b0f820ec8 fix: use gitlab namespace path instead of owner (#99) 2022-02-26 08:08:31 +01:00
Drew Moseley d96310d74a Add excludeorgs for gitlab. (#91)
* Add excludeorgs for gitlab.

Gitlab does not explicitly have orgs but they do have Namespaces which
are roughly equivalent.

Signed-off-by: Drew Moseley <drew@moseleynet.net>

* Add includeorgs for gitlab.

Signed-off-by: Drew Moseley <drew@moseleynet.net>
2022-02-24 07:47:06 +01:00
Matthew Toohey b0cd28c761 feat: backup starred repos (#89)
* feat: github starred support

* feat: gitea starred support

* fix: increment gitlab request pages properly

* feat: gitlab starred support
2022-02-22 07:42:05 +01:00
Andreas Wachter eb3704b272 adds wiki logic to github and gitlab 2021-12-31 09:25:47 +01:00
Andreas Wachter 1d4693003a added wiki support to all cvs (except bitbucket) (#76)
* added wiki support to all cvs (except bitbucket)

* added wiki parameter to the example config
2021-12-29 18:27:19 +01:00
Colin DeanandAndreas Wachter ebce0def10 Allows reading a token from a file (#73)
Fixes #69

Co-authored-by: Andreas Wachter <buddyspencer@protonmail.com>
2021-12-29 07:49:02 +01:00
Andreas Wachter 64c0ce8285 gitlab: switched r.Name to r.Path to have unique names 2021-12-20 13:58:53 +01:00
Enrico204 c1669ad8b5 Add support for GitLab wiki repos 2021-12-20 13:01:15 +01:00
Andreas Wachter 9606d0707f gitlab: clones path for subgroups too 2021-12-19 12:13:01 +01:00
Andreas Wachter 16e986fb40 gitlab group repos do not return an owner 2021-12-17 08:27:16 +01:00
Andreas Wachter 93b7c8fad6 added structured checkout mode (#44)
* added structured checkout mode

* path understand now ~
2021-12-16 17:22:44 +01:00
Andreas Wachter 5befa164c5 improved gitlab, gitea and gogs organization/group clones 2021-12-14 08:45:13 +01:00
Andreas Wachter 6ffcda16aa add an include parameter 2021-12-13 11:53:20 +01:00
Andreas Wachter 5a434573a8 switched from panic to fatal 2021-12-13 08:39:38 +01:00
Andreas Wachter 5015f4fb73 switched cvs functions to modules 2021-12-12 19:23:55 +01:00