SlideShare a Scribd company logo
1 of 23
Download to read offline
Automate Your Deployments
Geert Josten, Senior Development, Dayon
April 11, 2013
Geert Josten, Dayon
Automate your MarkLogic deployments
Errrr,
deployment?
Geert Josten, Dayon
Automate your MarkLogic deployments
Deployment = …
Configuring MarkLogic
• Apps, Databases, Indexes, Forests, Security, Groups, Clusters, ..
Deployment of app-specific files
• Static files, modules, schema’s, initial data, install/migration scripts, ..
Running app-specific config/deploy scripts
• Including possible user interaction, orchestration of migrations, and
imports, ..
More?
(No bootstrapping)
• A.o. installing MarkLogic itself, first admin user, entering license, ..
Geert Josten, Dayon
Automate your MarkLogic deployments
Why automate?
Geert Josten, Dayon
Automate your MarkLogic deployments
Well.. have you used this before?
Geert Josten, Dayon
Automate your MarkLogic deployments
So many pages, so many options..
Geert Josten, Dayon
Automate your MarkLogic deployments
So, why automate?
Because..
• Manual work time-consuming, tedious and error-prone
• Databases, app-servers, security, uploading of files, app-specific setup, ..
• Repeat same installation on multiple machines
• DTAP, development laptops, clusters, show casing, ..
• Many updates over application life-time
• During development, project iterations, simple or complex updates, ..
And not in the least..
• You (developer) might not be running the installation
• App managers, non-MarkLogic-expert colleagues, third party, ..
In short:
Keep deployments SIMPLE! (and quick if possible)
Geert Josten, Dayon
Automate your MarkLogic deployments
Other built-in
options?
Geert Josten, Dayon
Automate your MarkLogic deployments
Configuration Manager to the rescue?
Geert Josten, Dayon
Automate your MarkLogic deployments
Not just yet..
Geert Josten, Dayon
Automate your MarkLogic deployments
Information Studio?
Geert Josten, Dayon
Automate your MarkLogic deployments
Management API?
Geert Josten, Dayon
Automate your MarkLogic deployments
How about Client API?
Geert Josten, Dayon
Automate your MarkLogic deployments
Built-in options..
Fills gaps, but partial solutions
• Still manual work
• Multiple steps
• No versioning
• No automated rollback
• Possibly different instructions each release
Unless you (developer) do a lot of scripting..
• REST api’s
• Admin/security XQuery modules
Geert Josten, Dayon
Automate your MarkLogic deployments
Non-built-in
options?
Geert Josten, Dayon
Automate your MarkLogic deployments
Existing alternatives?
Here are some:
• MarkLogic Content Pump, AutoLoader and RecordLoader
• Uploading
• MarkLogic Ant tasks
• Could do all, but developer tool, and still lots of work
• Cqsh, Xmlsh
• Similar to Ant tasks
• Roxy
• Very promising! But what about versioning, rollback, etc?
• Booster
• Simple HTTP wrapper for admin and security tasks
• Depx and Expath Packaging System
• Intended for libraries, not applications. Doesn’t configure MarkLogic
Geert Josten, Dayon
Automate your MarkLogic deployments
Alternatives?
Some thoughts:
• All executed outside MarkLogic
• Shell scripting could appeal to App managers
• Roxy looks promising, but why Ruby?
• Some solutions still need more or less additional scripting
• No user interfaces?
• No versioning as part of deployment
• No automated rollback (not just on failure)
Geert Josten, Dayon
Automate your MarkLogic deployments
So, what is the ideal
way?
Geert Josten, Dayon
Automate your MarkLogic deployments
I have a dream..
Simple method
• Only MarkLogic (preferably out of box)
• Simple interface
Single package
• App, database, security configuration
• Files, modules, schemas
• App-specific setup
Upload and go
• Ear-style deployment, one zip with all
• Deployments dir, or upload
• MarkLogic picks up and installs automatically
Geert Josten, Dayon
Automate your MarkLogic deployments
Demo!
Geert Josten, Dayon
Automate your MarkLogic deployments
MarkLogic package manager
Functionality
• Upload single package
• With configs, files, post-install scripts
• Keeps track of installed packages
• Reinstall, rollback
Prototype
• Relies on built-ins like Configuration Manager
• Custom code to upload files (could use Client-API?)
• App-specific configuration
• Runs at Admin-interface port
Short-comings
• No security config yet (could use/lend code from Roxy?)
• Removal of files on file-system not possible
• Storage of packages, where best?
Any Questions?
For More Information
Geert Josten, Dayon
Geert.josten@dayon.nl

