Skip to content

Enhancement: Add bulk upload UI to MAAP Console #1310

@sujen1412

Description

@sujen1412

Feature Request

Add a bulk data upload interface to the MAAP Console that leverages the platform's AWS token generation API and existing bucket/prefix access controls.

Motivation

Users need a streamlined way to upload multiple files and datasets directly from the MAAP Console without leaving the platform or managing credentials externally.

Reference Implementation

VEDA has developed a prototype S3 browser uploader that could serve as a reference:

MAAP Platform Integration Points

The Console can leverage existing MAAP capabilities:

  1. Temporary AWS Credentials API (see Enhancement: Generate and copy temporary AWS tokens from MAAP Console #1309)

    • Generate short-lived tokens with appropriate S3 permissions
    • Handle token refresh/rotation for long uploads
    • Scope permissions to user's accessible buckets/prefixes
  2. Bucket & Prefix Access Listing

    • Display available S3 locations where the user has write permissions
    • Use this to populate the upload destination selector
    • Prevent uploads to unauthorized locations
  3. Console UI Integration

    • Add upload functionality as a new Console section or modal
    • Integrate with existing MAAP authentication/authorization

Proposed Features

Core Upload Functionality

  • Drag-and-drop file upload interface
  • Multi-file selection and batch processing
  • Progress tracking for each file and overall upload progress
  • Upload cancellation and retry capabilities
  • Visual feedback on upload status (success, failed, in-progress)

S3 Integration

  • Bucket/prefix selection from user's accessible locations
  • Direct S3 upload using temporary credentials
  • Chunked/multipart upload support for large files
  • Automatic retry logic for failed uploads

UX Enhancements

  • File size validation before upload
  • Estimated time remaining
  • Upload history/log
  • Clear error messages with remediation steps
  • Support for common file formats (data, metadata, configs)

Acceptance Criteria

  • Users can select one or more files to upload
  • Users can choose destination bucket/prefix from accessible locations
  • Temporary AWS credentials are obtained from the API and used for upload
  • Real-time progress is displayed during upload
  • Upload completion/failure is communicated clearly
  • Failed uploads can be retried
  • Design integrates seamlessly with MAAP Console UI

Related Issues

Technical Considerations

  • S3 multipart upload API for efficient large file handling
  • Browser storage/IndexedDB for upload state persistence
  • CORS configuration for direct S3 access from browser
  • Security: ensure credentials are only used for authorized buckets/prefixes

Metadata

Metadata

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions