The Atlassian SDK Goes to 11

2,849 views
2,769 views

Published on

We'll show you the latest additions to the Atlassian Plugin SDK, including a major new feature that will make developing new plugins faster, simpler and easier to get right the first time.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,849
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • The Atlassian SDK Goes to 11

    1. 1. Atlassian Plugins SDKAMPS Now Goes To 11!Jonathan DoklovicDeveloper Relations, Atlassian 2
    2. 2. AMPS (has always been good at)Project Creation• Easy project creation through prompts (atlas-create-jira-plugin)• Generic plugin stub• Generic unit testTesting• Easily run host product• Automatically run functional tests• Remote debug host product 3
    3. 3. AMPS (has always been good at)Project Creation• Easy project creation through prompts (atlas-create-jira-plugin)• Generic plugin stub• Generic unit testTesting• Easily run host product• Automatically run functional tests• Remote debug host product 4
    4. 4. AMPS (has always been good at)Project Creation• Easy project creation through prompts (atlas-create-jira-plugin)• Generic plugin stub• Generic unit test [Rock Out Your Plugin Here]Testing• Easily run host product• Automatically run functional tests• Remote debug host product 4
    5. 5. “Rocking Out” Your Plugin (the old way) 5
    6. 6. “Rocking Out” Your Plugin (the old way) 5
    7. 7. “Rocking Out” Your Plugin (the old way) 6
    8. 8. “Rocking Out” Your Plugin (the old way) 6
    9. 9. “Rocking Out” Your Plugin (the old way) 7
    10. 10. “Rocking Out” Your Plugin (the old way) 7
    11. 11. “Rocking Out” Your Plugin (the old way) 8
    12. 12. “Rocking Out” Your Plugin (the old way) 8
    13. 13. “Rocking Out” Your Plugin (the old way) 9
    14. 14. “Rocking Out” Your Plugin (the old way) 9
    15. 15. “Rocking Out” Your Plugin (the old way) 10
    16. 16. “Rocking Out” Your Plugin (the old way) 10
    17. 17. “Rocking Out” Your Plugin (the old way) 11
    18. 18. “Rocking Out” Your Plugin (the old way) 11
    19. 19. “Rocking Out” Your Plugin (the old way) 12
    20. 20. “Rocking Out” Your Plugin (the old way) 12
    21. 21. “Rocking Out” Your Plugin (the old way) 13
    22. 22. “Rocking Out” Your Plugin (the old way) 13
    23. 23. “Rocking Out” Your Plugin (the old way) 14
    24. 24. “Rocking Out” Your Plugin (the old way) 14
    25. 25. “Rocking Out” Your Plugin (the old way) 15
    26. 26. “Rocking Out” Your Plugin (the old way) 15
    27. 27. “Rocking Out” Your Plugin (the old way) 16
    28. 28. “Rocking Out” Your Plugin (the old way) 16
    29. 29. “Rocking Out” Your Plugin (the old way) 17
    30. 30. “Rocking Out” Your Plugin (the old way) 17
    31. 31. “Rocking Out” Your Plugin (the old way) 18
    32. 32. “Rocking Out” Your Plugin (the old way) 18
    33. 33. “Rocking Out” Your Plugin (the old way) 19
    34. 34. “Rocking Out” Your Plugin (the old way) 19
    35. 35. “Rocking Out” Your Plugin (the old way) 20
    36. 36. “Rocking Out” Your Plugin (the old way) 20
    37. 37. “Rocking Out” Your Plugin (the old way) I’m Ready To Code! (what was I writing again?) 21
    38. 38. “Rocking Out” Your Plugin (the old way) I’m Ready To Code! (what was I writing again?) 21
    39. 39. 22
    40. 40. SDK/AMPS 3.6get it: http://developer.atlassian.com• Easily Create Plugin Modules • atlas-create-jira-plugin-module• Less Time Hunting in Docs• Less Manual Setup• Get To Coding Faster• Get To Testing Faster• Get To DRINKING BEER FASTER! 23
    41. 41. What’s Next?• All modules for ALL Products • currently common modules + JIRA modules• Automated Testing of Generated Modules• Product-Version Aware Generators• YOUR Feedback 24
    42. 42. Contribute! https://studio.atlassian.com/browse/AMPS 25
    43. 43. One more thing... 26
    44. 44. Zach DavisJavaScript Developer, Atlassian 27
    45. 45. Faster plugin development.Zach DavisJavaScript Developer, Atlassian 27
    46. 46. Faster plugin development. Greater sanity.Zach DavisJavaScript Developer, Atlassian 27
    47. 47. Faster plugin development. Greater sanity.Zach DavisJavaScript Developer, Atlassian 28
    48. 48. Faster plugin development. Greater sanity.Zach DavisJavaScript Developer, Atlassian Developer 28
    49. 49. Faster plugin development. Greater sanity.Zach DavisJavaScript Developer, Atlassian Developer 28
    50. 50. You should probably hate me. 29
    51. 51. You should probably hate me.Seriously. 29
    52. 52. Edit. 30
    53. 53. Edit. Save. 30
    54. 54. Reload. 31
    55. 55. This slide intentionally left blank. 32
    56. 56. Edit. Save. Reload. 33
    57. 57. Edit. Save. Reload. 33
    58. 58. Edit. Save. Reload. 33
    59. 59. Edit. Save. Reload. 33
    60. 60. You should probably hate me. 34
    61. 61. You should probably hate me.But hear me out. 34
    62. 62. We’re here to help 35
    63. 63. We’re here to help• Maven CLI Plugin 35
    64. 64. We’re here to help• Maven CLI Plugin• Plugin SDK 35
    65. 65. We’re here to help• Maven CLI Plugin• Plugin SDK• FastDev 36
    66. 66. Demo! 37
    67. 67. How it works 38
    68. 68. How it works• Servlet filter that listens for shift + reload (ctl + reload in IE) 38
    69. 69. How it works• Servlet filter that listens for shift + reload (ctl + reload in IE) • Checks “Cache-Control” and “Pragma” headers 38
    70. 70. How it works• Servlet filter that listens for shift + reload (ctl + reload in IE) • Checks “Cache-Control” and “Pragma” headers• If detected, scans plugin directories for changes 38
    71. 71. How it works• Servlet filter that listens for shift + reload (ctl + reload in IE) • Checks “Cache-Control” and “Pragma” headers• If detected, scans plugin directories for changes• If found, spins up a maven process to perform pi 38
    72. 72. How to get it 39
    73. 73. How to get it• Bundled in the Plugin SDK 3.6, released yesterday 39
    74. 74. Configurability 40
    75. 75. Configurability• Any single module plugin should work out of the box 40
    76. 76. Configurability• Any single module plugin should work out of the box • For multi-module plugins, specify additional plugin root directories 40
    77. 77. Configurability• Any single module plugin should work out of the box • For multi-module plugins, specify additional plugin root directories• Can ignore additional files, extensions or directories 40
    78. 78. Configurability• Any single module plugin should work out of the box • For multi-module plugins, specify additional plugin root directories• Can ignore additional files, extensions or directories• Can change the mvn command 40
    79. 79. Configurability• Any single module plugin should work out of the box • For multi-module plugins, specify additional plugin root directories• Can ignore additional files, extensions or directories• Can change the mvn command• Can disable FastDev 40
    80. 80. Configurability• Any single module plugin should work out of the box • For multi-module plugins, specify additional plugin root directories• Can ignore additional files, extensions or directories• Can change the mvn command• Can disable FastDev• All from your plugin’s pom.xml file 40
    81. 81. Future Work 41
    82. 82. Future Work• Maven 3 41
    83. 83. Future Work• Maven 3 • Invoke maven programmatically so we don’t have to spin up a new vm 41
    84. 84. Future Work• Maven 3 • Invoke maven programmatically so we don’t have to spin up a new vm• Dependency Management 41
    85. 85. Future Work• Maven 3 • Invoke maven programmatically so we don’t have to spin up a new vm• Dependency Management • Currently unreliable for multiple plugins with cross-dependencies 41
    86. 86. More information 42
    87. 87. More information• Docs: https://studio.atlassian.com/wiki/display/FASTDEV• Bugs: https://studio.atlassian.com/browse/FASTDEV 42
    88. 88. More information• Docs: https://studio.atlassian.com/wiki/display/FASTDEV• Bugs: https://studio.atlassian.com/browse/FASTDEV• Plugin SDK: http://developer.atlassian.com/ 42
    89. 89. More information• Docs: https://studio.atlassian.com/wiki/display/FASTDEV• Bugs: https://studio.atlassian.com/browse/FASTDEV• Plugin SDK: http://developer.atlassian.com/• Find me or email me: zach@atlassian.com 42
    90. 90. Thank you!

    ×