Role:
DevOps Engineer
Summary:
This integration between Odoo and GoFAST aims to streamline document management processes within Odoo, leveraging GoFAST's robust capabilities in managing security and document accessibility. With this solution, users can efficiently handle documents within Odoo, ensuring that security protocols and access controls are seamlessly managed and enforced through GoFAST's infrastructure. This integration not only improves the workflow but also ensures that all documents are handled with the highest level of security and compliance.
Key Responsibilities
- Development of Odoo to automatically transfer documents to GoFst and delete it from Odoo
- Webhooks in GoFast to receive documents in Odoo and store them while rtuning access links to Odoo
- Use of Alfresco and GoFast Rest API for for integration
- Use of Gitlab for CI/CD
- Using Kubernetes deploy and manage Odoo applications
- Creating and building images of the development using Docker
- Deployment of Odoo applications using Helm
- GoFast Deployment using Podman
- Used for maintenance and management of the applications in Portainer for the servers
- Alfresco ID and API’s used in the integration of the application
Tech Stack
- Tools and technologies used (e.g., Jenkins, Docker, AWS).
- Gitlab
- Odoo
- Kubernetes
- Podman
- Bash scripting
- GoFast community
- Portainer
- Alfresco
- Webhooks
- Docker
- Helm
Challenges & Solutions
- The primary challenge in integrating Odoo with GoFAST was effectively managing the deletion of documents from Odoo and ensuring they were correctly stored in GoFAST. Odoo's standard settings in the documents app caused deleted documents to be recreated, complicating the process.
- To resolve this, we implemented a solution using GoFAST webhooks to trigger the deletion process. When a document is deleted in Odoo, the webhook, in combination with a cron job, ensures that the document is permanently deleted and stored in GoFAST. A link to the document's new location in GoFAST is then returned to Odoo, maintaining the integrity and flow of document management.
Code & Demo
- https://gitlab.com/dev-teos/odoo-gofast.git
Screens / Pictures
- Integration setup for GoFast in Odoo
Adding of different models as different spaces in GoFast
- Connecting the companies with Gofast Companies using the ID in the API int.
Company created in Gofast
So when I upload a document from any application in Odoo, it is automatically added in Gofast. Below is adding document in Odoo.
When we click on the document in Odoo, it takes us to GoFast as the documents does not exist in Odoo anymore.
- Deployment and maintenance
I am managing my kubernetes cluster and Gofast server using portainer.
Kubernetes for deployment of the Odoo applications, and Gofast podman for managing Gofast containers.
- Odoo Instances and deployment in kubernetes cluster
- Container deployed for GoFast
Odoo - Gofast Integration (Document Management)