More Related Content

Similar to MarkLogicWorld 2013 - Automate your deployments

Java scriptwidgetdevelopmentjstanbul2012
Java scriptwidgetdevelopmentjstanbul2012Java scriptwidgetdevelopmentjstanbul2012
Java scriptwidgetdevelopmentjstanbul2012Volkan Özçelik
 
External JavaScript Widget Development Best Practices
External JavaScript Widget Development Best PracticesExternal JavaScript Widget Development Best Practices
External JavaScript Widget Development Best PracticesVolkan Özçelik
 
Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureYshay Yaacobi
 
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...Theo Jungeblut
 
Does Your Stuff Scale?
Does Your Stuff Scale?Does Your Stuff Scale?
Does Your Stuff Scale?stevenh0lmes
 
Habitat Overview
Habitat OverviewHabitat Overview
Habitat OverviewMandi Walls
 
Knowage essential training
Knowage essential trainingKnowage essential training
Knowage essential trainingKNOWAGE
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??Mark Rackley
 
What IS SharePoint Development? by Mark Rackley - SPTechCon
 What IS SharePoint Development? by Mark Rackley - SPTechCon What IS SharePoint Development? by Mark Rackley - SPTechCon
What IS SharePoint Development? by Mark Rackley - SPTechConSPTechCon
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Demi Ben-Ari
 
Tooling on distributed services
Tooling on distributed servicesTooling on distributed services
Tooling on distributed servicesHiraq Citra M
 
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...mfrancis
 
My Efforts to Define DevOps
My Efforts to Define DevOpsMy Efforts to Define DevOps
My Efforts to Define DevOpsSopan Shewale
 
Joget Workflow v6 Training Slides - 2 - Setting Up Joget Workflow
Joget Workflow v6 Training Slides - 2 - Setting Up Joget WorkflowJoget Workflow v6 Training Slides - 2 - Setting Up Joget Workflow
Joget Workflow v6 Training Slides - 2 - Setting Up Joget WorkflowJoget Workflow
 
Profiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsProfiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsAchievers Tech
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
 

Similar to MarkLogicWorld 2013 - Automate your deployments (20)

Stackato v6
Stackato v6Stackato v6
Stackato v6
 
Oracle Data Integrator
Oracle Data Integrator Oracle Data Integrator
Oracle Data Integrator
 
Java scriptwidgetdevelopmentjstanbul2012
Java scriptwidgetdevelopmentjstanbul2012Java scriptwidgetdevelopmentjstanbul2012
Java scriptwidgetdevelopmentjstanbul2012
 
Spring
SpringSpring
Spring
 
External JavaScript Widget Development Best Practices
External JavaScript Widget Development Best PracticesExternal JavaScript Widget Development Best Practices
External JavaScript Widget Development Best Practices
 
Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructure
 
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
 
Does Your Stuff Scale?
Does Your Stuff Scale?Does Your Stuff Scale?
Does Your Stuff Scale?
 
Habitat Overview
Habitat OverviewHabitat Overview
Habitat Overview
 
Knowage essential training
Knowage essential trainingKnowage essential training
Knowage essential training
 
What is SharePoint Development??
What is SharePoint Development??What is SharePoint Development??
What is SharePoint Development??
 
What IS SharePoint Development? by Mark Rackley - SPTechCon
 What IS SharePoint Development? by Mark Rackley - SPTechCon What IS SharePoint Development? by Mark Rackley - SPTechCon
What IS SharePoint Development? by Mark Rackley - SPTechCon
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
 
Tooling on distributed services
Tooling on distributed servicesTooling on distributed services
Tooling on distributed services
 
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
 
My Efforts to Define DevOps
My Efforts to Define DevOpsMy Efforts to Define DevOps
My Efforts to Define DevOps
 
Stackato v5
Stackato v5Stackato v5
Stackato v5
 
Joget Workflow v6 Training Slides - 2 - Setting Up Joget Workflow
Joget Workflow v6 Training Slides - 2 - Setting Up Joget WorkflowJoget Workflow v6 Training Slides - 2 - Setting Up Joget Workflow
Joget Workflow v6 Training Slides - 2 - Setting Up Joget Workflow
 
Profiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsProfiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty Details
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
 

Recently uploaded

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 

