* test non default file and dir
* added test default
* remove unused code
* Add encrypt decrypt test
* Added negative test case
* Add some directory exists cases
* Add secure config
* remove file that does not work
* Added more secure tests
* use new cov file
* add more coverage to keys tree
* negative coverage for parse value
* secure set to simulate config change
* Adding Ubn-22 to pipelines
* Adding lint as standard ci step
* correcting lint command path
* Add copyright checks to ci pipeline
* Copyright fixes and ci check for copyright statements
* Adding go format check to CI
* Fixing some lint issues
* More lint fixes
* More lint fixes
* Fixing some lint issues
* Correcting code linting check in ci
* correcting lint status check
* correcting lint status check
* correcting lint status check
* correcting lint status check
* correcting lint status check
* correcting lint status check
* correcting lint status check
* correcting bugs reported by sa check
* notices_fix.sh update
* Add step to validate NOTICE file
* Add step to release for ubn-22
* Add logs for success
* Fixing copyright bug
* Correcting tag formats
* Correcting percentage check
* Spell error correction
* Ignore exectime from code coverage
* Correcting log string
* Removing dead file
* Correcting go format error
* Correcting resource string for MSI token reterival
* Changelog updated
* Making resource to always point to storage.azure.com string
* Make resource string a configurable options for OAuth token retreival
* Bumping up autorest version as token parsing has issue when expires_on comes as integer
* Updaing token parsing error in changelog
* Skip msiEndpoint from v1 config as its not supported in v2
* Adding more fuse options for optimization
* Correcting logs for fuse3
* Removing nullpath feature as fuse3 does not support it
* Remove symlink cache as fuse3 does not support that
* Convert expected err log to warn
* Removing dead code
* Try file read using native C api
* Try early pread to improve perf
* Adding dynamic profiler and disable native pread call
* Log error when profiler fails to start
* Try prefetching data into memory for disk-file
* Make dynamic profiler available in both foreground and daemon mode
* Move read/write call to native calls
* Add call to update the file-cache when native read/writes are invoked
* Remove cache updating call for better perf
* Remove readahead logic from file-cache
* Clear handle map dead code
* convert fd to uint64 instead of int
* Adding basic infra for read ahead in native code
* Clean up code, remove read-ahead logic and make direct read the default option
* Correcting the flag name for offload-io
* Correcting spell mistakes and adding comments
* Correcting fsync test failure
* Correct fuse3 UT for fsync and handle conversion
* Resolve compilation failure for filehandle struct
* Add logic to update the cache on every 1K operations on a handle
* Resolve failure with flush when native write is enable
* Add read-ahead logic in native code
* Compilation failure resolution on fuse2
* Correcting memset params
* Correcting spell error
* Add GOGC and MAXPROCS value for perf tuning
* Reduce min file size and correct read ahead buffer size for smaller fiels
* Replace fsync with close of duplciate handle
* Correcting write flow file corruption issue
* Handle write in file-cache instead of libfuse as the other approach is corrupting data somewhere
* File-cache to refresh cache on eveyr 1K operations and data validation test to wait for 2 seconds after copy
* Replace file-cache read/write calls with syscalls
* Enable native read/write again with read ahead disabled
* Remove cache update from read calls
* Remove read ahead logic completly
* Cleanup libfuse compo and e2e test changes
* Delete emptry directories recursively till root
* Changes as per review comments
* Fix issue with block-size running into overflow of number of blocks
* Add blocksize and file size to logs
* Make blocksize function to work on file size instead of fi object and add UT for blocksize calculations
* Adding more ut case
* Add some breather between upload and test
* FileCacheTimeout test case to wait untill file is deleted from local system
* FileCacheTimeout test case to wait untill file is deleted from local system
* Codespell error fix
* Restructuring code as per review comments and internal discussions
* Code spell fixes
* Stop updating cache on read
* Adjusting cache update operation counter
* Correcting libfuse_read flow and adding option to enable offload option manually
* Correcting file_cache UT configs
* Adding dynamic profiler config in base config
* Allow blobfuse2 to mount without config file, in case all required params are set as env variables
* Updating readme for perf comparison with v1
* Removing test code
* Changes as per review comments
* Corrected perf numbers in readme
* Fixed bug where endpoint is populated incorrectly when passed as environment variable
* Fixed unit tests
Co-authored-by: Gauri Prasad <gapra@microsoft.com>
* Changes for checking version and showing warnings
* Using sas url for version container
* Checking only the status code
* Pointing to blobfuse2
* Having python script instead of keeping it inline
* chmod shall result into SetAccessControl call with permissions and not ACL to preserve the existing principals added to the file
* Adding loopbackfs config to base config
* Fixed bug where some user provided values that can be set to 0 were set to default value
* Addressed comments
* Fixed unit test for file cache empty config
* Allow for cli params to be set to 0
* Fixed defaults and merged isSet
* Added test
Co-authored-by: Gauri Prasad <gapra@microsoft.com>
* Correcting UT for disk cache
* Sync with main and review comment addressed
* Keeping default persisted block timeout to 30 mins
* changes as per review comments
* adding comments to UT for disk-persistence
* Copyright info update
* First commit of blobfuse v2 code
* Adding hadle optimization for v2
* Making direct read a configurable option, disabled by default
* Rearrange structures to reduce padding and save memory
* Correcting attr-cache UT for flag changes
* Merging file-cache-test
* Make flag check a function
* Adding comments to handle methods
* Adding more fuse options for optimization
* Adding more fuse options for optimization
* Removing exectime from red flows
* Correcting profiling code to work for both cpu and memory
* Cleanup old pprof reports
* Adding error log for policy local file removal case and adding 10mil max file limit in attr-cache
* Correcting file-cache UT for notInCache cases
* Correcting libfuse UT to get handle object out of open return parameters
* Addressing review comments
* Removing 7.5 old curl from nightly as it does not make sense for v2 to test different curl versions
* Tuning fuse parameters for better perf
* Fuse parameter tuning
* Removing some fuse options as mount is failing on some platforms
* Exit pipeline stage if mount failed
* Populate fuse connection flag based on kernel capabilities
* Log kernel fuse capabilities and the one chosen by blobfuse on given platform
* Fail pipeline if blobfuse2 binary is not found in df output
* Wait for some time for mount to go through before validating
* Correcting validation of mount point
* Correcting validation of mount point
* Use fuse2 on Deb-10 as with fuse3 we are not able to mount on that distro
* Update mount validation for huge listing
* Image signing to happen only when release option is chosen
Co-authored-by: Gauri Prasad <gapra@microsoft.com>
Co-authored-by: Ubuntu <vibhansa@vibhansa-perftest.l1vcg1e4u55e3gwz1dsfkxy2if.tx.internal.cloudapp.net>