Giter Club home page Giter Club logo

gitforgefs's Introduction

gitforgefs

Formerly gitlabfs

gitforgefs allows you to mount and navigate git forges (Github, Gitlab, Gitea, etc.) as a FUSE filesystem with every groups, organization, and users represented as a folder and every repositories represented as a symlink pointing on a local clone of the project. This is helpful to automate the organization of your local clones.

To help illustrate, this is the output of tree in a filesystem exposing all the repositories of a github user.

$ tree
.
└── badjware
    ├── aws-cloud-gaming -> /home/marchambault/.local/share/gitforgefs/github.com/257091317
    ├── certbot -> /home/marchambault/.local/share/gitforgefs/github.com/122014287
    ├── certbot-dns-cpanel -> /home/marchambault/.local/share/gitforgefs/github.com/131224547
    ├── certbot-dns-ispconfig -> /home/marchambault/.local/share/gitforgefs/github.com/227005814
    ├── CommonLibVR -> /home/marchambault/.local/share/gitforgefs/github.com/832968971
    ├── community -> /home/marchambault/.local/share/gitforgefs/github.com/424689724
    ├── docker-postal -> /home/marchambault/.local/share/gitforgefs/github.com/132605640
    ├── dotfiles -> /home/marchambault/.local/share/gitforgefs/github.com/192993195
    ├── ecommerce-exporter -> /home/marchambault/.local/share/gitforgefs/github.com/562583906
    ├── FightClub5eXML -> /home/marchambault/.local/share/gitforgefs/github.com/246177579
    ├── gitforgefs -> /home/marchambault/.local/share/gitforgefs/github.com/324617595
    ├── kustomize-plugins -> /home/marchambault/.local/share/gitforgefs/github.com/263480122
    ├── librechat-mistral -> /home/marchambault/.local/share/gitforgefs/github.com/753193720
    ├── PapyrusExtenderSSE -> /home/marchambault/.local/share/gitforgefs/github.com/832969611
    ├── Parsec-Cloud-Preparation-Tool -> /home/marchambault/.local/share/gitforgefs/github.com/258052650
    ├── po3-Tweaks -> /home/marchambault/.local/share/gitforgefs/github.com/832969112
    ├── prometheus-ecs-discovery -> /home/marchambault/.local/share/gitforgefs/github.com/187891900
    ├── simplefuse -> /home/marchambault/.local/share/gitforgefs/github.com/111226611
    ├── tmux-continuum -> /home/marchambault/.local/share/gitforgefs/github.com/160746043
    ├── ttyd -> /home/marchambault/.local/share/gitforgefs/github.com/132514236
    ├── usb-libvirt-hotplug -> /home/marchambault/.local/share/gitforgefs/github.com/128696299
    └── vfio-win10 -> /home/marchambault/.local/share/gitforgefs/github.com/388475049

24 directories, 0 files

Supported forges

Currently, the following forges are supported:

Forge Name in configuration API token permissions, if using an API key
Gitlab gitlab read_user, read_api
Github github repo
Gitea gitea organization: read, repository: read, user: read
Forgejo gitea organization: read, repository: read, user: read

Merge requests to add support to other forges are welcome.

Install

Install go and run

go install github.com/badjware/gitforgefs@latest

The executable will be in $GOPATH/bin/gitforgefs or ~/go/bin/gitforgefs by default. For convenience, add ~/go/bin in your $PATH if not done already.

Usage

Download the example configuration file and edit the default configuration to suit your needs.

Then, you can run gitforgefs as follows:

gitforgefs -config config.yaml /path/to/mountpoint

Stopping gitforgefs will unmount the filesystem. In the event the mountpoint is stuck in a bad state (eg: due to receiving a SIGKILL), you may need to manually cleanup using umount:

sudo umount /path/to/mountpoint

Running automatically on user login

See ./contrib/systemd for instructions on how to configure a systemd service to automatically run gitforgefs on user login.

Caching

Filesystem cache

To reduce the number of calls to the APIs and improve the responsiveness of the filesystem, gitforgefs will cache the content of the forge in memory. If a group or project is renamed, created or deleted from the forge, these change will not appear in the filesystem immediately. To force gitforgefs to refresh its cache, use touch .refresh in the folder to signal gitforgefs to refresh this folder.

Local repository cache

