Uploaded image for project: 'Comdev GSOC'
  1. Comdev GSOC
  2. GSOC-256

Apache OpenDAL: oftp, OpenDAL FTP Server

    XMLWordPrintableJSON

Details

    Description

      Proposal for GSoC

      • Organization: Apache
      • Project: OpenDAL oftp
      • Contributor: George Miao

      About me

      I'm George Miao, an undergraduate student at Syracuse University with over
      6 years of experience in software development. I have a strong background
      in Rust programming language and web development.

      {}Background{}

      OpenDAL is a data access layer that allows users to easily and efficiently
      retrieve data from various storage services in a unified way. oftp can
      expose OpenDAL power in FTP way that allows users to access storage
      services via FTP protocol.

      {}Description{}

      oftp will be a single binary cargo package under `/bin` of OpenDAL
      repository. I plan to use [libunftp](https://github.com/bolcom/libunftp),
      which offers great support for generic storage backend (like OpenDAL) and
      async operations. List of subjects in rough chronological order:

      • Write a basic FTP server using libunftp, with OpenDAL as the storage
        backend
      • Write thorough tests to ensure the desired functionality
      • Add configuration (both config file and command line args)
      • Write some detailed documentation and user guide
      • Provide a `unftp-sbe-opendal` for upstream (unFTP) to integrate (
        optional)

      Results for the Apache community

      The OpenDAL project will benefit from the addition of oftp, as it will
      allow users to access storage services via FTP protocol.

      {}Deliverables{}

      • The ftp server itself
      • Unit test for each ftp command and some integration tests
      • User guide and configuration guide

      {}Scheduling{}

      • Week 1-2: Implement the core FTP server
      • Week 3-4: Test core functionality, fix bugs
      • Week 5-6: Implement auxiliary features (configuration, command line, etc.)
      • Week 7-8: Test auxiliary features, fix bugs
      • Week 9-10: Write documentation and user guide
      • Rest of the time: Tracking, buffer for bugfixes, more features, etc.

       

      Mentor

      Mentor: PsiACE, Apache Apache Member, psiace@apache.org
      Mailing List: dev@opendal.apache.org
      Please leave comments if you want to be a mentor

      Attachments

        Activity

          People

            Unassigned Unassigned
            xuanwo Hao Ding
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: