refactor: Merge drive and reader config to enable implementations of tape management without synchronization

This commit is contained in:
Felix Pojtinger
2022-01-16 22:46:18 +01:00
parent 932a58d9d0
commit 5bb79b6d9e
28 changed files with 28 additions and 154 deletions
+2 -8
View File
@@ -1,7 +1,6 @@
package cmd
import (
"github.com/pojntfx/stfs/pkg/config"
"github.com/pojntfx/stfs/pkg/hardware"
"github.com/pojntfx/stfs/pkg/tape"
"github.com/spf13/cobra"
@@ -16,7 +15,7 @@ var driveEjectCmd = &cobra.Command{
return err
}
reader, readerIsRegular, err := tape.OpenTapeReadOnly(
reader, _, err := tape.OpenTapeReadOnly(
viper.GetString(driveFlag),
)
if err != nil {
@@ -24,12 +23,7 @@ var driveEjectCmd = &cobra.Command{
}
defer reader.Close()
return hardware.Eject(
config.DriveConfig{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
)
return hardware.Eject(reader.Fd())
},
}
+2 -8
View File
@@ -3,7 +3,6 @@ package cmd
import (
"fmt"
"github.com/pojntfx/stfs/pkg/config"
"github.com/pojntfx/stfs/pkg/hardware"
"github.com/pojntfx/stfs/pkg/tape"
"github.com/spf13/cobra"
@@ -18,7 +17,7 @@ var driveTellCmd = &cobra.Command{
return err
}
reader, readerIsRegular, err := tape.OpenTapeReadOnly(
reader, _, err := tape.OpenTapeReadOnly(
viper.GetString(driveFlag),
)
if err != nil {
@@ -26,12 +25,7 @@ var driveTellCmd = &cobra.Command{
}
defer reader.Close()
currentRecord, err := hardware.Tell(
config.DriveConfig{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
)
currentRecord, err := hardware.Tell(reader.Fd())
if err != nil {
return err
}
-3
View File
@@ -87,9 +87,6 @@ var operationArchiveCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,
-3
View File
@@ -71,9 +71,6 @@ var operationDeleteCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,
-3
View File
@@ -67,9 +67,6 @@ var operationMoveCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,
-3
View File
@@ -75,9 +75,6 @@ var operationRestoreCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,
-3
View File
@@ -77,9 +77,6 @@ var operationUpdateCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,
-4
View File
@@ -71,10 +71,6 @@ var recoveryFetchCmd = &cobra.Command{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.DriveConfig{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.PipeConfig{
Compression: viper.GetString(compressionFlag),
Encryption: viper.GetString(encryptionFlag),
-4
View File
@@ -70,10 +70,6 @@ var recoveryIndexCmd = &cobra.Command{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.DriveConfig{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.MetadataConfig{
Metadata: metadataPersister,
},
-4
View File
@@ -60,10 +60,6 @@ var recoveryQueryCmd = &cobra.Command{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.DriveConfig{
Drive: reader,
DriveIsRegular: readerIsRegular,
},
config.PipeConfig{
Compression: viper.GetString(compressionFlag),
Encryption: viper.GetString(encryptionFlag),
-3
View File
@@ -139,9 +139,6 @@ var serveFTPCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
}
readCryptoConfig := config.CryptoConfig{
Recipient: signatureRecipient,
-3
View File
@@ -95,9 +95,6 @@ var serveHTTPCmd = &cobra.Command{
GetReader: tm.GetReader,
CloseReader: tm.Close,
GetDrive: tm.GetDrive,
CloseDrive: tm.Close,
},
config.MetadataConfig{
Metadata: metadataPersister,