1
1
mirror of https://github.com/cooperspencer/gickup synced 2024-10-18 13:48:07 +02:00
Commit Graph

25 Commits

Author SHA1 Message Date
Andreas Wachter
8a86bc4904
backup contributed repos from github (#141) 2023-02-28 19:11:36 +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
aa388bb933 cleanup 2023-02-18 16:47:46 +01:00
Andreas Wachter
ce069a08c0 updated modules 2023-02-18 16:47:17 +01:00
Andreas Wachter
732de324da
updated onedev (#132) 2023-01-22 11:49:27 +01:00
Andreas Wachter
6ddf340744
added possibility to add date to path (#130)
* added possibility to add date to path

* adds zip functionality

* added keep parameter

* cleanup

* keep parameter creates files with the timestamp in repo name directory

* fixed clone with keep without structured=true

* remove search
2023-01-08 20:22:07 +01:00
Andreas Wachter
156f6f52e4
updated onedev (#125) 2022-12-03 13:25:46 +01:00
Andreas Wachter
041a5a88b7
handle multiple configs (#114)
* handle multiple configs

* upgrade golangci_lint_version

* SnakeCase and replaces ioutil with os
2022-10-03 19:20:19 +02:00
Andreas Wachter
6461754630
added onedev functionality (#111)
* added onedev functionality

* go mod tidy
2022-08-11 21:31:03 +02:00
Andreas Wachter
3ae5a3a463
backup any repo (#110)
* added any module

* update dependencies

* clone local repos too

* fixed the separator and adjusted example config and README.md

* go mod tidy

* ran gofumpt and goimports

* cleaned up a bit and implemented timeformat as environment variable
2022-07-18 13:59:20 +02: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
Andreas Wachter
70ddbc829c updated dependencies 2022-02-22 08:15:54 +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
Colin Dean
d98ccdb454
Adds Prometheus metrics when in scheduled mode (#62)
* WIP: Adds InfluxDB2 metrics

* Adds basic Prometheus metrics

It's much easier to implement so I'm switching to focusing on it for
now.

* Add some more counters and gauges

Use some labeled counters for backup destinations

* Extract methods for local repo clone and update

It was a little difficult to understand what was going where, esp. with
Go's verbose logging, so I extracted methods where appropriate. This
should also ease some testing concerns down the road.

* Fixes missing y in yaml

* Refactor next run logging

* Add run start and end log messaging

* Adds prom histogram for job duration

* Adds a prom gauge for number of repos discovered

* Switch prom job duration to a summary

I'm really not sure if it should be a summary or a histogram, but
reading about both, it seems like it would be more valuable with
quantiles and not buckets, so summary it is.

* Drop InfluxDB integration for now

We can revert this if we decide to implement InfluxDB after all.
@cooperspencer prefers Prometheus and frankly it's a lot easier to set
up so I'll use it, too, since I already have it running in my
environment anyways!
2021-12-29 07:31:19 +01:00
Andreas Wachter
dfe400ecbb Added logger functionality 2021-12-13 08:15:48 +01:00
Andreas Wachter
e8e33da6a6 implemented a cron mod 2021-12-12 22:12:47 +01:00
Andreas Wachter
5015f4fb73 switched cvs functions to modules 2021-12-12 19:23:55 +01:00
Andreas Wachter
3508c7bc64 upgraded libraries 2021-12-03 10:17:33 +01:00
Andreas Wachter
eba517de27 add ssh key if not in known_hosts 2021-12-03 07:34:08 +01:00
Andreas Wachter
0576ed76b5 updated dependencies 2021-10-11 14:33:15 +02:00
Andreas Wachter
950fafe471 upgraded go-git to v5 2021-06-04 11:01:44 +02:00
Andreas Wachter
4fb2d346f6 added bitbucket for the clone #3 2021-06-01 21:43:25 +02:00
Andreas Wachter
1b0a503680 added gopkg.in/src-d/go-git.v4 in order to support ssh and user/password auth 2021-05-31 23:11:45 +02:00
Andreas Wachter
12e5d90877 added proper logging 2021-05-31 11:45:54 +02:00
Andreas Wachter
12547a69d0 init 2021-05-30 23:04:17 +02:00