[UPD] Separate core addons from Git platform connector addons

This commit is contained in:
Stéphan Sainléger
2022-06-10 15:19:22 +02:00
parent 542a8b60c9
commit eeb6d60b40
9 changed files with 120 additions and 27 deletions

View File

@@ -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

View File

@@ -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",

View File

@@ -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
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
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_git_issue_user git.issue.user dev_github_project_task_connector.model_git_issue dev_git_project_task_connector.model_git_issue project.group_project_user 1 0 0 0
3 access_git_issue_manager git.issue.manager dev_github_project_task_connector.model_git_issue dev_git_project_task_connector.model_git_issue project.group_project_manager 1 1 1 1
4 access_git_repo_user git.repo.user dev_github_project_task_connector.model_git_repo dev_git_project_task_connector.model_git_repo project.group_project_user 1 0 0 0
5 access_git_repo_manager git.repo.manager dev_github_project_task_connector.model_git_repo dev_git_project_task_connector.model_git_repo project.group_project_manager 1 1 1 1

View File

@@ -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)

View File

@@ -5,7 +5,7 @@
<field name="name">link_issue.wizard</field>
<field name="model">link.git.issue</field>
<field name="arch" type="xml">
<form string="Link an existing Github issue to the current task">
<form string="Link an existing Git issue to the current task">
<group>
<field name="issue_repo" widget="selection" placeholder="Choose the repository of the issue" />
<field name="issue_number" />
@@ -18,11 +18,4 @@
</field>
</record>
<!-- <record id="action_link_issue" model="ir.actions.act_window">
<field name="name">Link Issue</field>
<field name="res_model">link.git.issue</field>
<field name="view_mode">form</field>
<field name="view_id" ref="link_issue_wizard" />
<field name="target">new</field>
</record> -->
</odoo>