Módulo para Odoo 17 que sincroniza repositorios y commits desde la API de GitHub, con control de acceso por rol y generación de reportes en PDF y CSV.
Creado por Juan Felipe Pinilla Lara.
Permite registrar y gestionar dentro de Odoo la información de los repositorios de código fuente de los clientes: consulta la API de GitHub, almacena los repositorios y sus commits, y expone esos datos en vistas de Odoo con permisos diferenciados según el rol del usuario. Sobre esa información genera reportes descargables en PDF (QWeb) y CSV.
Requisito: Odoo versión 17.
El módulo debe estar ubicado en la carpeta de addons del servidor —o en la carpeta asociada en la ruta de
odoo.conf—. Si no está presente allí, Odoo no lo encontrará al buscar la instalación.
Como primer paso ingresamos como usuario tipo administrador:
Procedemos a realizar la instalación del módulo ingresando a las aplicaciones y realizando la búsqueda del módulo "custom_repository" en el buscador de la aplicaciones
Después de haber instalado el módulo, ingresamos a la sección de Ajustes
Buscamos en la parte superior Usuarios y compañías e ingresamos a Usuarios
En el ejemplo tenemos creados dos usuarios:
- Usuario "Admin" que en este caso ejercerá el rol de Administrador
- Usuario "User" que en este caso ejercerá el rol de Usuario
Para tener acceso al módulo "custom_repository" tanto como admin o user debemos otorgarle permisos.
- Para el admin se otorgan permisos de "Commit Administrator"
- Para el user se otorgan permisos de "Commit User"
Ingresamos al módulo "Github API" desde el panel desplegable
Y creamos un nuevo registro
Nos mostrará una nueva ventana donde debemos ingresar datos importantes como Github User Name y Github Token
Si ingresamos algún dato incorrecto con los cuales no tenemos resultados en la búsqueda obtenemos el siguiente error
Dado el caso sea necesario, no se tenga conocimiento como crear un Github Token, el módulo cuenta con un botón que redirige a la documentación oficial de Github para generar el Token
Cuando realizamos una búsqueda con los datos correctamente, creamos un registro en el modelo res.partner con información básica del usuario y una tabla que adquiere los datos y repositorios asociados al cliente
En el módulo también tendremos acceso a la lista de repositorios
Si ingresamos a algún registro de dicha lista, encontraremos una nueva ventana con 3 botones:
- [Fetch Github Commit](#Busqueda de commits realizados)
- [Generar Reporte de Commits](#Creación de reporte en formato PDF de commits realizados)
- [Generar Reporte de Commits](#Creación de reporte en formato CSV de commits realizados)
Se podrá tener acceso a la información pero no podrá ejecutar acciones diferentes a la creación de reporte en formato CSV
























