Git,Gerrit,and% Jirafor...
Transcript of Git,Gerrit,and% Jirafor...
Git, Gerrit, and Jira for Automo1ve Grade Linux Walt Miner, Engineering Project Manager
Agenda • Jira • Contribu0ng code to AGL via Git/Gerrit
Slide 2
AGL Account • Single sign-‐on for AGL sites including Jira, git, gerrit, DOORS NG, and the AGL Wiki
• Register at hDps://dev.automo0velinux.org/
Slide 3
JIRA FOR AGL
Slide 4
What is Jira • Atlassian • Project planning and tracking • Issue and defect tracking • Release management • Large number of plug-‐ins available • AGL Jira server can be found at hDps://jira.automo0velinux.org/
Slide 5
Jira Project Management • Manage tasks and sub-‐tasks in AGL project.
• Tasks can be divided into sub-‐tasks • Sub-‐tasks cannot be further divided • Provides more granularity for tracking project
• New Feature Requests are submiDed via Jira • Addi0onal Board Support • Requirements changes
Slide 6
Jira Defect Tracking • All AGL defects will be reported to Jira • No real process in place • Currently using Jira default work flow • Defect triage • Need to create components/subsystems?
Slide 7
Open Tasks and Bugs
Slide 8
Issue Type Key Summary Assignee Reporter Priority Status Bug SPEC-‐51 Create Jenkins instance on AGL server Jan-Simon Moeller Walt Miner Major In Progress Task SPEC-‐50 add meta-qt5 layer to agl Unassigned Gerd Mauthe Major Open New Feature SPEC-‐44 Media Player Demo App Noriaki Fukuyasu Walt Miner Critical Open New Feature SPEC-‐40 Media Browser Demo App Noriaki Fukuyasu Walt Miner Critical Open New Feature SPEC-‐36 Navigation Demo App Noriaki Fukuyasu Walt Miner Critical Open New Feature SPEC-‐30 Settings Demo App Noriaki Fukuyasu Walt Miner Critical Open New Feature SPEC-‐27 HVAC Demo App Noriaki Fukuyasu Walt Miner Critical Open New Feature SPEC-‐24 Home Screen Demo App Noriaki Fukuyasu Walt Miner Critical Open Task SPEC-‐19 Create CI infrastructure Paul Sherwood Walt Miner Critical Open Task SPEC-‐18 Review Tizen security model Unassigned Walt Miner Major Open Task SPEC-‐14 Create initial AGL build using AGL infrastructure Walt Miner Walt Miner Blocker In Progress
Slide 9
Slide 10
CONTRIBUTING CODE TO AGL
Slide 11
Git and Gerrit • AGL uses git for version control and gerrit for code reviews
• Code and patch submissions are via gerrit and use the gerrit review and merge process
• These can be found at • hDps://gerrit.automo0velinux.org • hDps://git.automo0velinux.org
Slide 12
Contribu0on Process • Code development process is documented
• hDps://wiki.automo0velinux.org/agl-‐distro/contribu0ng
• Process con0nues to evolve • Part of this session is to con0nue that evolu0on!
Slide 13
Gerrit Overview
Slide 14
Gerrit CommiDer
Slide 15
Gerrit Merger
Slide 16
Gerrit Registered Users
Slide 17
Gerrit Code Reviews • Reviewers complete code review with comments and assign a value. • -‐1: I would prefer that this is not merged as is. • 0: I am not making any statement about this change at the moment.
• +1: Looks good to me, but someone else must approve it.
• Reviewers are assigned by the developer who submiDed the branch.
• May be a CommiDer or a Registered User
Slide 18
Gerrit Code Merges • Code merges to the requested branch require an AGL Merger to assign a +2 to the change.
• AGL Mergers can reject the change (-‐2) or merge the change
• Two or more +1s do not allow the merger to be completed • -‐2: This must not be merged. • +2: Looks good to me, approved.
• Generally the AGL Mergers will wait for two +1s before assigning +2 and submieng the change
Slide 19
Branches • Tenta0ve decision to use Linux style branching where most work is on the mainline.
• Stable releases cause a branch to be created for further maintenance
• For repos where we are downstream, eg meta-‐renesas, we are working in branch, aim to offer those patches upstream.
• For repos where we are upstream, eg meta-‐agl, we are currently reviewing patches manually (+2 required) and commieng to master
Slide 20
Branches and Tags
Slide 21
master
AGL 1.0 RC1
AGL 1.0 RC2
AGL 1.0
AGL 1.1 RC1
AGL 1.0.1
AGL 1.0.2
AGL 1.0.3 AGL 1.1 RC2
Stable Release à
Stable Branch Created
Master con0nues in parallel to stable branch
Feature Complete – Stabiliza0on Starts
Jenkins • Adding Jenkins for Con0nuous Integra0on • Successful build in Jenkins gives +1 to new code
• Tests will be added as part of the +1 criteria as we go forward
• Another session on Wednesday for CI and System Test
Slide 22
THANK YOU