Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Continuous Delivery with the Atlassian Tool Suite

Continuous Delivery with the Atlassian Tool Suite

Alexander Müller

September 23, 2015
Tweet

More Decks by Alexander Müller

Other Decks in Technology

Transcript

  1. Who am I? 2 Alexander Müller, Senior IT Consultant Atlassian

    Expert Software Developer Scrum Master Agile Coach …
  2. In a Nutshell 3 Prioritize Stories Select Stories for Sprint

    Write Stories Refine Stories for Work Create Feature Branch Compare Branches and Commits Create Pull Requests Review Code Update Task Progress View Corresponding Tickets Require Minimum Review Approvals Require Successful Build See Pull Requests & Commits w/ Failing Builds Detect Failing Builds Analyze Build Logs View Corresponding Tickets Deploy to Multiple Heterogeneous Target Systems View Corresponding Builds View Corresponding Commits View Corresponding Pull Requests View Corresponding Deployments Create Releases Merge Branches Deploy Continuously Track Progress of Implementation Formerly known as:
  3. Team up 5 Your Team •  Build teams of 3-4

    members. •  Try to build teams with people you don’t know. •  Try to build cross-functional teams (i.e. mix professions). •  Connect to the WIFI Network.
  4. Create a Project 7 Go to http://jira.********.de Login •  Create

    an account and make sure every member of your team has an account. •  Login and look around. Project •  Create a project per team and give it a fancy name. Be creative. •  Take a look at the project roles – and set them appropriately.
  5. Create a Backlog 9 Issues •  Create some issues like

    „Update Spring version“ or „Implement echo method“. Board •  Move your issues around.
  6. The Sprint 11 Sprint Planning •  Create a Sprint. • 

    Add issues to a Sprint. Sprinting •  Assign issues to other team members. •  Use the workflow transitions.
  7. Code 13 Go to http://bitbucket.********.de Login •  Make sure every

    member of your team has an account. •  Login and look around. Project •  Create a project per team and give it a fancy name. Be creative. •  Take a look at the project roles – and set them appropriately.
  8. More Code 15 Repository •  Create a repository. •  Bonus

    for teams with developers: Add some code! •  Fork the existing repository Demo.
  9. Branching 17 JIRA •  Find a way to create a

    branch from JIRA. Pull Request •  Create a pull request. •  Add reviewers. •  Review! •  Merge the branch.
  10. Wiki & Document Management 19 Go to http://confluence.********.de Login • 

    Make sure every member of your team has an account. •  Login and look around. •  Create some pages. Project •  Create a space per team and give it a fancy name. Be creative. •  Take a look at the space permissions – and set them appropriately. Macros •  Add some macros to pages. •  What about a diagram? Files •  Attach some files to a page. •  e.g. PDF, DOCX, PPTX, ... Sharing •  Share pages with your team members.
  11. JIRA + Confluence 21 Issues in Confluence •  Find a

    way to link JIRA issues in Confluence pages. •  Find a way to list multiple JIRA issues of your project on a page. Pages in JIRA •  Find a way to link Confluence pages in JIRA issues.
  12. Build 24 Go to http://bamboo.********.de Login •  Make sure every

    member of your team has an account. •  Login and look around. Build Plan •  Find an existing build plan. •  Run it. •  Find the deployed application. •  Tip: Append /hello/world
  13. Build Plan 26 Create a Build Plan •  Use the

    existing build as a blueprint to create your own build plan. •  Build your own fork! Test •  Run it. •  Make sure it succeeds.
  14. Plan Branches 28 Plan Branches •  Update the plan configuration

    and enable plan branches. Test •  Run it. •  Make sure branches are built.
  15. Deployment Project 30 Create a Deployment Project •  There is

    no example this time. It’s your turn. •  Create a release. •  Deploy your application using deployment projects. •  Create a trigger •  e.g. build successful? •  Make your application unique. •  Tip: Use a different context path. Test •  Run it. •  Make sure it succeeds.
  16. Environments 32 Multiple Environments •  Create at least two different

    environments. •  Use different context paths. •  Use different triggers. Test •  Run it. •  Make sure it succeeds.
  17. JIRA + Deployment 34 Go to http://jira.********.de (again) Board • 

    Find your project’s board. •  Deploy a release from your Agile Board. Issue View •  Open an issue. •  Deploy a release from the issue view.
  18. The „not up-to-date problem“ 36 Workflow •  Configure your project’s

    workflow so that a status transition occurs when •  a pull request is opened (-> in progress). •  a pull request is merged (-> done).
  19. Merge Restrictions 38 Go to http://bitbucket.********.de (again) Merge Restrictions • 

    Configure your fork so that merging is only allowed if... •  at least one reviewer approved the pull request •  at least one build for this branch was successful Merge •  Merge a branch (after fulfilling the restrictions)
  20. The story so far... 39 Prioritize Stories Select Stories for

    Sprint Write Stories Refine Stories for Work Create Feature Branch Compare Branches and Commits Create Pull Requests Review Code Update Task Progress View Corresponding Tickets Require Minimum Review Approvals Require Successful Build See Pull Requests & Commits w/ Failing Builds Detect Failing Builds Analyze Build Logs View Corresponding Tickets Deploy to Multiple Heterogeneous Target Systems View Corresponding Builds View Corresponding Commits View Corresponding Pull Requests View Corresponding Deployments Create Releases Merge Branches Deploy Continuously Track Progress of Implementation Formerly known as:
  21. Fragen? 40 Alexander Müller, Senior IT Consultant codecentric AG Merscheider

    Straße 1 42699 Solingen, Deutschland e-mail: [email protected] mobil: +49 (0) 172. 5252240 www.codecentric.de blog.codecentric.de speakerdeck.com/alexandermueller visusnet