SlideShare una empresa de Scribd logo
1 de 57
Automate
documentation
publishing
with Jenkins
<About me />
Technical Lead Co-Admin
TrainerCo-Organizer
Michał Skowron
“A self-contained,
open source automation
server which can be
used to automate all
sorts of tasks related
to building, testing,
and deploying software”
<About Jenkins />
Cross-platform (Windows, Linux, Mac OS X)
Extensible with plugins
<About Jenkins />
Why should I care?
<About Jenkins />
Jenkins can help you
automate documentation
delivery
<About Jenkins />
<Plan />
Path to automation
Local builds
Remote Desktop Connection
Jenkins
Why Jenkins?
Solution
Resources
Installation
Configuration
Plugins
Jobs
Usage
Examples
Benefits
<Path to automation />
Local
builds
JenkinsRemote
Desktop
Connection
<Local builds />
Not centralized
Not automated
No centralized control
<Local builds />
<Local builds />
Keeping your machine busy
<Local builds />
Different versions of
the authoring tool
Inconsistent output
<Local builds />
Help portal built outside
the authoring tool
Restricted access to
the webserver
Centralized
Semi-automated
<Remote Desktop
Connection />
Remote Desktop Protocol
<Remote Desktop Connection />
<Remote Desktop Connection />
Batch files and task
scheduler
<Jenkins />
Centralized
Automated
<Jenkins />
Web access
<Jenkins />
Centralized control
Free
<Why Jenkins? />
<Why Jenkins? />
Flexible
<Why Jenkins? />
Familiar
<Solution />
Windows 7 Professional SP 1
(32-bit)
Intel Xeon @ 2.4 GHz
4 GB RAM
100 GB HDD
<Resources />
No in-house developers
< Resources />
https://bitnami.com/stack/jenkins
version 1.658
Bitnami Jenkins Stack
tool
<Installation />
Use a Windows admin
account to run Jenkins
services
<Installation />
Accessing Jenkins
http://server-name/jenkins/
<Configuration />
<Configuration />
Number of concurrent builds
Manage Jenkins > Configure System
<Configuration />
Environment variables
Manage Jenkins > Configure System > Global Properties
<Configuration />
Access rights
Manage Jenkins > Configure Global Security
<Configuration />
Email account for notifications
Manage Jenkins > Configure System > E-mail Notification
Office 365
 Problem: Handshaking security errors
 Solution: Enable the Transport Layer
Security (TLS) in the Tomcat
properties
-Dmail.smtp.starttls.enable=true
-Dhudson.model.DirectoryBrowserSupport.CSP=
<Configuration />
ThinBackup
Email Extension Plugin
<Plugins />
<Plugins />
Build-name-setter
Date Parameter
Plugin
Build Trigger
Badge Plugin
<Plugins />
Extra Columns Plugin
Multiple configuration options
<Jobs />
Project security
<Jobs />
<Jobs />
Checkout from source control
Git | SVN | CVS
<Jobs />
Build parameters
Boolean | String | Choice | Text | …
Schedule
Cron syntax
<Jobs />
<Jobs />
Script
execution
Windows batch
Linux shell
…
<Jobs />
Email notifications
Default
Plugin
<Usage />
Running jobs
<Usage />
Checking the build queue
<Usage />
Viewing the build log
<Examples />
 Used by tech writers for authoring
 No login required to run the job
 Documentation hosted on a Linux webserver
 Build parameters to choose
 Builds from one SVN location (trunk)
 Building and publishing logic in a C#
script
 Scheduled to run everyday between 1-2 am
<#1 />
Publishing documentation
to the draft server
<#1 />
Publishing documentation
to the draft server
Send an email notification
if the build fails
Check out source
files from SVN
Execute the C# script
using provided parameter values
<#2 />
Publishing documentation
to the test server
 Used by localization engineers for QA
 Login required to run the job
 Documentation hosted on a Linux webserver
 Build parameters to choose
 Builds from different SVN locations
(branches)
 Building and publishing logic in a C#
script
 No schedule
<#2 />
Publishing documentation
to the test server
Send an email notification
if the build fails
Check out source
files from SVN
Execute the C# script
using provided parameter values
<#3 />
Copying documentation from the test
server to the production server
 Used by localization engineers for
publishing
 Login required to run the job
 Documentation hosted on a Linux webserver
 Build parameters to choose
 Copying logic in a Windows batch file
 No schedule
<#3 />
Copying documentation from the test
server to the production server
Check out source
files from SVN
Execute the Windows batch file
using provided parameter values
<Benefits/>
Other stuff
Techwriter.pl: http://techwriter.pl/
ITCQF: http://itcqf.org/
Poland MadCap Flare User Group: https://web.facebook.com/groups/PLFUG/
Contact details
Email: michal.skowron@3di-info.com
LinkedIn: https://www.linkedin.com/in/michalskowron/
Resources
3di Poland SlideShare: https://www.slideshare.net/3diPoland
3di blog: http://3di.com.pl/blog/
<Info />

