{"id":24888622,"url":"https://github.com/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module","last_synced_at":"2026-04-11T19:36:25.551Z","repository":{"id":275249618,"uuid":"922147851","full_name":"manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module","owner":"manuelalejandrojimeneztorres","description":"The CoreTech Solutions Custom Odoo Module is a robust, enterprise-grade solution tailored for managing the distribution of electronic and IT components across CoreTech Solutions' global network of distribution centers.","archived":false,"fork":false,"pushed_at":"2025-02-10T19:23:53.000Z","size":2201,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T11:43:58.976Z","etag":null,"topics":["adminer","docker","docker-compose","docker-image","docker-swarm","dockerfile","odoo","pgadmin4","posgresql","python","ubuntu","wsl2"],"latest_commit_sha":null,"homepage":"https://coretechsolutions.com","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manuelalejandrojimeneztorres.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-25T12:56:00.000Z","updated_at":"2025-02-10T19:23:56.000Z","dependencies_parsed_at":"2025-03-27T11:52:20.028Z","dependency_job_id":null,"html_url":"https://github.com/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module","commit_stats":null,"previous_names":["manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manuelalejandrojimeneztorres","download_url":"https://codeload.github.com/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31693274,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T13:07:20.380Z","status":"ssl_error","status_checked_at":"2026-04-11T13:06:47.903Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["adminer","docker","docker-compose","docker-image","docker-swarm","dockerfile","odoo","pgadmin4","posgresql","python","ubuntu","wsl2"],"created_at":"2025-02-01T16:14:11.888Z","updated_at":"2026-04-11T19:36:25.518Z","avatar_url":"https://github.com/manuelalejandrojimeneztorres.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CoreTech Solutions Custom Odoo Module\n\n![Odoo](https://img.shields.io/badge/Odoo-16.0-32CD32?style=for-the-badge\u0026logo=odoo)\n![Docker Desktop](https://img.shields.io/badge/Docker-4.37.1-2A2D32?style=for-the-badge\u0026logo=docker)\n![PostgreSQL](https://img.shields.io/badge/PostgreSQL-15-4169E1?style=for-the-badge\u0026logo=postgresql)\n![pgAdmin](https://img.shields.io/badge/pgAdmin-4-800080?style=for-the-badge\u0026logo=postgresql)\n![Adminer](https://img.shields.io/badge/Adminer-4.8.1-228B22?style=for-the-badge\u0026logo=adminer)\n![Python](https://img.shields.io/badge/Python-3.13-3776AB?style=for-the-badge\u0026logo=python)\n![License](https://img.shields.io/badge/License-Apache%202.0-FF8C00?style=for-the-badge)\n![Build Status](https://img.shields.io/github/actions/workflow/status/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module/backend-ci.yml?style=for-the-badge)\n![Coverage](https://img.shields.io/codecov/c/github/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module?style=for-the-badge)\n![Dependencies](https://img.shields.io/badge/Dependencies-Up%20to%20date-brightgreen?style=for-the-badge)\n\n## Description\n\nThe **CoreTech Solutions Custom Odoo Module** is a robust, enterprise-grade solution tailored for managing the distribution of electronic and IT components across CoreTech Solutions' global network of distribution centers. Designed with **Docker**, **PostgreSQL**, and tools like **pgAdmin** and **Adminer**, this module offers flexibility, security, and efficiency, ensuring seamless integration with Odoo 16.0.\n\n---\n\n## Table of Contents\n\n1. [Key Features](#key-features)\n2. [Prerequisites](#prerequisites)\n3. [Installation](#installation)\n   - [Project Setup](#project-setup)\n   - [Environment Configuration](#environment-configuration)\n   - [Starting Services](#starting-services)\n4. [Custom Scripts](#custom-scripts)\n5. [Makefile Commands](#makefile-commands)\n6. [Security Practices](#security-practices)\n   - [Environment Variables](#environment-variables)\n   - [Docker Secrets](#docker-secrets)\n7. [Technologies and Tools Used](#technologies-and-tools-used)\n8. [Dependencies](#dependencies)\n9. [Troubleshooting](#troubleshooting)\n   - [Common Issues](#common-issues)\n   - [Logs](#logs)\n10. [Contributing Guidelines](#contributing-guidelines)\n11. [Support](#support)\n12. [License](#license)\n13. [Acknowledgments](#acknowledgments)\n\n---\n\n## Key Features\n\n- **Integrated Distribution Management**: Comprehensive tools for managing distribution networks.\n- **Dockerized Setup**: Easy deployment and scalability using Docker.\n- **Database Operations**: Reliable PostgreSQL integration with backup and restore functionality.\n- **Web Interfaces**: Manage databases using **pgAdmin** and **Adminer**.\n- **Customizable**: Flexible scripts and Makefile commands for developer convenience.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Prerequisites\n\nEnsure the following tools are installed:\n\n- [Docker Desktop v4.37.1](https://www.docker.com/products/docker-desktop/) - Tool to develop, create and manage Docker containers.\n- [WSL v2](https://learn.microsoft.com/en-us/windows/wsl/) - Feature that allows running Linux distributions inside Windows.\n- [Ubuntu v24.04.1 (Noble Numbat)](https://releases.ubuntu.com/24.04/) - Popular and easy to use Linux distribution.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Installation\n\n### Project Setup\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/manuelalejandrojimeneztorres/coretech-solutions-custom-odoo-module.git\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd coretech-solutions-custom-odoo-module\n   ```\n\n[🔼 Back to Top](#table-of-contents)\n\n### Environment Configuration\n\n1. Create a `.env` file in the root directory based on `.env.example`:\n\n   ```env\n   # Database configuration\n   HOST=db\n   PORT=5432\n   USER=odoo\n   POSTGRES_USER=odoo\n   PASSWORD=your_password_here\n   POSTGRES_PASSWORD=your_password_here\n   POSTGRES_DB=postgres\n   PGDATA=/var/lib/postgresql/data/pgdata\n\n   # pgAdmin configuration\n   PGADMIN_DEFAULT_EMAIL=your_email_here@example.com\n   PGADMIN_DEFAULT_PASSWORD=your_password_here\n   ```\n\n\u003e [!IMPORTANT]\n\u003e `HOST`: The address of the postgres server. If you used a postgres container, set to the name of the container. Defaults to `db`.\n\u003e `PORT`: The port the postgres server is listening to. Defaults to `5432`.\n\u003e `USER`: The postgres role with which Odoo will connect. If you used a postgres container, set to the same value as `POSTGRES_USER`. Defaults to `odoo`.\n\u003e `POSTGRES_USER`: The postgres role used for the postgres container. This should match the value of `USER`. Defaults to `odoo`.\n\u003e `PASSWORD`: The password of the postgres role with which Odoo will connect. If you used a postgres container, set to the same value as `POSTGRES_PASSWORD`. Defaults to `odoo`.\n\u003e `POSTGRES_PASSWORD`: The password of the postgres role used for the postgres container. Defaults to `odoo`.\n\u003e `POSTGRES_DB`: The name of the default database used by the postgres container. Defaults to `postgres`.\n\u003e `PGDATA`: The directory where PostgreSQL stores data. Defaults to `/var/lib/postgresql/data/pgdata`.\n\u003e `PGADMIN_DEFAULT_EMAIL`: The default email address for pgAdmin. Set this to your desired email address. Example: `your_email_here@example.com`.\n\u003e `PGADMIN_DEFAULT_PASSWORD`: The default password for pgAdmin. Set this to your desired password. Example: `your_password_here`.\n\n[🔼 Back to Top](#table-of-contents)\n\n### Starting Services\n\n1. Use the `run.sh` script or the `make up` command to build and start the containers:\n\n   ```bash\n   bash scripts/run.sh\n   ```\n\n   or\n\n   ```bash\n   make up\n   ```\n\n2. Access services:\n   - **Odoo**: [http://localhost:8069](http://localhost:8069)\n   - **PostgreSQL**: [http://localhost:5432](http://localhost:5432)\n   - **Adminer**: [http://localhost:8080](http://localhost:8080)\n   - **pgAdmin**: [http://localhost:15080](http://localhost:15080)\n\n\u003e [!TIP]\n\u003e If you encounter an error indicating that a port configured for one of the services in `docker-compose.yml` is already in use, it means that another process on your system is occupying that port. Refer to the [Troubleshooting](#troubleshooting) section for detailed steps to resolve the issue.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Custom Scripts\n\n### `run.sh`\n\n- Builds and starts containers.\n- Creates necessary directories for logs.\n\n### `stop.sh`\n\n- Stops all services and removes orphaned containers.\n\n### `backup.sh`\n\n- Creates a backup of the PostgreSQL database.\n\n### `restore.sh`\n\n- Restores a PostgreSQL database from a backup file.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Makefile Commands\n\n### `build`\n\n- Builds Docker containers.\n\n  ```bash\n  make build\n  ```\n\n### `up`\n\n- Starts Docker containers in detached mode.\n\n  ```bash\n  make up\n  ```\n\n### `down`\n\n- Stops and removes Docker containers.\n\n  ```bash\n  make down\n  ```\n\n### `logs`\n\n- Displays real-time logs from containers.\n\n  ```bash\n  make logs\n  ```\n\n### `backup`\n\n- Runs the backup script.\n\n  ```bash\n  make backup\n  ```\n\n### `restore`\n\n- Runs the restore script.\n\n  ```bash\n  make restore\n  ```\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Security Practices\n\n### Environment Variables\n\nStore sensitive data using environment variables. Examples:\n\n- `HOST`: Database host (default: `db`).\n- `PORT`: Database port (default: `5432`).\n- `USER`: PostgreSQL user for Odoo (default: `odoo`).\n- `PASSWORD`: PostgreSQL password (to be set by the user).\n\n\u003e [!WARNING]\n\u003e Ensure that the file containing the environment variables (e.g., the `.env` file) is not accidentally included in your repository. If you are using version control, exclude the `.env` file by adding it to your `.gitignore` file: `echo \".env\" \u003e\u003e .gitignore`.\n\n[🔼 Back to Top](#table-of-contents)\n\n### Docker Secrets\n\n1. Create a `secrets/` directory:\n\n   ```bash\n   mkdir secrets\n   ```\n\n2. Add secrets:\n\n   ```bash\n   echo \"your-odoo-postgres-password\" \u003e secrets/odoo_pg_pass\n   echo \"your-pgadmin-default-password\" \u003e secrets/pgadmin_default_password\n   ```\n\n3. Initialize Docker Swarm:\n\n   ```bash\n   docker swarm init\n   ```\n\n4. Create secrets:\n\n   ```bash\n   docker secret create odoo_pg_pass secrets/odoo_pg_pass\n   docker secret create pgadmin_default_password secrets/pgadmin_default_password\n   ```\n\n5. Secure secrets directory:\n\n   ```bash\n   chmod 600 secrets/*\n   ```\n\n\u003e [!WARNING]\n\u003e Ensure that the directory containing the secrets (e.g., the `secrets/` directory) is not accidentally included in your repository. If you are using version control, exclude the `secrets/` directory by adding it to your `.gitignore` file: `echo \"secrets\" \u003e\u003e .gitignore`.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Technologies and Tools Used\n\n- **Backend**:\n  - Odoo: Open-source ERP framework for business applications\n  - Python: Core programming language for Odoo modules\n\n- **Deployment**:\n  - Docker: Containerization for consistent environments\n  - Docker Compose: Multi-container orchestration\n\n- **Database**:\n  - PostgreSQL: Advanced relational database\n\n- **Development Tools**:\n  - Visual Studio Code: Code editor\n  - Adminer: Lightweight database management interface\n  - pgAdmin: Database management tool\n  - Docker CLI: Command-line interface for Docker\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Dependencies\n\nKey dependencies include:\n\n- **Odoo v16.0**: Open-source ERP framework for building and customizing business applications.\n- **Docker Desktop v4.37.1**: Desktop application for managing Docker containers and images on macOS and Windows.\n- **Docker Compose v2.32.4**: Tool for defining and running multi-container Docker applications.\n- **Docker Swarm**: Native clustering and orchestration tool for managing Docker containers across multiple hosts.\n- **WSL v2**: Windows Subsystem for Linux, enabling a full Linux kernel on Windows for Docker and other tools.\n- **Ubuntu v24.04.1 (Noble Numbat)**: Linux distribution for the host environment, providing compatibility and stability for server-side applications.\n- **PostgreSQL v15**: Relational database management system used by Odoo.\n- **pgAdmin v4**: Web-based interface for managing PostgreSQL databases.\n- **Adminer v4.8.1**: Lightweight database management tool supporting multiple database systems, including PostgreSQL.\n- **Python v3.13.1**: Programming language for running Odoo and managing various scripts and automation tasks.\n- **Git v2.48.1**: Distributed version control system for tracking changes in source code during software development.\n\n\u003e [!NOTE]\n\u003e For a full list of dependencies and services, see the `requirements.txt` file and `docker-compose.yml`.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Troubleshooting\n\n### Common Issues\n\n- **Odoo Container Not Starting**:\n  - Verify that the Docker daemon is running.\n  - Ensure the `docker-compose.yml` file is correctly configured.\n\n- **Database Connection Errors**:\n  - Check the `db` service in `docker-compose.yml`.\n  - Ensure PostgreSQL credentials match those in the Odoo configuration.\n\n- **Module Not Loading**:\n  - Ensure the module directory is correctly mapped in the `addons_path`.\n  - Check the Odoo logs for detailed error messages.\n\n- **Port Already in Use**:\n  - Identify which process is using the port:\n\n    - On Linux or macOS:\n\n      ```bash\n      lsof -i :\u003cport-number\u003e\n      ```\n\n    - On Windows (PowerShell):\n\n      ```bash\n      netstat -aon | findstr :\u003cport-number\u003e\n      ```\n\n  - Stop the conflicting process or change the port in the `docker-compose.yml` file:\n\n    ```yaml\n    ports:\n      - \"\u003cnew-port\u003e:\u003ccontainer-port\u003e\"\n    ```\n\n  - Save the changes and restart the services using the appropriate script or command:\n\n    - Stop the services:\n\n      ```bash\n      bash scripts/stop.sh\n      ```\n\n      or\n\n      ```bash\n      make down\n      ```\n\n    - Start the services:\n\n      ```bash\n      bash scripts/run.sh\n      ```\n\n      or\n\n      ```bash\n      make up\n      ```\n\n[🔼 Back to Top](#table-of-contents)\n\n### Logs\n\nUse the following commands to view logs:\n\n- **Odoo Logs**:\n\n  ```bash\n  docker-compose logs odoo\n  ```\n\n- **Database Logs**:\n\n  ```bash\n  docker-compose logs db\n  ```\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Contributing Guidelines\n\nWe welcome contributions to improve the CoreTech Solutions Custom Odoo Module. To contribute:\n\n1. Fork the repository.\n2. Create a new branch for your feature or bug fix:\n\n   ```bash\n   git checkout -b feature/your-feature-name\n   ```\n\n3. Commit your changes with detailed messages:\n\n   ```bash\n   git commit -m \"Add: Description of your feature\"\n   ```\n\n4. Push your branch and open a pull request.\n\n\u003e [!NOTE]\n\u003e For guidelines, see [CONTRIBUTING.md](CONTRIBUTING.md).\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Support\n\nFor any issues, please contact **CoreTech Solutions** at [support@coretechsolutions.com](mailto:support@coretechsolutions.com).\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## License\n\nThis project is licensed under the **Apache License 2.0**. See the [LICENSE.txt](LICENSE.txt) file for more details.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\n## Acknowledgments\n\nSpecial thanks to:\n\n- The [Odoo](https://www.odoo.com/) community for providing a powerful and extensible framework.\n- [Docker](https://www.docker.com/) for streamlining containerization and deployment processes.\n- [PostgreSQL](https://www.postgresql.org/) for its reliability as a database solution.\n- [GitHub](https://github.com/) for enabling seamless collaboration and version control.\n\n[🔼 Back to Top](#table-of-contents)\n\n---\n\nEnjoy using the **CoreTech Solutions Custom Odoo Module** and feel free to contribute to its development! 🚀\n\n[🔼 Back to Top](#table-of-contents)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuelalejandrojimeneztorres%2Fcoretech-solutions-custom-odoo-module/lists"}