Awesome New Bamboo Plugin Capabilities

2,567
-1

Published on

Bamboo is on a tear – three major releases so far this year and more on the way. And every release has brought more capabilities to plugin developers. The Bamboo Product Manager will show you examples of the awesome new pluggability of Bamboo. You'll learn how to build reusable build system components with Bamboo's Task API and share them with other developers on the Atlassian Plugin Exchange.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,567
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Awesome New Bamboo Plugin Capabilities

  1. 1. Friday, 30 September 11
  2. 2. 2Friday, 30 September 11
  3. 3. 3Friday, 30 September 11
  4. 4. Bamboo Tasks Building awesome Bamboo plugins with ease Jens Schumacher, James Dumay Atlassian 4Friday, 30 September 11
  5. 5. Status Ribbon History Details Code ChangesShared Artifacts JIRA Issues Test Summary 5Friday, 30 September 11
  6. 6. Plan Stage Job 6Friday, 30 September 11
  7. 7. 7Friday, 30 September 11
  8. 8. 8Friday, 30 September 11
  9. 9. 9Friday, 30 September 11
  10. 10. 9Friday, 30 September 11
  11. 11. 10Friday, 30 September 11
  12. 12. “ The #bamboo 3.1 task plugin api looks great. No more excuses #adaptavist for not upgrading bamboo ” Dev Doctor (dev_doctor) via 11Friday, 30 September 11
  13. 13. One method to implement 12Friday, 30 September 11
  14. 14. 13Friday, 30 September 11
  15. 15. 14Friday, 30 September 11
  16. 16. 15Friday, 30 September 11
  17. 17. 16Friday, 30 September 11
  18. 18. Task Competition 17Friday, 30 September 11
  19. 19. Task Competition 17Friday, 30 September 11
  20. 20. Task Competition 17Friday, 30 September 11
  21. 21. Task Competition 17Friday, 30 September 11
  22. 22. Task Competition 17Friday, 30 September 11
  23. 23. TAKE-AWAYS “ Writing Task Plugins for Bamboo is easy. And ” sharing Plugins just got easier. #atlascamp 18Friday, 30 September 11
  24. 24. Friday, 30 September 11
  25. 25. Ha Handwavium 20Friday, 30 September 11
  26. 26. Ha Handwavium 20Friday, 30 September 11
  27. 27. Why would you want to create a Bamboo Task? 21Friday, 30 September 11
  28. 28. Its more than tests 22Friday, 30 September 11
  29. 29. What is automation? 23Friday, 30 September 11
  30. 30. Releasing Bamboo 24Friday, 30 September 11
  31. 31. Releasing Bamboo Build and test Bamboo 24Friday, 30 September 11
  32. 32. Releasing Bamboo Build and test Bamboo Publishes virtual machine image on Amazon ec2 24Friday, 30 September 11
  33. 33. Releasing Bamboo Build and test Bamboo Publishes virtual machine image on Amazon ec2 Copies artifacts to the public Maven repo 24Friday, 30 September 11
  34. 34. Releasing Bamboo Build and test Bamboo Publishes virtual machine image on Amazon ec2 Copies artifacts to the public Maven repo Copies .dmg, .exe’s, .wars and .tars to atlassian.com 24Friday, 30 September 11
  35. 35. As we add complexity, our tools fail us 25Friday, 30 September 11
  36. 36. You might have something like this 26Friday, 30 September 11
  37. 37. You might have something like this 26Friday, 30 September 11
  38. 38. But all that trouble could be as easy as... 27Friday, 30 September 11
  39. 39. But all that trouble could be as easy as... 27Friday, 30 September 11
  40. 40. Made possible by Java 28Friday, 30 September 11
  41. 41. Some history 29Friday, 30 September 11
  42. 42. Builder API 30Friday, 30 September 11
  43. 43. Builder API c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  44. 44. Builder API com.atlassian.bamboo.builder.Builder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  45. 45. Builder API com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  46. 46. Builder API com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  47. 47. Builder API c.a.bamboo.atlassian.v2.builder.BuilderV2 com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  48. 48. Builder API ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  49. 49. Builder API c.a.bamboo.atlassian.builder.PostConfigurableBuilder ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  50. 50. Builder API Appar ently NO T o p t io n c.a.bamboo.atlassian.builder.PostConfigurableBuilder al... ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  51. 51. Builder API c.a.bamboo.builder.MutableEnvironmentVariables... Appar ently NO T o p t io n c.a.bamboo.atlassian.builder.PostConfigurableBuilder al... ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  52. 52. Builder API c.a.bamboo.builder.EnvironmentVariablesAwareBuilder c.a.bamboo.builder.MutableEnvironmentVariables... Appar ently NO T o p t io n c.a.bamboo.atlassian.builder.PostConfigurableBuilder al... ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  53. 53. Builder API c.a.bamboo.builder.EnvironmentVariablesAwareBuilder vad oc!? N o ja c.a.bamboo.builder.MutableEnvironmentVariables... Appar ently NO T o p t io n c.a.bamboo.atlassian.builder.PostConfigurableBuilder al... ?!!! c.a.bamboo.atlassian.v2.builder.BuilderV2 WTF com.atlassian.bamboo.builder.Builder or... c.a.bamboo.builder.AbstractBuilder c.a.bamboo.builder.MyBuilder 30Friday, 30 September 11
  54. 54. 31Friday, 30 September 11
  55. 55. Task API @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } 32Friday, 30 September 11
  56. 56. Task API Only interface you must implement @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } 32Friday, 30 September 11
  57. 57. Task API Only interface you must implement @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } Do what you need todo here 32Friday, 30 September 11
  58. 58. Task API Only interface you must implement @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } Do what you need todo here Provides configuration, working directory and other context info 32Friday, 30 September 11
  59. 59. Task API Only interface you must implement @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } Do what you need todo here Provides configuration, working Success or failure? directory and other context info 32Friday, 30 September 11
  60. 60. We now mark whats safe to use!! Task API Only interface you must implement @PublicApi public interface TaskType { TaskResult execute(TaskContext taskContext) throws TaskException; } Do what you need todo here Provides configuration, working Success or failure? directory and other context info 32Friday, 30 September 11
  61. 61. Available in Bamboo 3.1 and up 33Friday, 30 September 11
  62. 62. Available in Bamboo 3.1 and up s ta ble ing it ke ep we are Yep, 33Friday, 30 September 11
  63. 63. Available in Bamboo 3.1 and up s ta ble ing it ke ep we are Yep, ...and in 3.3, installable without restarts! 33Friday, 30 September 11
  64. 64. SCP 34Friday, 30 September 11
  65. 65. TAKE-AWAYS “ Its never been easier to use Bamboo to build your own custom automation processes, quickly, cheaply and without fear. Just keep it simple. ” #atlascamp 35Friday, 30 September 11
  66. 66. SCP Xcode .NET Tomcat Available now under the Apache 2 License at https://bitbucket.org/atlassian 36Friday, 30 September 11
  67. 67. Where can I get help? Atlassian Answers Use tags: bamboo & bamboo-development answers.atlassian.com Atlassian Developer Network developer.atlassian.com @atldevtools @jensschumacher @i386 37Friday, 30 September 11
  68. 68. Thank you!Friday, 30 September 11
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×