Recently uploaded (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

MarkLogicWorld 2013 - Automate your deployments

  • 1. Automate Your Deployments Geert Josten, Senior Development, Dayon April 11, 2013
  • 2. Geert Josten, Dayon Automate your MarkLogic deployments Errrr, deployment?
  • 3. Geert Josten, Dayon Automate your MarkLogic deployments Deployment = … Configuring MarkLogic • Apps, Databases, Indexes, Forests, Security, Groups, Clusters, .. Deployment of app-specific files • Static files, modules, schema’s, initial data, install/migration scripts, .. Running app-specific config/deploy scripts • Including possible user interaction, orchestration of migrations, and imports, .. More? (No bootstrapping) • A.o. installing MarkLogic itself, first admin user, entering license, ..
  • 4. Geert Josten, Dayon Automate your MarkLogic deployments Why automate?
  • 5. Geert Josten, Dayon Automate your MarkLogic deployments Well.. have you used this before?
  • 6. Geert Josten, Dayon Automate your MarkLogic deployments So many pages, so many options..
  • 7. Geert Josten, Dayon Automate your MarkLogic deployments So, why automate? Because.. • Manual work time-consuming, tedious and error-prone • Databases, app-servers, security, uploading of files, app-specific setup, .. • Repeat same installation on multiple machines • DTAP, development laptops, clusters, show casing, .. • Many updates over application life-time • During development, project iterations, simple or complex updates, .. And not in the least.. • You (developer) might not be running the installation • App managers, non-MarkLogic-expert colleagues, third party, .. In short: Keep deployments SIMPLE! (and quick if possible)
  • 8. Geert Josten, Dayon Automate your MarkLogic deployments Other built-in options?
  • 9. Geert Josten, Dayon Automate your MarkLogic deployments Configuration Manager to the rescue?
  • 10. Geert Josten, Dayon Automate your MarkLogic deployments Not just yet..
  • 11. Geert Josten, Dayon Automate your MarkLogic deployments Information Studio?
  • 12. Geert Josten, Dayon Automate your MarkLogic deployments Management API?
  • 13. Geert Josten, Dayon Automate your MarkLogic deployments How about Client API?
  • 14. Geert Josten, Dayon Automate your MarkLogic deployments Built-in options.. Fills gaps, but partial solutions • Still manual work • Multiple steps • No versioning • No automated rollback • Possibly different instructions each release Unless you (developer) do a lot of scripting.. • REST api’s • Admin/security XQuery modules
  • 15. Geert Josten, Dayon Automate your MarkLogic deployments Non-built-in options?
  • 16. Geert Josten, Dayon Automate your MarkLogic deployments Existing alternatives? Here are some: • MarkLogic Content Pump, AutoLoader and RecordLoader • Uploading • MarkLogic Ant tasks • Could do all, but developer tool, and still lots of work • Cqsh, Xmlsh • Similar to Ant tasks • Roxy • Very promising! But what about versioning, rollback, etc? • Booster • Simple HTTP wrapper for admin and security tasks • Depx and Expath Packaging System • Intended for libraries, not applications. Doesn’t configure MarkLogic
  • 17. Geert Josten, Dayon Automate your MarkLogic deployments Alternatives? Some thoughts: • All executed outside MarkLogic • Shell scripting could appeal to App managers • Roxy looks promising, but why Ruby? • Some solutions still need more or less additional scripting • No user interfaces? • No versioning as part of deployment • No automated rollback (not just on failure)
  • 18. Geert Josten, Dayon Automate your MarkLogic deployments So, what is the ideal way?
  • 19. Geert Josten, Dayon Automate your MarkLogic deployments I have a dream.. Simple method • Only MarkLogic (preferably out of box) • Simple interface Single package • App, database, security configuration • Files, modules, schemas • App-specific setup Upload and go • Ear-style deployment, one zip with all • Deployments dir, or upload • MarkLogic picks up and installs automatically
  • 20. Geert Josten, Dayon Automate your MarkLogic deployments Demo!
  • 21. Geert Josten, Dayon Automate your MarkLogic deployments MarkLogic package manager Functionality • Upload single package • With configs, files, post-install scripts • Keeps track of installed packages • Reinstall, rollback Prototype • Relies on built-ins like Configuration Manager • Custom code to upload files (could use Client-API?) • App-specific configuration • Runs at Admin-interface port Short-comings • No security config yet (could use/lend code from Roxy?) • Removal of files on file-system not possible • Storage of packages, where best?
  • 23. For More Information Geert Josten, Dayon Geert.josten@dayon.nl