Más contenido relacionado

La actualidad más candente

Tracing, Logging and Troubleshooting 3.7
Tracing, Logging and Troubleshooting 3.7Tracing, Logging and Troubleshooting 3.7
Tracing, Logging and Troubleshooting 3.7StephenKardian
 
Database Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangDatabase Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangRed Gate Software
 
Version your build process as you version your code
Version your build process as you version your codeVersion your build process as you version your code
Version your build process as you version your codeVincent Latombe
 
Class.devops.chapter.3.hybrid
Class.devops.chapter.3.hybridClass.devops.chapter.3.hybrid
Class.devops.chapter.3.hybridRoss Tang
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins IntroductionPavan Gupta
 
Setup Build & Deploy with Jenkins CI
Setup Build & Deploy with Jenkins CISetup Build & Deploy with Jenkins CI
Setup Build & Deploy with Jenkins CIwalming
 
Jenkins For One
Jenkins For OneJenkins For One
Jenkins For OneMark Waite
 
Version Control With Subversion
Version Control With SubversionVersion Control With Subversion
Version Control With SubversionSamnang Chhun
 
Debugging your Way through .NET with Visual Studio 2015
Debugging your Way through .NET with Visual Studio 2015Debugging your Way through .NET with Visual Studio 2015
Debugging your Way through .NET with Visual Studio 2015Ido Flatow
 
Implementation of the Continuous Integration based on Atlassian Bamboo
 Implementation of the Continuous Integration based on Atlassian Bamboo Implementation of the Continuous Integration based on Atlassian Bamboo
Implementation of the Continuous Integration based on Atlassian BambooАнете Аннемария
 
Running Selenium tests on CI server
Running Selenium tests on CI serverRunning Selenium tests on CI server
Running Selenium tests on CI serverAleksandr Zhuikov
 
Part 4 - Managing your svn repository using jas forge
Part 4  - Managing your svn repository using jas forgePart 4  - Managing your svn repository using jas forge
Part 4 - Managing your svn repository using jas forgeJasmine Conseil
 
Muraliupdatedpersonal091215
Muraliupdatedpersonal091215Muraliupdatedpersonal091215
Muraliupdatedpersonal091215Murali Krishna R
 
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsIntroduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsBrice Argenson
 
Continous Delivery with CQ
Continous Delivery with CQContinous Delivery with CQ
Continous Delivery with CQolibur
 
SVN Tool Information : Best Practices
SVN Tool Information  : Best PracticesSVN Tool Information  : Best Practices
SVN Tool Information : Best PracticesMaidul Islam
 
Rapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiRapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiAEM HUB
 

La actualidad más candente (20)

Tracing, Logging and Troubleshooting 3.7
Tracing, Logging and Troubleshooting 3.7Tracing, Logging and Troubleshooting 3.7
Tracing, Logging and Troubleshooting 3.7
 
ONAP on Vagrant
ONAP on VagrantONAP on Vagrant
ONAP on Vagrant
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
Database Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangDatabase Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest Hwang
 
Version your build process as you version your code
Version your build process as you version your codeVersion your build process as you version your code
Version your build process as you version your code
 
Class.devops.chapter.3.hybrid
Class.devops.chapter.3.hybridClass.devops.chapter.3.hybrid
Class.devops.chapter.3.hybrid
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 
Setup Build & Deploy with Jenkins CI
Setup Build & Deploy with Jenkins CISetup Build & Deploy with Jenkins CI
Setup Build & Deploy with Jenkins CI
 
Jenkins For One
Jenkins For OneJenkins For One
Jenkins For One
 
Version Control With Subversion
Version Control With SubversionVersion Control With Subversion
Version Control With Subversion
 
Debugging your Way through .NET with Visual Studio 2015
Debugging your Way through .NET with Visual Studio 2015Debugging your Way through .NET with Visual Studio 2015
Debugging your Way through .NET with Visual Studio 2015
 
SVN Basics
SVN BasicsSVN Basics
SVN Basics
 
Implementation of the Continuous Integration based on Atlassian Bamboo
 Implementation of the Continuous Integration based on Atlassian Bamboo Implementation of the Continuous Integration based on Atlassian Bamboo
Implementation of the Continuous Integration based on Atlassian Bamboo
 
Running Selenium tests on CI server
Running Selenium tests on CI serverRunning Selenium tests on CI server
Running Selenium tests on CI server
 
Part 4 - Managing your svn repository using jas forge
Part 4  - Managing your svn repository using jas forgePart 4  - Managing your svn repository using jas forge
Part 4 - Managing your svn repository using jas forge
 
