<odoo> <record id="form_repository" model="ir.ui.view"> <field name="name">Repository form</field> <field name="model">runbot_merge.repository</field> <field name="arch" type="xml"> <form> <sheet> <div class="oe_title"> <h1><field name="name"/></h1> </div> <group> <group> <field name="group_id" string="Accessible to"/> </group> <group> <field name="branch_filter"/> </group> </group> <separator string="Required Statuses"/> <field name="status_ids"> <tree editable="bottom"> <field name="context"/> <field name="branch_filter"/> <field name="prs"/> <field name="stagings"/> </tree> </field> </sheet> </form> </field> </record> <record id="runbot_merge_action_projects" model="ir.actions.act_window"> <field name="name">Projects</field> <field name="res_model">runbot_merge.project</field> <field name="view_mode">tree,form</field> </record> <record id="runbot_merge_action_prs" model="ir.actions.act_window"> <field name="name">Pull Requests</field> <field name="res_model">runbot_merge.pull_requests</field> <field name="view_mode">tree,form</field> <field name="context">{'search_default_open': True}</field> </record> <record id="runbot_merge_search_prs" model="ir.ui.view"> <field name="name">PR search</field> <field name="model">runbot_merge.pull_requests</field> <field name="arch" type="xml"> <search> <filter name="open" string="Open" domain="[('state', 'not in', ['merged', 'closed'])]" /> <field name="number"/> <field name="author"/> <field name="label"/> <field name="target"/> <field name="repository"/> <field name="state"/> <group> <filter string="Target" name="target_" context="{'group_by':'target'}"/> <filter string="Repository" name="repo_" context="{'group_by':'repository'}"/> <filter string="State" name="state_" context="{'group_by':'state'}"/> <filter string="Priority" name="priority_" context="{'group_by':'priority'}"/> </group> </search> </field> </record> <record id="runbot_merge_tree_prs" model="ir.ui.view"> <field name="name">PR tree</field> <field name="model">runbot_merge.pull_requests</field> <field name="arch" type="xml"> <tree> <field name="repository"/> <field name="number"/> <field name="target"/> <field name="state"/> <field name="author"/> <field name="reviewed_by"/> </tree> </field> </record> <record id="runbot_merge_form_prs" model="ir.ui.view"> <field name="name">PR form</field> <field name="model">runbot_merge.pull_requests</field> <field name="arch" type="xml"> <form> <header/> <sheet> <div class="oe_title"> <h1> <field name="repository"/>#<field name="number"/> </h1> </div> <group> <group> <field name="target"/> <field name="state"/> <field name="author"/> </group> <group> <field name="label"/> <field name="priority"/> <field name="squash"/> </group> </group> <group> <group colspan="4"> <field name="head"/> <field name="statuses"/> </group> <group colspan="4"> <field name="overrides"/> </group> </group> <group> <group colspan="4" string="Message"> <field name="message" nolabel="1"/> </group> </group> <group> <group colspan="4" string="Delegates"> <field name="delegates" nolabel="1"> <tree> <field name="name"/> <field name="github_login"/> </tree> </field> </group> </group> </sheet> </form> </field> </record> <record id="runbot_merge_action_stagings" model="ir.actions.act_window"> <field name="name">Stagings</field> <field name="res_model">runbot_merge.stagings</field> <field name="view_mode">tree,form</field> <field name="context">{'search_default_active': True, 'active_test': False}</field> </record> <record id="runbot_merge_search_stagings" model="ir.ui.view"> <field name="name">Stagings Search</field> <field name="model">runbot_merge.stagings</field> <field name="arch" type="xml"> <search> <filter string="Active" name="active" domain="[('active', '=', True)]"/> <field name="state"/> <field name="target"/> <group> <filter string="Target" name="target_" context="{'group_by': 'target'}"/> </group> </search> </field> </record> <record id="runbot_merge_tree_stagings" model="ir.ui.view"> <field name="name">Stagings Tree</field> <field name="model">runbot_merge.stagings</field> <field name="arch" type="xml"> <tree> <field name="target"/> <field name="state"/> </tree> </field> </record> <record id="runbot_merge_form_stagings" model="ir.ui.view"> <field name="name">Stagings Form</field> <field name="model">runbot_merge.stagings</field> <field name="arch" type="xml"> <form> <field name="active" invisible="1"/> <header> <button type="object" name="action_cancel" string="Cancel" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}" /> </header> <sheet> <group> <group> <field name="target"/> <field name="state"/> <field name="reason"/> </group> <group> <field name="staged_at"/> </group> </group> <group string="Heads"> <field name="head_ids" colspan="4" nolabel="1"> <tree> <field name="sha"/> <field name="statuses"/> </tree> </field> </group> <group string="Batches"> <field name="batch_ids" colspan="4" nolabel="1"> <tree> <field name="prs" widget="many2many_tags" options="{'no_quick_create': True}"/> </tree> </field> </group> </sheet> </form> </field> </record> <record id="runbot_merge_action_commits" model="ir.actions.act_window"> <field name="name">Commit Statuses</field> <field name="res_model">runbot_merge.commit</field> <field name="view_mode">tree,form</field> </record> <record id="runbot_merge_commits_tree" model="ir.ui.view"> <field name="name">commits list</field> <field name="model">runbot_merge.commit</field> <field name="arch" type="xml"> <tree> <field name="sha"/> <field name="statuses"/> </tree> </field> </record> <menuitem name="Mergebot" id="runbot_merge_menu"/> <menuitem name="Projects" id="runbot_merge_menu_project" parent="runbot_merge_menu" action="runbot_merge_action_projects"/> <menuitem name="Pull Requests" id="runbot_merge_menu_prs" parent="runbot_merge_menu" action="runbot_merge_action_prs"/> <menuitem name="Stagings" id="runbot_merge_menu_stagings" parent="runbot_merge_menu" action="runbot_merge_action_stagings"/> <menuitem name="Commits" id="runbot_merge_menu_commits" parent="runbot_merge_menu" action="runbot_merge_action_commits"/> </odoo>