44 Commits
Author SHA1 Message Date
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