From 6eb43c3d972046f0bba84f33f1b1c7852c1cd5aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Budai?= Date: Mon, 27 Apr 2020 14:05:17 +0200 Subject: [PATCH] worker: add a support for uploads to azure Everything else is already implemented, this commit just connects the bits and pieces in worker. --- cmd/osbuild-worker/main.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/cmd/osbuild-worker/main.go b/cmd/osbuild-worker/main.go index 839e5a0d5..87a8a5caa 100644 --- a/cmd/osbuild-worker/main.go +++ b/cmd/osbuild-worker/main.go @@ -15,6 +15,7 @@ import ( "github.com/osbuild/osbuild-composer/internal/common" "github.com/osbuild/osbuild-composer/internal/target" "github.com/osbuild/osbuild-composer/internal/upload/awsupload" + "github.com/osbuild/osbuild-composer/internal/upload/azure" "github.com/osbuild/osbuild-composer/internal/worker" ) @@ -116,6 +117,28 @@ func RunJob(job *worker.Job, uploadFunc func(*worker.Job, io.Reader) error) (*co continue } case *target.AzureTargetOptions: + + credentials := azure.Credentials{ + StorageAccount: options.StorageAccount, + StorageAccessKey: options.StorageAccessKey, + } + metadata := azure.ImageMetadata{ + ContainerName: options.Container, + ImageName: t.ImageName, + } + + const azureMaxUploadGoroutines = 4 + err := azure.UploadImage( + credentials, + metadata, + path.Join(tmpStore, "refs", result.OutputID, options.Filename), + azureMaxUploadGoroutines, + ) + + if err != nil { + r = append(r, err) + continue + } default: r = append(r, fmt.Errorf("invalid target type")) }