Hansip: Supporting SQLite, S3 Storage and Multi Configuration Path Locations
Today I want to share about a new release that brings out many interesting features for Hansip!
If you are new here about Hansip, you may take a look the previous post that describes what is Hansip and How it's work
As the primary focus of the Hansip project is to support simple E2E file encryption, I don't want to get overwhelmed with the project setup, especially when it's required to use postgresql database.
Postgresql is Good...eventually 🐘
Don't get me wrong, I love postgres, so much... but as the main focus of this project is to show you the how the encryption works behind the scene, the most notably thing is the database itself, Postgres.
Postgresql is good, but not at the beginning. You want a simple steps (and resource) when start to play and do an experiment with Hansip, meaning users avoiding the "Big Effort" to setup from the start.
Now by default Hansip will using SQLite3 as a database. There's also some configuration available to adjust the location of the SQLite location storage.
AWS S3 Storage! 🗄
Another interesting update is now you can use S3 as a file storage!
You can set the config.yaml
for the S3 configuration.
The configuration tells Hansip to switch over from filesystem
storage to s3
and by this change you must also set the required parameter for Hansip to connect with Your S3 bucket.
Multi Configuration Paths ⚙️
When working with Hansip, There's something that I want to be available on the feature, the multi configuration path.
This may a simple approach but it has big benefit when we want to deploy the application on the server. Hansip will look into these three paths for the configuration.
./config.yaml
The current project directory
$HOME/.hansip/config.yaml
User level configuration
/etc/hansip/config.yaml
System level configuration
The configuration is ordered from top to bottom, so when we have a system level configuration, and starting another Hansip instance with config.yaml
within the project directory, it will not interfered by the system configuration.
Thank you!
That's it, hopefully these updates will make you happy and boost more productifity! also don't forget to visit the project repository!