From 742633662dd1c9acae2b3eeba6736e03dded50fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hozza?= Date: Tue, 12 Aug 2025 14:40:57 +0200 Subject: [PATCH] internal/cloudapi: remove support for `pulp.ostree` upload target MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It turned out that the target was never adopted by the service, thus it is being deleted as part of upload code consolidation. Signed-off-by: Tomáš Hozza --- internal/cloudapi/v2/handler.go | 6 -- internal/cloudapi/v2/imagerequest.go | 35 ------------ internal/cloudapi/v2/imagerequest_test.go | 11 ---- internal/cloudapi/v2/openapi.v2.gen.go | 69 +++++++++++------------ internal/cloudapi/v2/openapi.v2.yml | 1 - internal/cloudapi/v2/v2_test.go | 30 ---------- 6 files changed, 34 insertions(+), 118 deletions(-) diff --git a/internal/cloudapi/v2/handler.go b/internal/cloudapi/v2/handler.go index 16d8148a1..a33bc579f 100644 --- a/internal/cloudapi/v2/handler.go +++ b/internal/cloudapi/v2/handler.go @@ -277,12 +277,6 @@ func (h *apiHandlers) targetResultToUploadStatus(jobId uuid.UUID, t *target.Targ fromErr = uploadOptions.FromOCIUploadStatus(OCIUploadStatus{ Url: ociOptions.URL, }) - case target.TargetNamePulpOSTree: - uploadType = UploadTypesPulpOstree - pulpOSTreeOptions := t.Options.(*target.PulpOSTreeTargetResultOptions) - fromErr = uploadOptions.FromPulpOSTreeUploadStatus(PulpOSTreeUploadStatus{ - RepoUrl: pulpOSTreeOptions.RepoURL, - }) case target.TargetNameWorkerServer: uploadType = UploadTypesLocal workerServerOptions := t.Options.(*target.WorkerServerTargetResultOptions) diff --git a/internal/cloudapi/v2/imagerequest.go b/internal/cloudapi/v2/imagerequest.go index 44a4f0c41..ecd59cada 100644 --- a/internal/cloudapi/v2/imagerequest.go +++ b/internal/cloudapi/v2/imagerequest.go @@ -202,34 +202,6 @@ func newOCITarget(options UploadOptions, imageType distro.ImageType) (*target.Ta return t, nil } -func newPulpOSTreeTarget(options UploadOptions, imageType distro.ImageType) (*target.Target, error) { - var pulpUploadOptions PulpOSTreeUploadOptions - jsonUploadOptions, err := json.Marshal(options) - if err != nil { - return nil, HTTPError(ErrorJSONMarshallingError) - } - err = json.Unmarshal(jsonUploadOptions, &pulpUploadOptions) - if err != nil { - return nil, HTTPError(ErrorJSONUnMarshallingError) - } - serverAddress := "" - if pulpUploadOptions.ServerAddress != nil { - serverAddress = *pulpUploadOptions.ServerAddress - } - repository := "" - if pulpUploadOptions.Repository != nil { - repository = *pulpUploadOptions.Repository - } - t := target.NewPulpOSTreeTarget(&target.PulpOSTreeTargetOptions{ - ServerAddress: serverAddress, - Repository: repository, - BasePath: pulpUploadOptions.Basepath, - }) - - t.ImageName = fmt.Sprintf("composer-api-%s", uuid.New().String()) - return t, nil -} - // Returns the name of the default target for a given image type name or error // if the image type name is unknown. func getDefaultTarget(imageType ImageTypes) (UploadTypes, error) { @@ -346,10 +318,6 @@ func targetSupportMap() map[UploadTypes]map[ImageTypes]bool { UploadTypesOciObjectstorage: { ImageTypesOci: true, }, - UploadTypesPulpOstree: { - ImageTypesEdgeCommit: true, - ImageTypesIotCommit: true, - }, UploadTypesLocal: { ImageTypesAws: true, ImageTypesAwsRhui: true, @@ -436,9 +404,6 @@ func getTarget(targetType UploadTypes, options UploadOptions, request *ComposeRe case UploadTypesOciObjectstorage: irTarget, err = newOCITarget(options, imageType) - case UploadTypesPulpOstree: - irTarget, err = newPulpOSTreeTarget(options, imageType) - case UploadTypesLocal: irTarget = target.NewWorkerServerTarget() irTarget.ImageName = imageType.Filename() diff --git a/internal/cloudapi/v2/imagerequest_test.go b/internal/cloudapi/v2/imagerequest_test.go index 8c90331ec..6ed2590a5 100644 --- a/internal/cloudapi/v2/imagerequest_test.go +++ b/internal/cloudapi/v2/imagerequest_test.go @@ -139,17 +139,6 @@ func TestGetTargets(t *testing.T) { targets: []UploadTypes{UploadTypesAwsS3}, expected: []target.TargetName{target.TargetNameAWSS3}, }, - "edge:pulp": { - imageType: ImageTypesEdgeCommit, - targets: []UploadTypes{UploadTypesPulpOstree}, - expected: []target.TargetName{target.TargetNamePulpOSTree}, - }, - "edge:pulp+default": { - imageType: ImageTypesEdgeCommit, - targets: []UploadTypes{UploadTypesPulpOstree}, - includeDefault: true, - expected: []target.TargetName{target.TargetNamePulpOSTree, target.TargetNameAWSS3}, - }, "edge:gcp:fail": { imageType: ImageTypesEdgeCommit, targets: []UploadTypes{UploadTypesGcp}, diff --git a/internal/cloudapi/v2/openapi.v2.gen.go b/internal/cloudapi/v2/openapi.v2.gen.go index 6c3acbd6e..f95054cc2 100644 --- a/internal/cloudapi/v2/openapi.v2.gen.go +++ b/internal/cloudapi/v2/openapi.v2.gen.go @@ -154,7 +154,6 @@ const ( UploadTypesGcp UploadTypes = "gcp" UploadTypesLocal UploadTypes = "local" UploadTypesOciObjectstorage UploadTypes = "oci.objectstorage" - UploadTypesPulpOstree UploadTypes = "pulp.ostree" ) // Defines values for VolumeGroupType. @@ -3230,40 +3229,40 @@ var swaggerSpec = []string{ "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", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/internal/cloudapi/v2/openapi.v2.yml b/internal/cloudapi/v2/openapi.v2.yml index c80f2f5e6..6cef8feb3 100644 --- a/internal/cloudapi/v2/openapi.v2.yml +++ b/internal/cloudapi/v2/openapi.v2.yml @@ -1006,7 +1006,6 @@ components: - azure - container - oci.objectstorage - - pulp.ostree - local AWSEC2UploadStatus: type: object diff --git a/internal/cloudapi/v2/v2_test.go b/internal/cloudapi/v2/v2_test.go index fa8f2b24f..a6df63fe0 100644 --- a/internal/cloudapi/v2/v2_test.go +++ b/internal/cloudapi/v2/v2_test.go @@ -606,36 +606,6 @@ func TestCompose(t *testing.T) { "kind": "ComposeId" }`, "id") - // ref only with secondary pulp upload target - test.TestRoute(t, srv.Handler("/api/image-builder-composer/v2"), false, "POST", "/api/image-builder-composer/v2/compose", fmt.Sprintf(` - { - "distribution": "%s", - "image_request":{ - "architecture": "%s", - "image_type": "edge-commit", - "repositories": [{ - "baseurl": "somerepo.org", - "rhsm": false - }], - "upload_targets": [{ - "type": "pulp.ostree", - "upload_options": { - "basepath": "edge/rhel10" - } - }], - "upload_options": { - "region": "eu-central-1" - }, - "ostree": { - "ref": "rhel/10/x86_64/edge" - } - } - }`, testDistro.Name(), test_distro.TestArch3Name), http.StatusCreated, ` - { - "href": "/api/image-builder-composer/v2/compose", - "kind": "ComposeId" - }`, "id") - // url only (must use ostreeRepoDefault for default ref) test.TestRoute(t, srv.Handler("/api/image-builder-composer/v2"), false, "POST", "/api/image-builder-composer/v2/compose", fmt.Sprintf(` {