diff --git a/dev_git_project_task_connector/__manifest__.py b/dev_git_project_task_connector/__manifest__.py
index e5bcb69..6e6e020 100644
--- a/dev_git_project_task_connector/__manifest__.py
+++ b/dev_git_project_task_connector/__manifest__.py
@@ -9,7 +9,7 @@
"website": "False",
"license": "AGPL-3",
"category": "False",
- "summary": "Link project task to Github issues",
+ "summary": "Link project task to Git issues",
"description": """
:image: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
diff --git a/dev_git_project_task_connector/models/project_task.py b/dev_git_project_task_connector/models/project_task.py
index fd2b8ec..120f597 100644
--- a/dev_git_project_task_connector/models/project_task.py
+++ b/dev_git_project_task_connector/models/project_task.py
@@ -10,7 +10,7 @@ class Task(models.Model):
def link_issue(self):
return {
- "name": "Link a Github issue",
+ "name": "Link a Git issue",
"type": "ir.actions.act_window",
"view_mode": "form",
"res_model": "link.git.issue",
diff --git a/dev_git_project_task_connector/security/ir.model.access.csv b/dev_git_project_task_connector/security/ir.model.access.csv
index b3f700b..41c8866 100644
--- a/dev_git_project_task_connector/security/ir.model.access.csv
+++ b/dev_git_project_task_connector/security/ir.model.access.csv
@@ -1,5 +1,5 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_git_issue_user,git.issue.user,dev_github_project_task_connector.model_git_issue,project.group_project_user,1,0,0,0
-access_git_issue_manager,git.issue.manager,dev_github_project_task_connector.model_git_issue,project.group_project_manager,1,1,1,1
-access_git_repo_user,git.repo.user,dev_github_project_task_connector.model_git_repo,project.group_project_user,1,0,0,0
-access_git_repo_manager,git.repo.manager,dev_github_project_task_connector.model_git_repo,project.group_project_manager,1,1,1,1
\ No newline at end of file
+access_git_issue_user,git.issue.user,dev_git_project_task_connector.model_git_issue,project.group_project_user,1,0,0,0
+access_git_issue_manager,git.issue.manager,dev_git_project_task_connector.model_git_issue,project.group_project_manager,1,1,1,1
+access_git_repo_user,git.repo.user,dev_git_project_task_connector.model_git_repo,project.group_project_user,1,0,0,0
+access_git_repo_manager,git.repo.manager,dev_git_project_task_connector.model_git_repo,project.group_project_manager,1,1,1,1
\ No newline at end of file
diff --git a/dev_git_project_task_connector/wizard/link_issue.py b/dev_git_project_task_connector/wizard/link_issue.py
index 05cf69e..f348b50 100644
--- a/dev_git_project_task_connector/wizard/link_issue.py
+++ b/dev_git_project_task_connector/wizard/link_issue.py
@@ -1,7 +1,6 @@
# -*- coding: utf-8 -*-
from odoo import models, fields
-from github import Github
class LinkGitIssue(models.TransientModel):
@@ -11,17 +10,10 @@ class LinkGitIssue(models.TransientModel):
issue_repo = fields.Many2one("git.repo", string="Repository", required=True)
issue_number = fields.Integer("Issue number", required=True)
+ def _compute_issue_values(self):
+ # Function to inherit in Git platform connector addons
+ return {}
+
def link_issue(self):
- github = Github()
- repo = github.get_repo(self.issue_repo.displayed_name)
- issue = repo.get_issue(number=self.issue_number)
- values = {
- "name": issue.title,
- "repo": self.issue_repo.id,
- "status": issue.state,
- "url": issue.html_url,
- "task_id": self.env["project.task"]
- .browse(self._context.get("active_ids"))
- .id,
- }
+ values = self._compute_issue_values()
self.env["git.issue"].create(values)
diff --git a/dev_git_project_task_connector/wizard/link_issue.xml b/dev_git_project_task_connector/wizard/link_issue.xml
index 0ef0a12..2f4be1a 100644
--- a/dev_git_project_task_connector/wizard/link_issue.xml
+++ b/dev_git_project_task_connector/wizard/link_issue.xml
@@ -5,7 +5,7 @@
link_issue.wizard
link.git.issue
-
-
\ No newline at end of file
diff --git a/dev_github_connector/__init__.py b/dev_github_connector/__init__.py
new file mode 100644
index 0000000..3b4c3ed
--- /dev/null
+++ b/dev_github_connector/__init__.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+from . import wizard
diff --git a/dev_github_connector/__manifest__.py b/dev_github_connector/__manifest__.py
new file mode 100644
index 0000000..a8af786
--- /dev/null
+++ b/dev_github_connector/__manifest__.py
@@ -0,0 +1,78 @@
+# Copyright 2021 Elabore ()
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+{
+ "name": "Github Odoo Connector",
+ "version": "12.0.1.0.0",
+ "author": "Elabore",
+ "maintainer": "False",
+ "website": "False",
+ "license": "AGPL-3",
+ "category": "False",
+ "summary": "Connect Odoo user to Github user",
+ "description": """
+ :image: https://img.shields.io/badge/licence-AGPL--3-blue.svg
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+=============================
+Github Odoo Connector
+=============================
+This module provides the capacity to link a user to a Gihub account in order to launch actions that need Github identification.
+
+Installation
+============
+Just install Github Odoo Connector, all dependencies will be installed by default.
+
+Known issues / Roadmap
+======================
+
+Bug Tracker
+===========
+Bugs are tracked on `GitHub Issues
+`_. In case of trouble, please
+check there if your issue has already been reported. If you spotted it first,
+help us smashing it by providing a detailed and welcomed feedback.
+
+Credits
+=======
+
+Images
+------
+* Elabore: `Icon `_.
+
+Contributors
+------------
+* Stéphan Sainléger
+
+Funders
+-------
+The development of this module has been financially supported by:
+* Elabore (https://elabore.coop)
+* Lokavaluto (https://lokavaluto.fr)
+
+Maintainer
+----------
+This module is maintained by ELABORE.
+
+""",
+ # any module necessary for this one to work correctly
+ "depends": [
+ "base",
+ "dev_git_project_task_connector",
+ ],
+ "external_dependencies": {
+ "python": [],
+ },
+ # always loaded
+ "data": [],
+ # only loaded in demonstration mode
+ "demo": [],
+ "js": [],
+ "css": [],
+ "qweb": [],
+ "installable": True,
+ # Install this module automatically if all dependency have been previously
+ # and independently installed. Used for synergetic or glue modules.
+ "auto_install": False,
+ "application": False,
+}
diff --git a/dev_github_connector/wizard/__init__.py b/dev_github_connector/wizard/__init__.py
new file mode 100644
index 0000000..d394ce4
--- /dev/null
+++ b/dev_github_connector/wizard/__init__.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+from . import link_issue
diff --git a/dev_github_connector/wizard/link_issue.py b/dev_github_connector/wizard/link_issue.py
new file mode 100644
index 0000000..b857a74
--- /dev/null
+++ b/dev_github_connector/wizard/link_issue.py
@@ -0,0 +1,24 @@
+# -*- coding: utf-8 -*-
+
+from odoo import models
+from github import Github
+
+
+class LinkGitIssue(models.TransientModel):
+ _inherit = "link.git.issue"
+
+ def _compute_issue_values(self):
+ values = super(LinkGitIssue, self)._compute_issue_values()
+ github = Github()
+ repo = github.get_repo(self.issue_repo.displayed_name)
+ issue = repo.get_issue(number=self.issue_number)
+ values = {
+ "name": issue.title,
+ "repo": self.issue_repo.id,
+ "status": issue.state,
+ "url": issue.html_url,
+ "task_id": self.env["project.task"]
+ .browse(self._context.get("active_ids"))
+ .id,
+ }
+ return values