lint: Fix implicit memory aliasing in for loops in osbuild-worker
This commit is contained in:
parent
33f9a6726e
commit
b1f021c35e
1 changed files with 12 additions and 11 deletions
|
|
@ -465,9 +465,10 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
|
||||
for _, jobTarget := range jobArgs.Targets {
|
||||
var targetResult *target.TargetResult
|
||||
artifact := jobTarget.OsbuildArtifact
|
||||
switch targetOptions := jobTarget.Options.(type) {
|
||||
case *target.WorkerServerTargetOptions:
|
||||
targetResult = target.NewWorkerServerTargetResult(&jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewWorkerServerTargetResult(&artifact)
|
||||
var f *os.File
|
||||
imagePath := path.Join(outputDirectory, jobTarget.OsbuildArtifact.ExportName, jobTarget.OsbuildArtifact.ExportFilename)
|
||||
f, err = os.Open(imagePath)
|
||||
|
|
@ -483,7 +484,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.VMWareTargetOptions:
|
||||
targetResult = target.NewVMWareTargetResult(&jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewVMWareTargetResult(&artifact)
|
||||
credentials := vmware.Credentials{
|
||||
Username: targetOptions.Username,
|
||||
Password: targetOptions.Password,
|
||||
|
|
@ -537,7 +538,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.AWSTargetOptions:
|
||||
targetResult = target.NewAWSTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewAWSTargetResult(nil, &artifact)
|
||||
a, err := impl.getAWS(targetOptions.Region, targetOptions.AccessKeyID, targetOptions.SecretAccessKey, targetOptions.SessionToken)
|
||||
if err != nil {
|
||||
targetResult.TargetError = clienterrors.WorkerClientError(clienterrors.ErrorInvalidConfig, err.Error(), nil)
|
||||
|
|
@ -594,7 +595,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.AWSS3TargetOptions:
|
||||
targetResult = target.NewAWSS3TargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewAWSS3TargetResult(nil, &artifact)
|
||||
a, bucket, err := impl.getAWSForS3Target(targetOptions)
|
||||
if err != nil {
|
||||
targetResult.TargetError = clienterrors.WorkerClientError(clienterrors.ErrorInvalidConfig, err.Error(), nil)
|
||||
|
|
@ -614,7 +615,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
targetResult.Options = &target.AWSS3TargetResultOptions{URL: url}
|
||||
|
||||
case *target.AzureTargetOptions:
|
||||
targetResult = target.NewAzureTargetResult(&jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewAzureTargetResult(&artifact)
|
||||
azureStorageClient, err := azure.NewStorageClient(targetOptions.StorageAccount, targetOptions.StorageAccessKey)
|
||||
if err != nil {
|
||||
targetResult.TargetError = clienterrors.WorkerClientError(clienterrors.ErrorInvalidConfig, err.Error(), nil)
|
||||
|
|
@ -642,7 +643,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.GCPTargetOptions:
|
||||
targetResult = target.NewGCPTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewGCPTargetResult(nil, &artifact)
|
||||
ctx := context.Background()
|
||||
|
||||
g, err := impl.getGCP(targetOptions.Credentials)
|
||||
|
|
@ -707,7 +708,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.AzureImageTargetOptions:
|
||||
targetResult = target.NewAzureImageTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewAzureImageTargetResult(nil, &artifact)
|
||||
ctx := context.Background()
|
||||
|
||||
if impl.AzureConfig.Creds == nil {
|
||||
|
|
@ -837,7 +838,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.KojiTargetOptions:
|
||||
targetResult = target.NewKojiTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewKojiTargetResult(nil, &artifact)
|
||||
kojiServerURL, err := url.Parse(targetOptions.Server)
|
||||
if err != nil {
|
||||
targetResult.TargetError = clienterrors.WorkerClientError(clienterrors.ErrorInvalidTargetConfig, fmt.Sprintf("failed to parse Koji server URL: %v", err), nil)
|
||||
|
|
@ -955,7 +956,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
}
|
||||
|
||||
case *target.OCITargetOptions:
|
||||
targetResult = target.NewOCITargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewOCITargetResult(nil, &artifact)
|
||||
// create an ociClient uploader with a valid storage client
|
||||
var ociClient oci.Client
|
||||
ociClient, err = impl.getOCI(oci.ClientParams{
|
||||
|
|
@ -1016,7 +1017,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
logWithId.Info("[OCI] 🎉 Image uploaded and registered!")
|
||||
targetResult.Options = &target.OCITargetResultOptions{ImageID: imageID}
|
||||
case *target.OCIObjectStorageTargetOptions:
|
||||
targetResult = target.NewOCIObjectStorageTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewOCIObjectStorageTargetResult(nil, &artifact)
|
||||
// create an ociClient uploader with a valid storage client
|
||||
ociClient, err := impl.getOCI(oci.ClientParams{
|
||||
User: targetOptions.User,
|
||||
|
|
@ -1065,7 +1066,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error {
|
|||
logWithId.Info("[OCI] 🎉 Image uploaded and pre-authenticated request generated!")
|
||||
targetResult.Options = &target.OCIObjectStorageTargetResultOptions{URL: uri}
|
||||
case *target.ContainerTargetOptions:
|
||||
targetResult = target.NewContainerTargetResult(nil, &jobTarget.OsbuildArtifact)
|
||||
targetResult = target.NewContainerTargetResult(nil, &artifact)
|
||||
destination := jobTarget.ImageName
|
||||
|
||||
logWithId.Printf("[container] 📦 Preparing upload to '%s'", destination)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue