Do not crash when file is not available
This commit is contained in:
parent
f98a149318
commit
4791b139b8
|
@ -1,5 +1,4 @@
|
|||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Drawing;
|
||||
using CliWrap;
|
||||
using CliWrap.Buffered;
|
||||
using InnovEnergy.Lib.Utils;
|
||||
|
@ -11,11 +10,11 @@ public class S3Cmd
|
|||
{
|
||||
private static readonly Command Python = Cli.Wrap("python3");
|
||||
|
||||
private const String? S3CmdPath = "Resources/s3cmd.py";
|
||||
private const String S3Prefix = "s3://";
|
||||
|
||||
public String Key { get; init; }
|
||||
public String Secret { get; init; }
|
||||
private const String? S3CmdPath = "Resources/s3cmd.py";
|
||||
private const String S3Prefix = "s3://";
|
||||
|
||||
public String Key { get; init;}
|
||||
public String Secret { get; init;}
|
||||
public String Region { get; init; } = "sos-ch-dk-2.exo.io";
|
||||
|
||||
// private String?[] DefaultArgs { get; }
|
||||
|
@ -50,7 +49,7 @@ public class S3Cmd
|
|||
{
|
||||
const String cors = "./Resources/CORS";
|
||||
|
||||
var result = await Run(bucketName, "mb");
|
||||
var result = await Run(bucketName, "mb");
|
||||
var setCors = await Run(bucketName, "setcors", cors);
|
||||
|
||||
return result.ExitCode == 0 && setCors.ExitCode == 0;
|
||||
|
@ -62,10 +61,20 @@ public class S3Cmd
|
|||
return result.StandardOutput;
|
||||
}
|
||||
|
||||
public async Task<String[]> GetFileText(String bucketName, String filename)
|
||||
public async Task<IReadOnlyList<String>?> GetFileLines(String bucketName, String filename)
|
||||
{
|
||||
var result = await Run(bucketName + "/" + filename, "get", "--force");
|
||||
return File.ReadAllLines("./" + filename);
|
||||
try
|
||||
{
|
||||
await Run(bucketName + "/" + filename, "get", "--force");
|
||||
}
|
||||
catch
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
var lines = File.ReadAllLines($"./{filename}");
|
||||
File.Delete(filename);
|
||||
return lines;
|
||||
}
|
||||
|
||||
public async Task<Boolean> DeleteBucket(String bucketName)
|
||||
|
@ -76,7 +85,7 @@ public class S3Cmd
|
|||
|
||||
private Task<BufferedCommandResult> Run(String bucketName, String operation, params String[] optionalArgs)
|
||||
{
|
||||
var credentials = new String[]
|
||||
var credentials = new[]
|
||||
{
|
||||
S3CmdPath,
|
||||
"--access_key", Key,
|
||||
|
|
Loading…
Reference in New Issue