Muraliupdatedpersonal091215
Muraliupdatedpersonal091215Muraliupdatedpersonal091215
Muraliupdatedpersonal091215
 
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsIntroduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with Jenkins
 
Continous Delivery with CQ
Continous Delivery with CQContinous Delivery with CQ
Continous Delivery with CQ
 
SVN Tool Information : Best Practices
SVN Tool Information  : Best PracticesSVN Tool Information  : Best Practices
SVN Tool Information : Best Practices
 
Rapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiRapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub Wadolowski
 

Similar a Automate documentation publishing with Jenkins

Why NXTware Remote for Jenkins
Why NXTware Remote for JenkinsWhy NXTware Remote for Jenkins
Why NXTware Remote for Jenkinsecubemarketing
 
Continuous Integration and development environment approach
Continuous Integration and development environment approachContinuous Integration and development environment approach
Continuous Integration and development environment approachAleksandr Tsertkov
 
Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Michal Ziarnik
 
Flash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applicationsFlash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applicationsRIA RUI Society
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdfMahmoudAlnmr1
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkinsecubemarketing
 
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/Hudson
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/HudsonEclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/Hudson
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/HudsonVladLica
 
413450-rc218-cdw-jenkins-workflow
413450-rc218-cdw-jenkins-workflow413450-rc218-cdw-jenkins-workflow
413450-rc218-cdw-jenkins-workflowAndy Pemberton
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practicesCode Mastery
 
Hudson
HudsonHudson
Hudson8x8
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applicationsSunil Dalal
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementSharkrit JOBBO
 
Announcing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAnnouncing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAmazon Web Services
 
Aleksey_Demedetskiy_Jenkins
Aleksey_Demedetskiy_JenkinsAleksey_Demedetskiy_Jenkins
Aleksey_Demedetskiy_JenkinsCiklum
 

Similar a Automate documentation publishing with Jenkins (20)

Why NXTware Remote for Jenkins
Why NXTware Remote for JenkinsWhy NXTware Remote for Jenkins
Why NXTware Remote for Jenkins
 
Continuous Integration and development environment approach
Continuous Integration and development environment approachContinuous Integration and development environment approach
Continuous Integration and development environment approach
 
Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2
 
Build Time Hacking
Build Time HackingBuild Time Hacking
Build Time Hacking
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Flash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applicationsFlash Camp Chennai - Build automation of Flex and AIR applications
Flash Camp Chennai - Build automation of Flex and AIR applications
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkins
 
Jenkins & IaC
Jenkins & IaCJenkins & IaC
Jenkins & IaC
 
Jenkins presentation
Jenkins presentationJenkins presentation
Jenkins presentation
 
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/Hudson
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/HudsonEclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/Hudson
Eclipse DemoCamp Bucharest 2014 - Continuous Integration Jenkins/Hudson
 
413450-rc218-cdw-jenkins-workflow
413450-rc218-cdw-jenkins-workflow413450-rc218-cdw-jenkins-workflow
413450-rc218-cdw-jenkins-workflow
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practices
 
Hudson
HudsonHudson
Hudson
 
JenkinsCI
JenkinsCIJenkinsCI
JenkinsCI
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
 
Announcing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAnnouncing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck Talks
 
Aleksey_Demedetskiy_Jenkins
Aleksey_Demedetskiy_JenkinsAleksey_Demedetskiy_Jenkins
Aleksey_Demedetskiy_Jenkins
 

Último

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
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Último (20)

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
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Automate documentation publishing with Jenkins