While the filesystem lives in memory, the git repositories that are cloned are saved on disk. By default, they are saved in $XDG_DATA_HOME/gitforgefs or $HOME/.local/share/gitforgefs, if $XDG_DATA_HOME is unset. gitforgefs symlink to the local clone of that repo. The local clone is unaffected by project rename or archive/unarchive in Gitlab and a given project will always point to the correct local folder.

Future improvements

  • Cache persists forever until a manual refresh is requested. Some way to automatically refresh after a timeout would be nice.

Building from the repo

Simply use make to create the executable. The executable will be in bin/.

See make help for all available targets.

gitforgefs's People

Contributors

badjware avatar

Stargazers

Zachary Bergeron avatar  avatar Charles Guertin avatar Le Corre Julien avatar  avatar Camp avatar  avatar  avatar

Watchers

 avatar  avatar Camp avatar Le Corre Julien avatar  avatar

Forkers

hyde404

gitforgefs's Issues

improve error handling

Hello,

I get an issue when I try to reach gitlab without token.
Here's the error I get :

Started git cloner worker routine
Started git cloner worker routine
Started git cloner worker routine
Started git cloner worker routine
Started git cloner worker routine
Started git puller worker routine
Started git puller worker routine
Started git puller worker routine
Started git puller worker routine
Started git puller worker routine
root group fetch fail: failed to fetch group with id 7141: GET https://gitlabxxxxxxx/api/v4/groups/7141: 404 {message: 404 Group Not Found}
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x7f1a15]

We should get an 403 not authorized error instead.

Cheers

Fetch wildcard

Current :

[remote "origin"]
    url = [email protected]:myorg/repo.git
    fetch = +refs/heads/master:refs/remotes/origin/master

The fetch property is only fetching the master branch and I would like to be allowed to fetch other branches.

Wanted :

