mirror of
https://github.com/cirruslabs/tart.git
synced 2026-10-18 11:55:36 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a2972aa4d9 |
@@ -29,6 +29,7 @@ Table of Contents
|
|||||||
|
|
||||||
1. Code should follow camel case
|
1. Code should follow camel case
|
||||||
2. Code should follow [SwiftFormat](https://github.com/nicklockwood/SwiftFormat#swift-package-manager-plugin) guidelines. You can auto-format the code by running the following command:
|
2. Code should follow [SwiftFormat](https://github.com/nicklockwood/SwiftFormat#swift-package-manager-plugin) guidelines. You can auto-format the code by running the following command:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
swift package plugin --allow-writing-to-package-directory swiftformat --cache ignore .
|
swift package plugin --allow-writing-to-package-directory swiftformat --cache ignore .
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -27,12 +27,12 @@ class VMStorageOCI: PrunableStorage {
|
|||||||
return digest
|
return digest
|
||||||
}
|
}
|
||||||
|
|
||||||
func open(_ name: RemoteName) throws -> VMDirectory {
|
func open(_ name: RemoteName, _ accessDate: Date = Date()) throws -> VMDirectory {
|
||||||
let vmDir = VMDirectory(baseURL: vmURL(name))
|
let vmDir = VMDirectory(baseURL: vmURL(name))
|
||||||
|
|
||||||
try vmDir.validate(userFriendlyName: name.description)
|
try vmDir.validate(userFriendlyName: name.description)
|
||||||
|
|
||||||
try vmDir.baseURL.updateAccessDate()
|
try vmDir.baseURL.updateAccessDate(accessDate)
|
||||||
|
|
||||||
return vmDir
|
return vmDir
|
||||||
}
|
}
|
||||||
@@ -180,6 +180,10 @@ class VMStorageOCI: PrunableStorage {
|
|||||||
let transaction = SentrySDK.startTransaction(name: name.description, operation: "pull", bindToScope: true)
|
let transaction = SentrySDK.startTransaction(name: name.description, operation: "pull", bindToScope: true)
|
||||||
let tmpVMDir = try VMDirectory.temporaryDeterministic(key: name.description)
|
let tmpVMDir = try VMDirectory.temporaryDeterministic(key: name.description)
|
||||||
|
|
||||||
|
// Open an existing VM directory corresponding to this name, if any,
|
||||||
|
// marking it as outdated to speed up the garbage collection process
|
||||||
|
_ = try? open(name, Date(timeIntervalSince1970: 0))
|
||||||
|
|
||||||
// Lock the temporary VM directory to prevent it's garbage collection
|
// Lock the temporary VM directory to prevent it's garbage collection
|
||||||
let tmpVMDirLock = try FileLock(lockURL: tmpVMDir.baseURL)
|
let tmpVMDirLock = try FileLock(lockURL: tmpVMDir.baseURL)
|
||||||
try tmpVMDirLock.lock()
|
try tmpVMDirLock.lock()
|
||||||
|
|||||||
Reference in New Issue
Block a user