Notas del editor

  1. SLIDE 1 You don’t need to jump immediately at creating a solution for the entire department of 100 people. You can find a small project and automate documentation publishing for a few authors. And Jenkins can help you with that.
  2. SLIDE 2 No notes
  3. SLIDE 3 No notes
  4. SLIDE 4 No notes
  5. SLIDE 5 No notes
  6. SLIDE 6 No notes
  7. SLIDE 7 No notes
  8. SLIDE 8 No notes
  9. SLIDE 9 No notes
  10. SLIDE 10 No notes
  11. SLIDE 11 - No queueing - No build log – who built what and when - No possibility to disable builds - No schedule – it’s possible to schedule a batch target in Flare (scheduled builds are created using the Windows Task Scheduler) but you’re machine must be on to run a scheduled task
  12. SLIDE 12 MadCap Flare is quite heavy on resources
  13. SLIDE 13 - Different versions of MadCap Flare – although versions are compatible, there may be differences in building logic - Inconsistent output – layout and formatting problems, like missing fonts
  14. SLIDE 14 1. Help portal built outside the authoring tool - Authoring done in Flare - Content styled and formatted on the web server – need to upload it to the target web server to view the real styling 2. Restricted access to the server - Firewall - connection to the server possible only from the office, some people work remotely and the access didn’t work through VPN - Login required - login credentials are stored locally on a machine, not in a Flare project. It wasn’t possible to commit them to source control. Everyone had to provide credentials individually on their machine
  15. SLIDE 15 No notes
  16. SLIDE 16 - Not handy - Slow - Only one connection possible at a time
  17. SLIDE 17 - No queueing mechanism for manually triggered builds - No management options (disabling builds) – info left in notepad “Don’t touch the batch files” - No easy overview of what was run and when
  18. SLIDE 18 No notes
  19. SLIDE 19 - Fast - Easy - Can be accessed via VPN
  20. SLIDE 20 - Queueing - Build logs - Disabling/enabling builds - Scheduling - Easy access control
  21. SLIDE 21 No notes
  22. SLIDE 22 No notes
  23. SLIDE 23 No notes
  24. SLIDE 24 No notes
  25. SLIDE 25 No notes
  26. SLIDE 26 - We (tech writers) were on our own - No existing software delivery process to plug into
  27. SLIDE 27 - One installation package - Easy to deploy
  28. SLIDE 28 No notes
  29. SLIDE 29 No notes
  30. SLIDE 30 This setting defines how many building processes can run at the same time. Keep this number at a reasonable level, not to overload the building server. It’s especially important in case of a low-budget server that doesn’t offer outstanding performance. If you start more processes than defined by this parameter, Jenkins will queue them for execution.
  31. SLIDE 31 Custom variables for things that can be reused in different parts of Jenkins. A good candidate for a variable would be a path to an application, for example, to your help authoring tool. The variable is defined in the Jenkins settings and can be used in jobs. This way you don't have to type in the path in each job you configure. When the path changes for some reason (e.g. you move the Flare installation folder to a different location), you don't have to update the path in every job where it's used.
  32. SLIDE 32 You may need to limit what certain users can do and to leave full control to the administrator. One of the options is to let everyone start the building process and see the log entries, but to allow only admins to change the system configuration. Jenkins has quite a robust set of permissions that you can adjust.
  33. SLIDE 33 - Jenkins offers a basic email notification mechanism that offers a very limited set of options - If you need more options, you need a plugin – mentioned on the next slide
  34. SLIDE 34 No notes
  35. SLIDE 35 - ThinBackup – scheduled or on-demand backups of the Jenkins configuration, possibility to restore from backups - Email Extension plugin - custom email notifications, you can define the content, recipients, triggers on the system and job level
  36. SLIDE 36 - Build-name-setter – custom build names within jobs - Date Parameter Plugin – date as a build parameter
  37. SLIDE 37 - Build Trigger Badge plugin - icons in the build history identifying manual and automatic builds - Extra Columns Plugin – additional columns in a list view
  38. SLIDE 38 No notes
  39. SLIDE 39 No notes
  40. SLIDE 40 No notes
  41. SLIDE 41 No notes
  42. SLIDE 42 You can start jobs manually or schedule them to start automatically. For example, you can set up a job to start every day between 1 and 2 am. This field follows the syntax of cron (with minor differences). Specifically, each line consists of 5 fields separated by TAB or whitespace: - MINUTE - HOUR - DAY OF MONTH - MONTH - DAY OF WEEK To allow periodically scheduled tasks to produce even load on the system, the symbol H (for “hash”) should be used wherever possible. For example, using 0 0 * * * for a dozen daily jobs will cause a large spike at midnight. In contrast, using H H * * * would still execute each job once a day, but not all at the same time, better using limited resources.
  43. SLIDE 43 You can couple Jenkins with any documentation tool that supports building output from the command-line interface (CLI), like static site generators and API documentation generators. If you prefer not to use Windows batch commands, you can install plugins for scripting languages, like Python.
  44. SLIDE 44 You can also configure a job to perform a post-build action after the main building steps finish. For example, you can tell Jenkins to send you an email notification with the log attached to it each time the job doesn’t complete successfully.
  45. SLIDE 45 No notes
  46. SLIDE 46 No notes
  47. SLIDE 47 No notes
  48. SLIDE 48 We have three servers: - Draft - Test - Production Authors work on the draft server, localization engineers QA content on the test server. When the content is translated and ready for release, localization engineers copy the content from the test to production server.
  49. SLIDE 49 No notes
  50. SLIDE 50 No notes
  51. SLIDE 51 No notes
  52. SLIDE 52 No notes
  53. SLIDE 53 Copying logic in a Windows batch file: - Log in via PuTTy to create a backup in ZIP format - Rsync the test and productions folders - Log in via WinSCP to download the backup file - Use Windows copy to put the downloaded backup on a network share
  54. SLIDE 54 No notes
  55. SLIDE 55 No notes
  56. SLIDE 56 No notes
  57. SLIDE 57 No notes