SlideShare una empresa de Scribd logo
1 de 34
Redmine
Redmine




                    (@suer)
✓   @suer
    ✓
    ✓
    ✓           Ruby Java C#




2                   #ngrk02 2011/02/26
✓ Rails3 + WebSocket + Webkit Notification +
      Groonga


    ✓ TiDD + Skype + Git


    ✓            Redmine           issue                               !
    ✓ Reject                                (14:50-15:10 @mallowlabs


3                      #ngrk02 2011/02/26
…




        Redmine




4       #ngrk02 2011/02/26
Redmine




                               ✓
                               ✓ Web


                               ✓
                                   (1.1.0   )
                               ✓ etc...

5         #ngrk02 2011/02/26
Redmine



          ✓
          ✓
          ✓         UI
          ✓




6         #ngrk02 2011/02/26
✓   Rails


    ✓




7               #ngrk02 2011/02/26
Redmine


          2010/07/18 1.0.0
          2011/01/09 1.1.0
          2011/04/30 1.2.0      (   )




8          #ngrk02 2011/02/26
Conflict ...




                             NG
9             #ngrk02 2011/02/26
Plugin


     ✓   Code Review Plugin
     ✓   Backlogs Plugin
     ✓   Hudson Plugin
     ✓   CSV Importer
     ✓   Issue Extensions
     ✓   Wiki Extensions
     ✓   etc.. (http://www.r-labs.org/projects/r-labs/wiki/Redmine   )




10                                     #ngrk02 2011/02/26
Redmine Plugin(                    )



     ✓
     ✓ iPhoneUI (folk project)
     ✓
     ✓                         CSV
     ✓ MS Project
              https://github.com/suer




11                                #ngrk02 2011/02/26
12   #ngrk02 2011/02/26
Plugin




     ✓ Ruby/Rails
     ✓ Rails Engines
     ✓ Redmine         (User, Role, Issue, Journal, etc.)
     ✓                             (                        )




13                     #ngrk02 2011/02/26
Rails Engines


     ✓ Rails
      ✓
      ✓ migration        →
      ✓ Routes        → URL
      ✓ Rails3      (Redmine             2   )



14                  #ngrk02 2011/02/26
Plugin
$ ruby script/generate redmine_plugin <        >




 vendor/plugins/redmine_<                  >
15                    #ngrk02 2011/02/26
Redmine           >
✓




16        #ngrk02 2011/02/26
model, controller
     ✓ generator
      ✓   redmine_plugin_controller                            [        ]*
      ✓   redmine_plugin_model                         [   :       ]*




17                                    #ngrk02 2011/02/26
Redmine    Model
Railroad           (        )




18                     #ngrk02 2011/02/26
Model

                                                             Project


                         Issue
     User

            IssuePriority

            IssueCategory
                                           TimeEntry
               Version
                                        IssueRelation




                JournalDetail

                Journal                          Changeset




19                               #ngrk02 2011/02/26
20   #ngrk02 2011/02/26
✓
     ✓
     ✓
     ✓ Wiki
     ✓ View Hook
     ✓ alias_method_chain


21                      #ngrk02 2011/02/26
22   #ngrk02 2011/02/26
vendor/plugins/redmine_test/init.rb




23                             #ngrk02 2011/02/26
vendor/plugins/redmine_test/init.rb




24                             #ngrk02 2011/02/26
vendor/plugins/redmine_test/init.rb             false




25                              #ngrk02 2011/02/26
26   #ngrk02 2011/02/26
Wiki
         vendor/plugins/redmine_test/init.rb

     ✓   vendor/plugins/redmine_test/lib/
         wiki_extensions_geso_macro.rb




27       #ngrk02 2011/02/26
view hook
     ✓ Redmine                 hook
              HTML
     ✓ Hook          Listener
     ✓




28                    #ngrk02 2011/02/26
view hook
     vendor/plugins/redmine_test/init.rb

     vendor/plugins/redmine_test/lib/project_ikamusume_listener.rb




                                              Model, Controller
                                           Hook
29                              #ngrk02 2011/02/26
✓ Hook
     ✓ alias_method_chain
     ✓
     ✓




30                      #ngrk02 2011/02/26
31   #ngrk02 2011/02/26
vendor/plugins/redmine_test/init.rb




     vendor/plugins/redmine_test/lib/add_geso_to_date_patch.rb




32                              #ngrk02 2011/02/26
✓       Redmine


     ✓   2




33              #ngrk02 2011/02/26
34   #ngrk02 2011/02/26

Más contenido relacionado

Similar a 侵略Redmine 〜Redmineプラグイン開発入門 〜 #ngrk02

Merb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksMerb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksRowan Hick
 
Comparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd DegreeComparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd DegreeMatt Raible
 
Ruby on rails探索
Ruby on rails探索Ruby on rails探索
Ruby on rails探索Mu Chun Wang
 
React and Web Performance
React and Web PerformanceReact and Web Performance
React and Web PerformanceLars Roettig
 
Making your first contribution to Foreman
Making your first contribution to ForemanMaking your first contribution to Foreman
Making your first contribution to ForemanDominic Cleal
 
Serverless Preview Environments @ Boston DevOps
Serverless Preview Environments @ Boston DevOpsServerless Preview Environments @ Boston DevOps
Serverless Preview Environments @ Boston DevOpsJoseph Lust
 
React and Web Performance
React and Web Performance React and Web Performance
React and Web Performance LarsRttig1
 
Стероиды для Дотнетчика
Стероиды для ДотнетчикаСтероиды для Дотнетчика
Стероиды для ДотнетчикаEatDog
 
Lightening a component based Rails architecture
Lightening a component based Rails architectureLightening a component based Rails architecture
Lightening a component based Rails architectureEnrico Teotti
 
Serverless code components azure
Serverless code components azureServerless code components azure
Serverless code components azureShimon Tolts
 
Apache Flink Worst Practices
Apache Flink Worst PracticesApache Flink Worst Practices
Apache Flink Worst PracticesKonstantin Knauf
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJSJumping Bean
 
Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011Matt Raible
 
Сергей Калинец "Стероиды для Дотнетчика"
Сергей Калинец "Стероиды для Дотнетчика"Сергей Калинец "Стероиды для Дотнетчика"
Сергей Калинец "Стероиды для Дотнетчика"Fwdays
 
Docker 導入:障礙與對策
Docker 導入:障礙與對策Docker 導入:障礙與對策
Docker 導入:障礙與對策William Yeh
 
UKLUG - Open The Toolbox - Tools for the Domino Developer
UKLUG - Open The Toolbox - Tools for the Domino DeveloperUKLUG - Open The Toolbox - Tools for the Domino Developer
UKLUG - Open The Toolbox - Tools for the Domino DeveloperKathy Brown
 

Similar a 侵略Redmine 〜Redmineプラグイン開発入門 〜 #ngrk02 (20)

Merb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksMerb The Super Bike Of Frameworks
Merb The Super Bike Of Frameworks
 
Comparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd DegreeComparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd Degree
 
Ruby on rails探索
Ruby on rails探索Ruby on rails探索
Ruby on rails探索
 
React and Web Performance
React and Web PerformanceReact and Web Performance
React and Web Performance
 
Making your first contribution to Foreman
Making your first contribution to ForemanMaking your first contribution to Foreman
Making your first contribution to Foreman
 
Serverless Preview Environments @ Boston DevOps
Serverless Preview Environments @ Boston DevOpsServerless Preview Environments @ Boston DevOps
Serverless Preview Environments @ Boston DevOps
 
React and Web Performance
React and Web Performance React and Web Performance
React and Web Performance
 
Стероиды для Дотнетчика
Стероиды для ДотнетчикаСтероиды для Дотнетчика
Стероиды для Дотнетчика
 
Lightening a component based Rails architecture
Lightening a component based Rails architectureLightening a component based Rails architecture
Lightening a component based Rails architecture
 
Serverless code components azure
Serverless code components azureServerless code components azure
Serverless code components azure
 
Apache Flink Worst Practices
Apache Flink Worst PracticesApache Flink Worst Practices
Apache Flink Worst Practices
 
Om & React.js
Om & React.jsOm & React.js
Om & React.js
 
CI adventures in .NET
CI adventures in .NETCI adventures in .NET
CI adventures in .NET
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011
 
Сергей Калинец "Стероиды для Дотнетчика"
Сергей Калинец "Стероиды для Дотнетчика"Сергей Калинец "Стероиды для Дотнетчика"
Сергей Калинец "Стероиды для Дотнетчика"
 
RailsVsDjango
RailsVsDjangoRailsVsDjango
RailsVsDjango
 
X Means Y
X Means YX Means Y
X Means Y
 
Docker 導入:障礙與對策
Docker 導入:障礙與對策Docker 導入:障礙與對策
Docker 導入:障礙與對策
 
UKLUG - Open The Toolbox - Tools for the Domino Developer
UKLUG - Open The Toolbox - Tools for the Domino DeveloperUKLUG - Open The Toolbox - Tools for the Domino Developer
UKLUG - Open The Toolbox - Tools for the Domino Developer
 

Último

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 

Último (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 

侵略Redmine 〜Redmineプラグイン開発入門 〜 #ngrk02

  • 1. Redmine Redmine (@suer)
  • 2. @suer ✓ ✓ ✓ Ruby Java C# 2 #ngrk02 2011/02/26
  • 3. ✓ Rails3 + WebSocket + Webkit Notification + Groonga ✓ TiDD + Skype + Git ✓ Redmine issue ! ✓ Reject (14:50-15:10 @mallowlabs 3 #ngrk02 2011/02/26
  • 4. Redmine 4 #ngrk02 2011/02/26
  • 5. Redmine ✓ ✓ Web ✓ (1.1.0 ) ✓ etc... 5 #ngrk02 2011/02/26
  • 6. Redmine ✓ ✓ ✓ UI ✓ 6 #ngrk02 2011/02/26
  • 7. Rails ✓ 7 #ngrk02 2011/02/26
  • 8. Redmine 2010/07/18 1.0.0 2011/01/09 1.1.0 2011/04/30 1.2.0 ( ) 8 #ngrk02 2011/02/26
  • 9. Conflict ... NG 9 #ngrk02 2011/02/26
  • 10. Plugin ✓ Code Review Plugin ✓ Backlogs Plugin ✓ Hudson Plugin ✓ CSV Importer ✓ Issue Extensions ✓ Wiki Extensions ✓ etc.. (http://www.r-labs.org/projects/r-labs/wiki/Redmine ) 10 #ngrk02 2011/02/26
  • 11. Redmine Plugin( ) ✓ ✓ iPhoneUI (folk project) ✓ ✓ CSV ✓ MS Project https://github.com/suer 11 #ngrk02 2011/02/26
  • 12. 12 #ngrk02 2011/02/26
  • 13. Plugin ✓ Ruby/Rails ✓ Rails Engines ✓ Redmine (User, Role, Issue, Journal, etc.) ✓ ( ) 13 #ngrk02 2011/02/26
  • 14. Rails Engines ✓ Rails ✓ ✓ migration → ✓ Routes → URL ✓ Rails3 (Redmine 2 ) 14 #ngrk02 2011/02/26
  • 15. Plugin $ ruby script/generate redmine_plugin < > vendor/plugins/redmine_< > 15 #ngrk02 2011/02/26
  • 16. Redmine > ✓ 16 #ngrk02 2011/02/26
  • 17. model, controller ✓ generator ✓ redmine_plugin_controller [ ]* ✓ redmine_plugin_model [ : ]* 17 #ngrk02 2011/02/26
  • 18. Redmine Model Railroad ( ) 18 #ngrk02 2011/02/26
  • 19. Model Project Issue User IssuePriority IssueCategory TimeEntry Version IssueRelation JournalDetail Journal Changeset 19 #ngrk02 2011/02/26
  • 20. 20 #ngrk02 2011/02/26
  • 21. ✓ ✓ ✓ Wiki ✓ View Hook ✓ alias_method_chain 21 #ngrk02 2011/02/26
  • 22. 22 #ngrk02 2011/02/26
  • 25. vendor/plugins/redmine_test/init.rb false 25 #ngrk02 2011/02/26
  • 26. 26 #ngrk02 2011/02/26
  • 27. Wiki vendor/plugins/redmine_test/init.rb ✓ vendor/plugins/redmine_test/lib/ wiki_extensions_geso_macro.rb 27 #ngrk02 2011/02/26
  • 28. view hook ✓ Redmine hook HTML ✓ Hook Listener ✓ 28 #ngrk02 2011/02/26
  • 29. view hook vendor/plugins/redmine_test/init.rb vendor/plugins/redmine_test/lib/project_ikamusume_listener.rb Model, Controller Hook 29 #ngrk02 2011/02/26
  • 30. ✓ Hook ✓ alias_method_chain ✓ ✓ 30 #ngrk02 2011/02/26
  • 31. 31 #ngrk02 2011/02/26
  • 32. vendor/plugins/redmine_test/init.rb vendor/plugins/redmine_test/lib/add_geso_to_date_patch.rb 32 #ngrk02 2011/02/26
  • 33. Redmine ✓ 2 33 #ngrk02 2011/02/26
  • 34. 34 #ngrk02 2011/02/26

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n