[remote "origin"]
    url = [email protected]:myorg/repo.git
    fetch = +refs/heads/*:refs/remotes/origin/*

With this configuration, you can then run git fetch and checkout the remote branches locally.

Crash: Concurrent map read and map write

On dev branch.

Stack trace:

fatal error: concurrent map read and map write
goroutine 81 [running]:
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1a9c)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:46 +0x46
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0xc000445af8?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Readdir(0xc000356320, {0x0?, 0x0?})
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:42 +0x62
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).getStream(0xc00028a358?, {0x88f198?, 0xc000115620?}, 0xc000445cc8?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:920 +0xa3
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).setStream(0xc00028a280, 0xc00032e1e0, 0xc000436ce0, 0xc000356320, 0xc0000de0e0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:890 +0xdd
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).ReadDirPlus(0xc00028a280, 0xc00032e1e0, 0xc000436ce0, 0xc0006b21e0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:975 +0xff
github.com/hanwen/go-fuse/v2/fuse.doReadDirPlus(0xc00037af20, 0xc000436b48)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:174 +0xc2
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc000436b48)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 84
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 1 [semacquire, 1445 minutes]:
sync.runtime_Semacquire(0x554b00?)
	/usr/lib/go/src/runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0xc000322540?)
	/usr/lib/go/src/sync/waitgroup.go:116 +0x48
github.com/hanwen/go-fuse/v2/fuse.(*Server).Wait(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:406
github.com/badjware/gitlabfs/fstree.Start(0xc0000a2120, {0xc0000e8540, 0x32}, {0xc0000a2430, 0x1, 0x1}, 0xc0000162a0, 0x0)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/root.go:74 +0x3ab
main.main()
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/main.go:76 +0x613
goroutine 34 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a000)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 35 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a0c0)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 36 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a180)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 37 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a240)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 38 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a300)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 39 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a3c0)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 40 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a480)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 41 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a540)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 42 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a600)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 43 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a6c0)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 44 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a780)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 45 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a840)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 46 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a900)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 47 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017a9c0)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 48 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017aa80)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 49 [chan receive, 1445 minutes]:
github.com/klauspost/compress/zstd.(*blockDec).startDecoder(0xc00017ab40)
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:211 +0x97
created by github.com/klauspost/compress/zstd.newBlockDec in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/klauspost/[email protected]/zstd/blockdec.go:117 +0x165
goroutine 23 [select]:
github.com/vmihailenco/taskq/v3.(*Consumer).waitMessage(0xc00020e0c0, {0x88efa0, 0xb331a0}, 0xc00007c050)
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:496 +0x105
github.com/vmihailenco/taskq/v3.(*Consumer).worker(0xc00020e0c0, {0x88efa0, 0xb331a0}, 0x0)
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:471 +0x111
github.com/vmihailenco/taskq/v3.(*Consumer).addWorker.func1()
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:276 +0x5a
created by github.com/vmihailenco/taskq/v3.(*Consumer).addWorker in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:274 +0x126
goroutine 24 [select]:
github.com/vmihailenco/taskq/v3.(*Consumer).autotune(0xc00020e0c0, {0x88efa0, 0xb331a0}, 0xc0000a6540)
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:808 +0x1ed
github.com/vmihailenco/taskq/v3.(*Consumer).Start.func1()
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:163 +0x5b
created by github.com/vmihailenco/taskq/v3.(*Consumer).Start in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/vmihailenco/taskq/[email protected]/consumer.go:161 +0x14b
goroutine 2 [runnable]:
github.com/badjware/gitlabfs/fstree.staticInoGenerator(...)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/root.go:104
created by github.com/badjware/gitlabfs/fstree.Start in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/root.go:62 +0x245
goroutine 83 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc0002aac60)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc0002aac60, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc0002aac60?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc0002aac60)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x2?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc0002aac60, {0x88cb80, 0xc00028a140}, {0xc0006df401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc0002aac60, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc0002aac60)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0004d0ba0)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0004d0ba0, {0x753480, 0xc0003e9180})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).GetGroup(0xc00005e128, {0x75dbc0?, 0xc0002901f0?}, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:140 +0x125
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1f87)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:55 +0x12c
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b720, {0x88f198, 0xc000115260}, {0xc0002901e0, 0x4}, 0xc000115260?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000115260, 0x0?, {0xc0002901e0?, 0x4adcba?}, 0xc000252590)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0000ba840, 0xc000252620, {0xc0002901e0, 0x4}, 0xc000252590)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc000252488?, 0xc000252488)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc000252488)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 100
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 67 [syscall, 1445 minutes]:
os/signal.signal_recv()
	/usr/lib/go/src/runtime/sigqueue.go:152 +0x29
os/signal.loop()
	/usr/lib/go/src/os/signal/signal_unix.go:23 +0x13
created by os/signal.Notify.func1.1 in goroutine 1
	/usr/lib/go/src/os/signal/signal.go:151 +0x1f
goroutine 100 [runnable]:
syscall.Syscall6(0x106, 0xffffffffffffff9c, 0xc000c80050, 0xc000c82038, 0x0, 0x0, 0x0)
	/usr/lib/go/src/syscall/syscall_linux.go:91 +0x39
syscall.fstatat(0xffffffffffffff9c, {0xc000c80000?, 0x46?}, 0xc000c82038, 0x0)
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:1457 +0x9b
syscall.Stat(...)
	/usr/lib/go/src/syscall/syscall_linux_amd64.go:67
os.statNolog.func1(...)
	/usr/lib/go/src/os/stat_unix.go:32
os.ignoringEINTR(...)
	/usr/lib/go/src/os/file_posix.go:251
os.statNolog({0xc000c80000, 0x46})
	/usr/lib/go/src/os/stat_unix.go:31 +0x52
os.Stat({0xc000c80000, 0x46})
	/usr/lib/go/src/os/stat.go:13 +0x2c
github.com/badjware/gitlabfs/git.(*gitClient).FetchLocalRepositoryPath(0xc0000f83c0, {0x88ea38, 0xc0001467c0})
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/git/client.go:108 +0x154
github.com/badjware/gitlabfs/fstree.(*repositoryNode).Readlink(0xc0002a4870, {0x23?, 0x0?})
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/repository.go:40 +0x39
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Readlink(0x48a1dd?, 0xc0002a9200, 0xc000437a60)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:596 +0xb5
github.com/hanwen/go-fuse/v2/fuse.doReadlink(0xc0004378c8?, 0xc0004378c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:328 +0x2f
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0004378c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
github.com/hanwen/go-fuse/v2/fuse.(*Server).Serve(0xc00037af20)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:378 +0x29
created by github.com/hanwen/go-fuse/v2/fs.Mount in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/mount.go:32 +0x14a
goroutine 114 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc00065c5a0)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc00065c5a0, {0x0?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc00065c5a0?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc00065c5a0)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x18?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc00065c5a0, {0x88cb80, 0xc00028a140}, {0xc000477401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc00065c5a0, {0x410126?, 0xc0004774c8?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc00065c5a0)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0004d0510)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0004d0510, {0x757b40, 0xc0001145a0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).ListGroupProjects(0xc00005e128, {0x75dbc0?, 0xc0006473f0?}, 0xc000726c60, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:358 +0x148
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroupContent(0xc0002881e0, 0xc000287f40)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:146 +0x3aa
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:115 +0xb2
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b220, {0x88f198, 0xc000114108}, {0xc000646030, 0x4}, 0xc000114108?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000114108, 0x0?, {0xc000646030?, 0x4adcba?}, 0xc0004367d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc00032e180, 0xc000436860, {0xc000646030, 0x4}, 0xc0004367d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc0004366c8?, 0xc0004366c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0004366c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 100
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 32 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc00033bb00)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc00033bb00, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc00033bb00?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc00033bb00)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x18?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc00033bb00, {0x88cb80, 0xc00028a140}, {0xc000267401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc00033bb00, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc00033bb00)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0004d03d0)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0004d03d0, {0x757b40, 0xc0001144b0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).ListGroupProjects(0xc00005e128, {0x75dbc0?, 0xc000646f20?}, 0xc000726990, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:358 +0x148
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroupContent(0xc0002881e0, 0xc00081a0c0)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:146 +0x3aa
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:115 +0xb2
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b4a0, {0x88f198, 0xc000462120}, {0xc000014048, 0x4}, 0xc000462120?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000462120, 0x0?, {0xc000014048?, 0x4adcba?}, 0xc0005d0350)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0003224e0, 0xc0005d03e0, {0xc000014048, 0x4}, 0xc0005d0350)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc0005d0248?, 0xc0005d0248)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0005d0248)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 114
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 101 [chan receive, 1445 minutes]:
github.com/badjware/gitlabfs/fstree.signalHandler(0xc0000a2120, 0xc000322540, 0xc00037af20)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/root.go:116 +0x14c
created by github.com/badjware/gitlabfs/fstree.Start in goroutine 1
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/root.go:70 +0x337
goroutine 135 [syscall]:
syscall.Syscall(0x0, 0xa, 0xc0008641b0, 0x100d0)
	/usr/lib/go/src/syscall/syscall_linux.go:69 +0x25
syscall.read(0xc00037afb8?, {0xc0008641b0?, 0xc000929db8?, 0x0?})
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:736 +0x38
syscall.Read(...)
	/usr/lib/go/src/syscall/syscall_unix.go:181
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest.func1(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:291
github.com/hanwen/go-fuse/v2/fuse.handleEINTR(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:266
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest(0xc00037af20, 0xc8?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:289 +0x1d5
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:434 +0x85
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 114
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 136 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc00033b8c0)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc00033b8c0, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc00033b8c0?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc00033b8c0)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x18?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc00033b8c0, {0x88cb80, 0xc00028a140}, {0xc000263401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc00033b8c0, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc00033b8c0)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0004d0290)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0004d0290, {0x757b40, 0xc000114390})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).ListGroupProjects(0xc00005e128, {0x75dbc0?, 0xc000646620?}, 0xc0007265a0, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:358 +0x148
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroupContent(0xc0002881e0, 0xc000287e40)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:146 +0x3aa
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:115 +0xb2
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011ad20, {0x88f198, 0xc000196018}, {0xc0000b61a0, 0x4}, 0xc000196018?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000196018, 0x0?, {0xc0000b61a0?, 0x4adc06?}, 0xc0001f2e90)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc000a98060, 0xc0001f2f20, {0xc0000b61a0, 0x4}, 0xc0001f2e90)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc0001f2d88?, 0xc0001f2d88)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0001f2d88)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 114
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 115 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc0008d0c60)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc0008d0c60, {0x0?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc0008d0c60?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc0008d0c60)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x7f590457c2a8?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc0008d0c60, {0x88cb80, 0xc00028a140}, {0xc000bbf401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc0008d0c60, {0xc000bbf4f8?, 0x2a?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc0008d0c60)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc000b9e660)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc000b9e660, {0x753480, 0xc0009c2000})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).GetGroup(0xc00005e128, {0x75dbc0?, 0xc00044e948?}, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:140 +0x125
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1ab8)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:55 +0x12c
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b680, {0x88f198, 0xc0000b0de0}, {0xc00044e930, 0xa}, 0xc0000b0de0?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc0000b0de0, 0x0?, {0xc00044e930?, 0x4adcba?}, 0xc0002527d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0000ba240, 0xc000252860, {0xc00044e930, 0xa}, 0xc0002527d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc0002526c8?, 0xc0002526c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0002526c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 83
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 117 [syscall]:
syscall.Syscall(0x0, 0xa, 0xc00090c1b0, 0x100d0)
	/usr/lib/go/src/syscall/syscall_linux.go:69 +0x25
syscall.read(0xc00037afb8?, {0xc00090c1b0?, 0xc0000b0f30?, 0x4?})
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:736 +0x38
syscall.Read(...)
	/usr/lib/go/src/syscall/syscall_unix.go:181
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest.func1(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:291
github.com/hanwen/go-fuse/v2/fuse.handleEINTR(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:266
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest(0xc00037af20, 0x48?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:289 +0x1d5
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:434 +0x85
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 115
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 290 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc00025a480)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc00025a480, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc00025a480?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc00025a480)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x18?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc00025a480, {0x88cb80, 0xc00028a140}, {0xc000473401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc00025a480, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc00025a480)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0003ce2b0)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0003ce2b0, {0x757b40, 0xc000196408})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).ListGroupProjects(0xc00005e128, {0x75dbc0?, 0xc0000b7478?}, 0xc0004dc480, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:358 +0x148
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroupContent(0xc0002881e0, 0xc000287d40)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:146 +0x3aa
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:115 +0xb2
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc0000f8460, {0x88f198, 0xc0000120c0}, {0xc0004d2020, 0x4}, 0xc0000120c0?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc0000120c0, 0x0?, {0xc0004d2020?, 0x4adcba?}, 0xc00017e7d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc000323a40, 0xc00017e860, {0xc0004d2020, 0x4}, 0xc00017e7d0)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc00017e6c8?, 0xc00017e6c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc00017e6c8)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 83
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 13855 [select]:
net/http.(*http2clientStream).writeRequest(0xc000524180, 0xc0003e5d40)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc000524180, 0xc00023cfb8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 280
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 109 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc0008d0fc0)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc0008d0fc0, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc0008d0fc0?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc0008d0fc0)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x0?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc0008d0fc0, {0x88cb80, 0xc00028a140}, {0xc000a4d401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc0008d0fc0, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc0008d0fc0)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc000b9e700)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc000b9e700, {0x753480, 0xc0009c21c0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).GetGroup(0xc00005e128, {0x75dbc0?, 0xc00044f698?}, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:140 +0x125
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1ab6)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:55 +0x12c
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b540, {0x88f198, 0xc0000b0ea0}, {0xc00044f680, 0xa}, 0xc0000b0ea0?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc0000b0ea0, 0x0?, {0xc00044f680?, 0x4adcba?}, 0xc00017f310)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0008ba120, 0xc00017f3a0, {0xc00044f680, 0xa}, 0xc00017f310)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc00017f208?, 0xc00017f208)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc00017f208)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 85
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 13878 [select]:
net/http.(*http2clientStream).writeRequest(0xc000b8a180, 0xc0008d0fc0)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc000b8a180, 0xc00023dfb8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 109
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 275 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc00033bd40)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc00033bd40, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc00033bd40?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc00033bd40)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x18?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc00033bd40, {0x88cb80, 0xc00028a140}, {0xc0001c5401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc00033bd40, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc00033bd40)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0004d0480)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0004d0480, {0x757b40, 0xc000114540})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).ListGroupProjects(0xc00005e128, {0x75dbc0?, 0xc000647288?}, 0xc000726b40, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:358 +0x148
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroupContent(0xc0002881e0, 0xc000287d80)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:146 +0x3aa
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:115 +0xb2
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b400, {0x88f198, 0xc000a0e360}, {0xc0008a2268, 0x4}, 0xc000a0e360?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000a0e360, 0x0?, {0xc0008a2268?, 0x4adcba?}, 0xc0001f2a10)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0008ba000, 0xc0001f2aa0, {0xc0008a2268, 0x4}, 0xc0001f2a10)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc0001f2908?, 0xc0001f2908)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc0001f2908)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 290
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 276 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc0008877a0)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc0008877a0, {0x0?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc0008877a0?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc0008877a0)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x7f590577b328?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc0008877a0, {0x88cb80, 0xc00028a140}, {0xc0007f1401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc0008877a0, {0xc0007f14f8?, 0x2a?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc0008877a0)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc000941060)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc000941060, {0x753480, 0xc000a2e000})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).GetGroup(0xc00005e128, {0x75dbc0?, 0xc0003b46a8?}, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:140 +0x125
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1aba)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:55 +0x12c
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b360, {0x88f198, 0xc000512858}, {0xc0003b4698, 0x4}, 0xc000512858?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc000512858, 0x0?, {0xc0003b4698?, 0x4adcba?}, 0xc000252a10)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0000ba8a0, 0xc000252aa0, {0xc0003b4698, 0x4}, 0xc000252a10)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc000252908?, 0xc000252908)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc000252908)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 83
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 277 [syscall]:
syscall.Syscall(0x0, 0xa, 0xc00096c1b0, 0x100d0)
	/usr/lib/go/src/syscall/syscall_linux.go:69 +0x25
syscall.read(0xc00037afb8?, {0xc00096c1b0?, 0xc000654750?, 0xc0002166d0?})
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:736 +0x38
syscall.Read(...)
	/usr/lib/go/src/syscall/syscall_unix.go:181
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest.func1(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:291
github.com/hanwen/go-fuse/v2/fuse.handleEINTR(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:266
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest(0xc00037af20, 0x88?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:289 +0x1d5
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:434 +0x85
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 83
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 278 [syscall]:
syscall.Syscall(0x0, 0xa, 0xc0009ae1b0, 0x100d0)
	/usr/lib/go/src/syscall/syscall_linux.go:69 +0x25
syscall.read(0xc00037afb8?, {0xc0009ae1b0?, 0xc00025edf8?, 0x100d0?})
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:736 +0x38
syscall.Read(...)
	/usr/lib/go/src/syscall/syscall_unix.go:181
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest.func1(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:291
github.com/hanwen/go-fuse/v2/fuse.handleEINTR(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:266
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest(0xc00037af20, 0x88?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:289 +0x1d5
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:434 +0x85
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 277
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 279 [syscall]:
syscall.Syscall(0x0, 0xa, 0xc0005361b0, 0x10080)
	/usr/lib/go/src/syscall/syscall_linux.go:69 +0x25
syscall.read(0xc00037afb8?, {0xc0005361b0?, 0xc0008beba0?, 0x100d0?})
	/usr/lib/go/src/syscall/zsyscall_linux_amd64.go:736 +0x38
syscall.Read(...)
	/usr/lib/go/src/syscall/syscall_unix.go:181
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest.func1(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:291
github.com/hanwen/go-fuse/v2/fuse.handleEINTR(...)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:266
github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest(0xc00037af20, 0xc8?)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:289 +0x1d5
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:434 +0x85
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 277
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 280 [select]:
net/http.(*http2ClientConn).RoundTrip(0xc000002000, 0xc0003e5d40)
	/usr/lib/go/src/net/http/h2_bundle.go:8362 +0x434
net/http.(*http2Transport).RoundTripOpt(0xc0002a42d0, 0xc0003e5d40, {0x80?})
	/usr/lib/go/src/net/http/h2_bundle.go:7630 +0x1b1
net/http.(*http2Transport).RoundTrip(...)
	/usr/lib/go/src/net/http/h2_bundle.go:7579
net/http.http2noDialH2RoundTripper.RoundTrip({0xc00028a140?}, 0xc0003e5d40?)
	/usr/lib/go/src/net/http/h2_bundle.go:10206 +0x1a
net/http.(*Transport).roundTrip(0xc00028a140, 0xc0003e5d40)
	/usr/lib/go/src/net/http/transport.go:553 +0x39c
net/http.(*Transport).RoundTrip(0x0?, 0x88cb80?)
	/usr/lib/go/src/net/http/roundtrip.go:17 +0x13
net/http.send(0xc0003e5d40, {0x88cb80, 0xc00028a140}, {0xc0005d7401?, 0x418505?, 0x0?})
	/usr/lib/go/src/net/http/client.go:259 +0x5e4
net/http.(*Client).send(0xc000016210, 0xc0003e5d40, {0x41015b?, 0x1?, 0x0?})
	/usr/lib/go/src/net/http/client.go:180 +0x98
net/http.(*Client).do(0xc000016210, 0xc0003e5d40)
	/usr/lib/go/src/net/http/client.go:724 +0x8dc
net/http.(*Client).Do(...)
	/usr/lib/go/src/net/http/client.go:590
github.com/hashicorp/go-retryablehttp.(*Client).Do(0xc000282620, 0xc0008ea7c0)
	/home/marchambault/go/pkg/mod/github.com/hashicorp/[email protected]/client.go:591 +0x2ca
github.com/xanzy/go-gitlab.(*Client).Do(0xc000004388, 0xc0008ea7c0, {0x753480, 0xc000560000})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/gitlab.go:646 +0x588
github.com/xanzy/go-gitlab.(*GroupsService).GetGroup(0xc00005e128, {0x75dbc0?, 0xc00070e248?}, {0x0, 0x0, 0x0})
	/home/marchambault/go/pkg/mod/github.com/xanzy/[email protected]/groups.go:140 +0x125
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).fetchGroup(0xc0002881e0, 0x1ab7)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/group.go:55 +0x12c
github.com/badjware/gitlabfs/platforms/gitlab.(*gitlabClient).FetchGroupContent(0xc0002881e0, 0x4?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/platforms/gitlab/client.go:111 +0x90
github.com/badjware/gitlabfs/fstree.(*groupNode).Lookup(0xc00011b5e0, {0x88f198, 0xc0008be9c0}, {0xc00070e228, 0x7}, 0xc0008be9c0?)
	/home/marchambault/go/pkg/mod/github.com/badjware/[email protected]/fstree/group.go:73 +0x84
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).lookup(0xc00028a280?, 0xc0008be9c0, 0x0?, {0xc00070e228?, 0x4adcba?}, 0xc000252c50)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:340 +0xaf
github.com/hanwen/go-fuse/v2/fs.(*rawBridge).Lookup(0xc00028a280, 0xc0000ba900, 0xc000252ce0, {0xc00070e228, 0x7}, 0xc000252c50)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fs/bridge.go:323 +0xb0
github.com/hanwen/go-fuse/v2/fuse.doLookup(0xc000252b48?, 0xc000252b48)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/opcode.go:333 +0x67
github.com/hanwen/go-fuse/v2/fuse.(*Server).handleRequest(0xc00037af20, 0xc000252b48)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:483 +0x253
github.com/hanwen/go-fuse/v2/fuse.(*Server).loop(0xc00037af20, 0x1)
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:456 +0x118
created by github.com/hanwen/go-fuse/v2/fuse.(*Server).readRequest in goroutine 277
	/home/marchambault/go/pkg/mod/github.com/hanwen/go-fuse/[email protected]/fuse/server.go:323 +0x55e
goroutine 13973 [select]:
net/http.(*http2clientStream).writeRequest(0xc0003ac300, 0xc00033b8c0)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0003ac300, 0xc000a8a7b8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 136
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13975 [select]:
net/http.(*http2clientStream).writeRequest(0xc0003ac600, 0xc00033bb00)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0003ac600, 0xc000a8a7b8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 32
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13877 [select]:
net/http.(*http2clientStream).writeRequest(0xc000b8a000, 0xc0008d0c60)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc000b8a000, 0xc000cc4fb8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 115
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13976 [select]:
net/http.(*http2clientStream).writeRequest(0xc0003ac780, 0xc00033bd40)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0003ac780, 0xc000a8a7b8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 275
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13819 [IO wait]:
internal/poll.runtime_pollWait(0x7f5914bcad78, 0x72)
	/usr/lib/go/src/runtime/netpoll.go:345 +0x85
internal/poll.(*pollDesc).wait(0xc00002a300?, 0xc0008ca000?, 0x0)
	/usr/lib/go/src/internal/poll/fd_poll_runtime.go:84 +0x27
internal/poll.(*pollDesc).waitRead(...)
	/usr/lib/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00002a300, {0xc0008ca000, 0x1800, 0x1800})
	/usr/lib/go/src/internal/poll/fd_unix.go:164 +0x27a
net.(*netFD).Read(0xc00002a300, {0xc0008ca000?, 0x7f590457b3a8?, 0xc000ba8cc0?})
	/usr/lib/go/src/net/fd_posix.go:55 +0x25
net.(*conn).Read(0xc0008b6038, {0xc0008ca000?, 0xc00006f918?, 0x41015b?})
	/usr/lib/go/src/net/net.go:179 +0x45
crypto/tls.(*atLeastReader).Read(0xc000ba8cc0, {0xc0008ca000?, 0x0?, 0xc000ba8cc0?})
	/usr/lib/go/src/crypto/tls/conn.go:806 +0x3b
bytes.(*Buffer).ReadFrom(0xc0002e82b0, {0x88d3c0, 0xc000ba8cc0})
	/usr/lib/go/src/bytes/buffer.go:211 +0x98
crypto/tls.(*Conn).readFromUntil(0xc0002e8008, {0x88d440, 0xc0008b6038}, 0xc00006f960?)
	/usr/lib/go/src/crypto/tls/conn.go:828 +0xde
crypto/tls.(*Conn).readRecordOrCCS(0xc0002e8008, 0x0)
	/usr/lib/go/src/crypto/tls/conn.go:626 +0x3cf
crypto/tls.(*Conn).readRecord(...)
	/usr/lib/go/src/crypto/tls/conn.go:588
crypto/tls.(*Conn).Read(0xc0002e8008, {0xc000b00000, 0x1000, 0xc00093e700?})
	/usr/lib/go/src/crypto/tls/conn.go:1370 +0x156
bufio.(*Reader).Read(0xc000179d40, {0xc00038a200, 0x9, 0xac00a0?})
	/usr/lib/go/src/bufio/bufio.go:241 +0x197
io.ReadAtLeast({0x88cce0, 0xc000179d40}, {0xc00038a200, 0x9, 0x9}, 0x9)
	/usr/lib/go/src/io/io.go:335 +0x90
io.ReadFull(...)
	/usr/lib/go/src/io/io.go:354
net/http.http2readFrameHeader({0xc00038a200, 0x9, 0x6d7890?}, {0x88cce0?, 0xc000179d40?})
	/usr/lib/go/src/net/http/h2_bundle.go:1638 +0x65
net/http.(*http2Framer).ReadFrame(0xc00038a1c0)
	/usr/lib/go/src/net/http/h2_bundle.go:1905 +0x85
net/http.(*http2clientConnReadLoop).run(0xc00006ffa8)
	/usr/lib/go/src/net/http/h2_bundle.go:9342 +0x12c
net/http.(*http2ClientConn).readLoop(0xc000002000)
	/usr/lib/go/src/net/http/h2_bundle.go:9237 +0x65
created by net/http.(*http2Transport).newClientConn in goroutine 13818
	/usr/lib/go/src/net/http/h2_bundle.go:7887 +0xca6
goroutine 13980 [select]:
net/http.(*http2clientStream).writeRequest(0xc0003acd80, 0xc0002aac60)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0003acd80, 0xc000a8a7b8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 83
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13963 [select]:
net/http.(*http2clientStream).writeRequest(0xc0002a6300, 0xc00025a480)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0002a6300, 0x0?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 290
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13986 [select]:
net/http.(*http2clientStream).writeRequest(0xc000a3c000, 0xc0008877a0)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc000a3c000, 0xc000847fb8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 276
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed
goroutine 13977 [select]:
net/http.(*http2clientStream).writeRequest(0xc0003ac900, 0xc00065c5a0)
	/usr/lib/go/src/net/http/h2_bundle.go:8530 +0xacc
net/http.(*http2clientStream).doRequest(0xc0003ac900, 0xc000a8a7b8?)
	/usr/lib/go/src/net/http/h2_bundle.go:8392 +0x18
created by net/http.(*http2ClientConn).RoundTrip in goroutine 114
	/usr/lib/go/src/net/http/h2_bundle.go:8298 +0x2ed

Init property on clone compatibility with older git versions

I am running git version 2.25.1 on Ubuntu Focal and when setting the property

git:
  on_clone: init

the underlying command is using --initial-branch argument which does not exist in this git version.

The program should be aware of the git version used and user alternative argument or use a retro compatible command.

Zero depth is not working

In the configuration file, using

git:
  depth: 0

the underlying command is trying a git command with --depth 0 arguments and git do not recognize it.

fatal: depth 0 is not a positive number

Gitlabfs should not use this argument.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.