Skip to content

Add ability to upload files to an allocations data folder from the UI #25227

Open
@octdanb

Description

@octdanb

Proposal

Add the ability to upload a file into an allocations data folder via the UI.
Something like a file picker/dropzone.
Obviously there would need to be configurable limits on file size, user permissions for the uploaded files, file location and permissions to allow specific ACLs to upload ect.

Image

Use-cases

We use nomad clusters for hosting various docker containers, mostly web apps, nextjs/django/nginx/postgres ect.

It would be extremely useful to add the functionality to be able to upload a file via the nomad ui into an allocations data folder. This would allow for one off tasks to be able to be run which rely on external files, which are not built inside the docker container.

For example a csv file which containers records which will be used for scaffolding users or content
Or external postgres backup for restoration.

Attempted Solutions

Our current implementation is,
SCP the required file via bastion server to a nomad node in a preconfigured location which an allocation has access to via a local volume.
Then SSH via bastion server to nomad node, change permissions of file to ensure the docker containers user is able to access file. 

Nomad UI Exec into running allocation, move file into place, and run command with the uploaded file as an input.

Other solutions are to store these files in a private S3 bucket and use a signed URl, and curl the file into the running container.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Needs Roadmapping

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions