Alexander Narsudinov
d3e89f164b
Use atomics to make writing of results safe in removeObjectsOneByOne
...
Previous implementation didn't have any synchronization mechanism for
goroutines that does the work.
There are multiple approaches to make it work correctly, let's start with
the simplest - atomics.
2023-10-27 20:05:02 +02:00
Alexander Narsudinov
da3638eb56
Fix the goroutine variable capturing in removeObjectsOneByOne
...
This patch fixes classic golang for-loop variable capturing issue that
leeds to incorrect results in goroutines.
This is fixed in latest versions of golang, but this project uses go 1.15,
so it won't work as expected by an author.
2023-10-27 19:59:03 +02:00
x.zhou
680a649a21
Fix the wrong argument for credentials.NewStaticV4()
2023-06-09 16:10:33 +08:00
Vitaliy Filippov
ce0d5e7704
Delete objects in parallel when deleting auto-created volumes
2021-07-27 13:10:45 +03:00
Vitaliy Filippov
55013c94bc
Add 3 FIXMEs
2021-07-26 21:11:32 +03:00
Vitaliy Filippov
2089c40001
Do not store additional metadata in .metadata.json in the bucket itself
2021-07-26 21:11:32 +03:00
Vitaliy Filippov
9562699f1b
Remove additional FSPath prefix
2021-07-19 15:41:45 +03:00
Vitaliy Filippov
d78d476d6d
Add mount options support
2021-07-16 16:12:57 +03:00
boxjan
8449c1e2e9
Although get a EOF error, we should still know it
2021-04-09 21:45:52 +08:00
boxjan
fa9ef78362
fix problem: log format; fs meta;
2021-04-08 22:35:31 +08:00
boxjan
7b5a3f6f4d
fix problem
...
* rclone use 1.54.1
* add EnsureFSMetaExist func
* fix removeObjects have err check
* add removeObjectsOneByOne, when removeObjects failed, will try to use it
* fix repeat in yaml
2021-04-08 00:06:56 +08:00
Cyrill Troxler
b11261ebe7
Only delete bucket if the volume is the alone user
2021-04-06 19:24:09 +02:00
Cyrill Troxler
26cb1d95e8
Use volume ID as a prefix if the bucket is fixed in the storage class
...
With this, each volume will get its own prefix within the bucket if it
is configured in the storage class. This also ensures backwards
compatibility with older volumes that have been created in earlier
versions of csi-s3.
2021-04-05 15:07:16 +02:00
Cyrill Troxler
7528b3297c
Rename packages
...
Create separate packages for driver, s3 client and mounters.
2021-04-05 12:10:20 +02:00
Lin Yiming
fbc265dff7
If bucket is not created by csi-s3, it will not be deleted by csi-s3 automatically
2021-01-22 10:15:21 +08:00
Lin Yiming
fae1210aaf
Do not create fs prefix for existing bucket
2021-01-22 10:15:21 +08:00
Lin Yiming
7e1842c274
mount existed bucket
2021-01-22 10:15:21 +08:00
Lin Yiming
a68fc3379e
upgrade minio-go library to v7
2021-01-22 10:15:21 +08:00
Carl Lange
95962c2412
Use NewWithRegion not minio's region resolution
2019-06-30 16:32:59 +01:00
Cyrill Troxler
fb6584d7e4
Release new version
2019-05-18 11:55:37 +02:00
Cyrill Troxler
e133baaba1
Clean up old references to encryptionKey
2019-05-16 18:15:45 +02:00
Cyrill Troxler
f80104f215
Remove s3ql
...
s3ql does not work very well in a dynamic environment like k8s.
Also as it needs a ton of dependencies just to get it built makes
it hard to maintain.
2019-05-15 21:06:28 +02:00
Cyrill Troxler
76fc704c31
Do not use sigv2 with s3fs
2019-05-15 21:00:16 +02:00
Cyrill Troxler
cc38b81678
Add log message when mounting
2019-05-15 21:00:16 +02:00
Cyrill Troxler
152eeb1d14
Update README and deployment, split up dockerfile
2019-05-15 21:00:16 +02:00
Cyrill Troxler
c6b3b5199d
Upgrade csi-spec, fix tests
2019-05-15 21:00:16 +02:00
Cyrill Troxler
4e8bbf0126
Supply credentials using volume secrets instead of cli config
2019-05-15 21:00:02 +02:00
Cyrill Troxler
ea4022e9c6
Add rclone mounter ( #15 )
2019-03-07 20:27:02 +01:00
Cyrill Troxler
95d7e48328
Revert capabilites to only allow RWO ( #12 )
2019-02-28 21:09:56 +01:00
Lennard
83723f4be0
Feature/update to csi 1.0 ( #9 )
...
* updated all image to v1.0.1 csi
* Updated golang code to csi 1.0 compatible names
* added comment
2019-02-28 19:34:03 +01:00
Cyrill Troxler
58912e4734
Sanitize the volumeID before creation
...
* Bucket names cannot contain upper case letters
* Bucket names cannot be longer than 63 chars
2019-02-06 20:02:28 +01:00
Cyrill Troxler
728ef7d7e7
Fix s3backer with AWS
...
If we set baseURL with AWS s3backer will fail to authenticate.
2019-01-19 14:43:54 +01:00
Cyrill Troxler
709162c21b
Set correct vendor version and display it on launch
2019-01-19 14:40:58 +01:00
Cyrill Troxler
d8f966a3de
Improve bucket error messages
2019-01-19 14:39:33 +01:00
Cyrill Troxler
9291d09baa
Add ci pipeline with GitLab ( #3 )
...
* Add automated testing
* Create loop device while staging s3backer
2018-08-03 20:30:46 +02:00
Cyrill Troxler
8a31ac89c9
Improve bucket error messages
2018-07-29 16:19:26 +02:00
Cyrill Troxler
df04f577d2
Rename to just csi-s3
2018-07-29 14:49:35 +02:00
Cyrill Troxler
c7abe28ade
Allow configuring mounter via storageclass parameter
2018-07-29 14:36:13 +02:00
Cyrill Troxler
e46440d1fa
Add fs prefix (directory)
...
This ensures the fs root is clean and does not mess with
the metadata. Also in the future this will allow for multiple
filesystems to be created in one bucket.
2018-07-27 21:37:32 +02:00
Cyrill Troxler
1caf469966
Implement a metadata file and correct sizing
...
As the controller does not mount/create the fs we have to store the capacity somewhere so the node knows about it.
2018-07-27 13:28:52 +02:00
Cyrill Troxler
0010066fe3
Implement stage/unstage
...
This helps the reliability of s3backer as the fuse mount
is done on NodeStageVolume and only once per volume per
node.
2018-07-26 22:43:51 +02:00
Cyrill Troxler
1fe218a568
Format using nodeserver, not controller
2018-07-26 20:13:40 +02:00
Cyrill Troxler
f8bd74afb9
Fix log output
2018-07-23 20:58:25 +02:00
Cyrill Troxler
a468d955bc
Check for defunct process before waiting for it
2018-07-23 20:58:25 +02:00
Cyrill Troxler
82ab4b0983
Add experimental s3backer mounter
...
This also adds some generic handling of stale umounts.
Fuse returns immediately and does not indicate that
the mounter has finished writing to the backend.
The process finding is sort of hacky as I could not
find a better way to get to the PID from a fuse mount.
2018-07-23 20:58:25 +02:00
Cyrill Troxler
b412e81977
Fix s3ql unmount
2018-07-22 12:41:37 +02:00
Cyrill Troxler
8cd8f6b6cd
Mounter can now only be specified through flag
2018-07-22 12:41:37 +02:00
Cyrill Troxler
9d5d84ebfb
Refactor all mounters to use the mounter interface
2018-07-22 12:41:37 +02:00
Cyrill Troxler
093c5bf500
Use ginkgo test suite to test all mounters
2018-07-22 12:41:37 +02:00
Cyrill Troxler
13eba47da6
Add experimental s3ql mounter
2018-07-22 12:39:54 +02:00