Skip to content

Upload Artifact URL not respecting baseHref #17110

Description

@kmcrawford

Pre-requisites

  • I have double-checked my configuration
  • I have tested with the :latest image tag (i.e. quay.io/argoproj/workflow-controller:latest) and can confirm the issue still exists on :latest. If not, I have explained why, in detail, in my description below.
  • I have searched existing issues and could not find a match for this bug
  • I'd like to contribute the fix myself (see contributing guide)

What happened? What did you expect to happen?

This line of code:
xhr.open('POST', `/upload-artifacts/${encodeURIComponent(namespace)}/${encodeURIComponent(workflowTemplateName)}/${encodeURIComponent(artifactName)}`);
Is missing the baseHRef configured in my server config
https://github.com/argoproj/argo-workflows/blob/main/ui/src/shared/components/artifacts-input/artifacts-input.tsx#L78

Version(s)

v4.1.4

Paste a minimal workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflow that uses private images.

Server config:

server:
  replicas: 3
  resources:
    limits:
      cpu: 100m
      memory: 200Mi
    requests:
      cpu: 20m
      memory: 150Mi
  baseHref: /argo/
  rbac:
    create: true
  serviceAccount:
    create: true
  extraArgs:
    - --base-href=/argo/
    - --x-frame-options=ALLOW


apiVersion: v1
kind: Secret
metadata:
  name: s3-creds
  namespace: argo
type: Opaque
stringData:
  accessKey: AKI**********
  secretKey: s9K**********
--
apiVersion: argoproj.io/v1alpha1
kind: WorkflowTemplate
metadata:
  name: my-template
  namespace: argo
spec:
  entrypoint: argosay
  arguments:
    artifacts:
      - name: my-uploaded-file
        s3:
          endpoint: s3.amazonaws.com
          region: us-east-1
          bucket: my-bucket
          key: input-file/placeholder.zip  # overridden per-submit via the upload endpoint
          accessKeySecret:
            name: s3-creds
            key: accessKey
          secretKeySecret:
            name: s3-creds
            key: secretKey
  templates:
    - name: argosay
      inputs:
        artifacts:
          - name: my-uploaded-file
            path: /tmp/input-file
      container:
        image: alpine:latest
        command: [cat]
        args: ["/tmp/input-file"]

Logs from the workflow controller

no logs just a 404 in my browser

Logs from in your workflow's wait container

no logs just a 404 in my browser

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions