Standard Grant Proposal: Proxmox Backup Cloud Extension (Continuation)

#Project Name: Proxmox Backup Cloud Extension (Continuation)
Project Lead: Rodney Wild
Company: A-Z Computer Solutions

Purpose:
The goal of the continued phase is to further integrate Proxmox Backup Server (PBS) with the Sia decentralized cloud storage network, enabling seamless and redundant cloud-based backup solutions. Building upon the progress made in the previous months, this phase will focus on refining the existing cloud backup module, enhancing the functionality of the Sia renterd plugin, and ensuring robust testing to prepare for a public beta release.

The primary objectives remain:
Increasing the amount of data stored on the Sia network by leveraging Proxmox backups.
Offering a reliable off-site backup solution that adds redundancy for disaster recovery scenarios.
Finalizing a stable integration that can be widely adopted by businesses, helping them securely store backups on the Sia network.
Open-Source Commitment:
The project’s source code will remain open-source, hosted on GitHub, with full transparency for the community.

Project Timeline (2.5 Months Extension):

Month 1 (Weeks 1-4):

Complete the final development of the Sia renterd plugin and resolve any remaining technical challenges.
Conduct internal testing of the renterd plugin in various real-world scenarios to ensure reliability and efficiency.
Prepare documentation for both developers and users, covering setup, configuration, and usage of the Sia cloud backup module.

Month 2 (Weeks 5-8):

Implement feedback from internal testing and address any critical bugs or issues.
Begin beta testing with a select group of users and community members to gather feedback on performance and usability.
Refine the integration based on beta testing, focusing on improving user experience, reliability, and scalability.

Half Month (Weeks 9-10):

Finalize any remaining tasks based on beta feedback.
Prepare the module for a public release, ensuring that all key features are working as expected.
Draft a public release announcement, including the project’s accomplishments and future outlook.

Potential Risks:
Delays in Testing Feedback:
The beta testing phase could uncover unexpected issues, potentially delaying the public release.

Mitigation: Prioritize frequent communication with testers to ensure early identification and resolution of issues.

Loss of Development Resources:
Similar to previous concerns, losing key development personnel could impact project delivery.
Mitigation: Maintain an active pipeline of backup developers who are familiar with the project’s codebase.

Projected project completion cost and funds requested:

480 hours * 35$ per hour = $16,800 USD

The above hours include no extra money for the project manager and any funds not use will go back to the Sia Foundation. The above estimate (other than the added contingency) comes directly from our developer.

Thanks @rdwild. Quick question: Your timeline cites 10 weeks of work but your budget request appears to be for 12 (480/40). What’s going on there?

As you know, development is not always an exact science. There is a 20% contingency added on to the quote I get from the developer. The developer came back with an a slight adjustment (400 hours and I added the 20% contingency (80 hours) which will be returned if not used by the developer.

Rodney Wild
A-Z Computer Solutions

Thanks for your latest proposal to The Sia Foundation Grants Program.

After review, the committee has decided to approve your proposal. They’re definitely excited and hopeful to see the completion of your work so far.

We’ll reach out to your provided email address for onboarding. Obviously this shouldn’t take too long as this is a continuation of your previous grant.

Thanx Steve! The details should be the same.

Progress Report Form Oct 2024

What progress was made on your grant this month?

 Middleware Development for Sia Integration:

 Cloud Backup API Enhancements:

 Integration Testing and Code Maintenance:

 User Interface (UI) Improvements:

Phase 8: Beta testing and bug cleanup:

Documentation and Repository Management:

We updated and merged our work on GitHub, including all major middleware and API connection changes, code maintenance tasks, and ExtJS UI updates.

Cloud Backup Middleware Development

Objective: Build middleware to enable interaction between Proxmox Backup Server’s cloud backup APIs and Sia’s decentralized storage API, addressing connectivity issues.

Changes:

Developed the middleware layer to route API calls effectively and provide consistent data handling across platforms.

Added error-handling routines to manage connectivity errors and log middleware actions for debugging.

What was done in the code:

src/middleware/siaIntegrationMiddleware.rs: Main middleware file for API requests.

src/middleware/siaIntegrationTest.js: Middleware test script for Sia API functionality checks.

API Connectivity Enhancements

Objective: Improve cloud backup API’s performance and security by updating dependencies and fixing broken functions.

Changes:Replaced outdated Rust dependencies with optimized libraries for faster and more stable performance.

Fixed broken functions within cloud backup API to ensure proper backend/frontend communication.

pbs/src/api2/cloud/backup.rs: Main cloud backup API file.

pbs/src/api2/cloud/mod.rs: Module configuration for cloud backup.

pbs/src/api2/cloud/restore.rs: Restoration logic for cloud backups.

Encryption & Decryption for Data Security

Objective: Secure data interactions by implementing hash encryption and decryption routines.

Changes:Added encryption methods to secure sensitive data during transmission between cloud backup UI and Sia storage.

www/cloud/window/Hashcrypt.js: Contains hash encryption and decryption methods.

Cloud Backup UI Development

Objective: Improve the cloud backup user experience through API integrations and UI styling enhancements.

Changes:Integrated backup and restore functionality directly into the cloud backup UI.

Enhanced UI and styling for improved user experience and accessibility.

www/cloud/window/CloudBackupJob.js: UI logic for backup jobs.

www/css/ext6-pbscloud.css: Stylesheet for cloud backup UI.

www/cloud/backupworks/backupschedule.js: UI for backup scheduling options.

Access Control and Backup Group Management

Objective: Enhance user access control settings and allow management of backup group ownership.

Changes:Introduced features for editing access control within the UI.

Added functionality to change backup group owners directly from the interface.

www/cloud/window/ACLEdit.js: Access control settings.

www/cloud/window/GroupManager.js: Management of backup groups.

ExtJS Frontend Development and API Testing

Objective: Ensure compatibility and test the UI for Sia integration using ExtJS and API testing tools.

Changes:Continued refining the ExtJS frontend for seamless user interactions with the Sia API.

Conducted API connection tests to validate functionality for cloud backups.

src/cloud/test/alloc_writable_media.rs: Test file for API connections.

www/cloud/window/UIComponents.js: Various UI components.

Links to repos worked on this month:

Merged branch ‘develop’ of https://github.com/AZComputerSolutions/PBSCloudBackupModule

What will you be working on this month?

Beta Testing and Bug Fixes:

 Test Server Setup and Deployment:

 Middleware Enhancements:

 UI Refinements and User Experience Improvements:

 Documentation and GitHub Management

 Please summarize your development goals into a few sentences or bullet points:

Fix bugs and code dependencies changes in rust that make our code no longer compile . Get a test server setup and working. Document setting up a test server. So that anyone can do it would the code in our github site. I would also like to note that because of the pending approval by the Sia foundation (thank-you for your continued support) we have been running at full development speed this last month.

We were ask by the Sia foundation to shorten our monthly reports but as always, the full version of this document is available at https://www.pbscloudbackup.com/docs/sia/sia-foundation-monthly-report-oct-2024/