SlideShare a Scribd company logo
1
handbook.vshn.ch
Gitlab Meetup 2021-09-16
Aarno Aukia, CTO
2
Agenda
● About handbook.vshn.ch
● Gitlab CI process to test,
build & deploy
● Local development
● Merge requests for
non-engineers
● Publishing
● The public VSHN employee handbook
● 2019-05-17 first commit
● 2019-07-25 first public version
● 1440 commits, 428 merge requests
● 134 web pages, 496 pages PDF
https://handbook.vshn.ch
3
● 10922 lines of AsciiDoc (similar to
Markdown)
● Processed using Antora and AsciiDoctor
○ Result: HTML, PDF, EPUB, Manpage
○ Same setup used for 7 sites
● Git repo of handbook is not public
because MR discussions are not public
● public: app catalog, managed services
● All tools are open source software
Behind the scenes
4
Building the handbook
5
Build pipeline
6
Build pipeline
7
● Language style check: https://github.com/vshn/vale
● Antora: https://github.com/vshn/antora-docker
● VSHN template: https://github.com/vshn/antora-ui-default
● PDF: https://github.com/vshn/asciidoctor-pdf
● EPUB: https://github.com/vshn/asciidoctor-epub3
● Full text indexer:
https://github.com/vshn/antora-indexer-cli
● Production base image:
https://github.com/vshn/antora-nginx
● Search base image:
https://github.com/vshn/embedded-search-engine
Links to tools
8
● Work in a feature branch from “develop”
● make preview
○ auto-reloads on source edits at
http://localhost:2020 using
https://github.com/vshn/antora-preview
● make check
○ runs basic checks before commit/CI
● Create MR from feature branch to
“develop” to review/discuss
Local development
9
● After some training, even non-engineers
can comment, propose changes, and edit
files in merge requests
● Demo: example
MR for non-engineers
10
● Complement Changelog since last release
● Create MR from develop to master
● Merge to master -> prod deployment
● Create template Changelog entry for next
release
Publishing
11
VSHN helps
software developers
to run their
applications anywhere.
12
Thank you.
https://vshn.ch/
VSHN is the leading Swiss partner for
DevOps, Kubernetes & Cloud Operations.
How can we help you?
VSHN AG - Neugasse 10 - CH-8005 Zurich - Switzerland - +41 44 545 53 00 - https://vshn.ch/ - info@vshn.ch
13

More Related Content

What's hot (20)

PDF
Git in the Enterprise: How to succeed at DevOps using Git and a monorepo
Gina Bustos
 
PDF
Introducing GitLab
Taisuke Inoue
 
PPTX
Quick workflow of a nodejs api
Paolo Carrasco Mori
 
PDF
Introducing GitLab (September 2018)
Noa Harel
 
PDF
Modern Post-Exploitation Strategies - 44CON 2012
44CON
 
PPTX
Avoiding the DevOps Tax
GitLab, Inc
 
PDF
Agnostic Continuous Delivery
Hervé Leclerc
 
PDF
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Sonja Schweigert
 
PPTX
AzureDay Kyiv 2016 Release Management
Sergii Kryshtop
 
PDF
Contributing to Open Source
All Things Open
 
PPTX
12 factor app
Dmytro Panin
 
PDF
GitOps: Git come unica fonte di verità per applicazioni e infrastruttura
sparkfabrik
 
PPTX
Introducing GitSwarm: Pure Git with Globally Scalable DevOps
Perforce
 
PPTX
Dev secops security and compliance at the speed of continuous delivery - owasp
Dag Rowe
 
PDF
Cicd pixelfederation
Juraj Hantak
 
PDF
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
DevOps.com
 
PDF
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
OlyaSurits
 
PDF
Continuous integration for Ruby on Rails
David Paluy
 
PPTX
Community - Carol Chen, Sergio Ocon - ManageIQ Design Summit 2016
ManageIQ
 
PDF
Next ’19 的 Istio 場次 重點摘要
William Yeh
 
Git in the Enterprise: How to succeed at DevOps using Git and a monorepo
Gina Bustos
 
Introducing GitLab
Taisuke Inoue
 
Quick workflow of a nodejs api
Paolo Carrasco Mori
 
Introducing GitLab (September 2018)
Noa Harel
 
Modern Post-Exploitation Strategies - 44CON 2012
44CON
 
Avoiding the DevOps Tax
GitLab, Inc
 
Agnostic Continuous Delivery
Hervé Leclerc
 
Hybrid and Multi-Cloud Strategies for Kubernetes with GitOps
Sonja Schweigert
 
AzureDay Kyiv 2016 Release Management
Sergii Kryshtop
 
Contributing to Open Source
All Things Open
 
12 factor app
Dmytro Panin
 
GitOps: Git come unica fonte di verità per applicazioni e infrastruttura
sparkfabrik
 
Introducing GitSwarm: Pure Git with Globally Scalable DevOps
Perforce
 
Dev secops security and compliance at the speed of continuous delivery - owasp
Dag Rowe
 
Cicd pixelfederation
Juraj Hantak
 
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
DevOps.com
 
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
OlyaSurits
 
Continuous integration for Ruby on Rails
David Paluy
 
Community - Carol Chen, Sergio Ocon - ManageIQ Design Summit 2016
ManageIQ
 
Next ’19 的 Istio 場次 重點摘要
William Yeh
 

Similar to The printing press of 2021 - using GitLab to publish the VSHN Handbook (20)

PDF
OVERVIEW: Chromium Source Tree
Chang W. Doh
 
PDF
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Anne Nicolas
 
PDF
Open source, What | Why | How
Nikhil Agrawal
 
PPTX
Unicon July 2015 IAM Briefing
John Gasper
 
PDF
Summary of Igalia's contributions to Chromium in the past year (BlinkOn 10)
Igalia
 
PDF
Improving the MODX Documentation - March 29, 2019
Mark Hamstra
 
PDF
Contributions to an open source project: Igalia and the Chromium project
Igalia
 
PDF
airhdl -- A Web-Based Register File Generator for Xilinx ZYNQ, MicroBlaze, an...
Guy Eschemann
 
PDF
[scala.by] Launching new application fast
Denis Karpenko
 
PDF
Collaborative environment with data science notebook
Moon Soo Lee
 
PDF
Go at uber
Rob Skillington
 
PDF
Open Source Hardware and Libre Silicon
Drew Fustini
 
PDF
Lately in php - 2019 May 4
Eric Poe
 
PDF
Parallel development of Web Apps | Codesushi - Gliwice 2017
Krzysztof (Chris) Ozog
 
PDF
BKK16-400B ODPI - Standardizing Hadoop
Linaro
 
PDF
ODPi (Open Data Platform Initiative) - Linaro Connect
Ganesh Raju
 
PDF
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
Ron Munitz
 
PDF
Gitlab Commit: How Containerized GitLab CI Pipelines Can Help You Streamline ...
Nico Meisenzahl
 
PDF
Open Source Weather Information Project with OpenStack Object Storage
Sammy Fung
 
PDF
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
mfrancis
 
OVERVIEW: Chromium Source Tree
Chang W. Doh
 
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Anne Nicolas
 
Open source, What | Why | How
Nikhil Agrawal
 
Unicon July 2015 IAM Briefing
John Gasper
 
Summary of Igalia's contributions to Chromium in the past year (BlinkOn 10)
Igalia
 
Improving the MODX Documentation - March 29, 2019
Mark Hamstra
 
Contributions to an open source project: Igalia and the Chromium project
Igalia
 
airhdl -- A Web-Based Register File Generator for Xilinx ZYNQ, MicroBlaze, an...
Guy Eschemann
 
[scala.by] Launching new application fast
Denis Karpenko
 
Collaborative environment with data science notebook
Moon Soo Lee
 
Go at uber
Rob Skillington
 
Open Source Hardware and Libre Silicon
Drew Fustini
 
Lately in php - 2019 May 4
Eric Poe
 
Parallel development of Web Apps | Codesushi - Gliwice 2017
Krzysztof (Chris) Ozog
 
BKK16-400B ODPI - Standardizing Hadoop
Linaro
 
ODPi (Open Data Platform Initiative) - Linaro Connect
Ganesh Raju
 
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
Ron Munitz
 
Gitlab Commit: How Containerized GitLab CI Pipelines Can Help You Streamline ...
Nico Meisenzahl
 
Open Source Weather Information Project with OpenStack Object Storage
Sammy Fung
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
mfrancis
 
Ad

More from Aarno Aukia (20)

PDF
DevOps for AI: running LLMs in production with Kubernetes and KubeFlow
Aarno Aukia
 
PDF
Wie macht man aus Software einen Online-Service in der Cloud
Aarno Aukia
 
PDF
DevOps & DevSecOps in Swiss Banking
Aarno Aukia
 
PDF
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Aarno Aukia
 
PDF
DevSecOps - Security in DevOps
Aarno Aukia
 
PDF
Security in the DevOps pipeline of containerized core application: Case Study...
Aarno Aukia
 
PDF
Next gen software operations models in the cloud
Aarno Aukia
 
PDF
Von der Straße in die Cloud: Optimierung von Logistikprozessen mit Docker, Ku...
Aarno Aukia
 
PDF
Kubecon 2019 Recap
Aarno Aukia
 
PDF
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
PDF
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
PDF
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
PDF
My broken container is gone - how to debug containers on container platforms
Aarno Aukia
 
PDF
Automated Server Administration for DevSecOps
Aarno Aukia
 
PDF
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Aarno Aukia
 
PDF
Continuous security improvements in the DevOps process
Aarno Aukia
 
PDF
Application Portability using Cloud Native Technology: Docker, Kubernetes
Aarno Aukia
 
PDF
Moving Applications to the cloud
Aarno Aukia
 
PDF
Migration von Applikationen in die Cloud
Aarno Aukia
 
PDF
IPv6 on Container Plattforms
Aarno Aukia
 
DevOps for AI: running LLMs in production with Kubernetes and KubeFlow
Aarno Aukia
 
Wie macht man aus Software einen Online-Service in der Cloud
Aarno Aukia
 
DevOps & DevSecOps in Swiss Banking
Aarno Aukia
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Aarno Aukia
 
DevSecOps - Security in DevOps
Aarno Aukia
 
Security in the DevOps pipeline of containerized core application: Case Study...
Aarno Aukia
 
Next gen software operations models in the cloud
Aarno Aukia
 
Von der Straße in die Cloud: Optimierung von Logistikprozessen mit Docker, Ku...
Aarno Aukia
 
Kubecon 2019 Recap
Aarno Aukia
 
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
My broken container is gone - how to debug containers on container platforms
Aarno Aukia
 
Automated Server Administration for DevSecOps
Aarno Aukia
 
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Aarno Aukia
 
Continuous security improvements in the DevOps process
Aarno Aukia
 
Application Portability using Cloud Native Technology: Docker, Kubernetes
Aarno Aukia
 
Moving Applications to the cloud
Aarno Aukia
 
Migration von Applikationen in die Cloud
Aarno Aukia
 
IPv6 on Container Plattforms
Aarno Aukia
 
Ad

Recently uploaded (20)

PDF
How to Download and Install ADT (ABAP Development Tools) for Eclipse IDE | SA...
SAP Vista, an A L T Z E N Company
 
PPT
Activate_Methodology_Summary presentatio
annapureddyn
 
PPTX
Farrell__10e_ch04_PowerPoint.pptx Programming Logic and Design slides
bashnahara11
 
PDF
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
PPT
Brief History of Python by Learning Python in three hours
adanechb21
 
PDF
New Download MiniTool Partition Wizard Crack Latest Version 2025
imang66g
 
PPTX
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
PPTX
Employee salary prediction using Machine learning Project template.ppt
bhanuk27082004
 
PDF
Supabase Meetup: Build in a weekend, scale to millions
Carlo Gilmar Padilla Santana
 
PPTX
Explanation about Structures in C language.pptx
Veeral Rathod
 
PDF
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 
PDF
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PDF
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
PPTX
Role Of Python In Programing Language.pptx
jaykoshti048
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PPTX
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
PDF
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
PDF
Infrastructure planning and resilience - Keith Hastings.pptx.pdf
Safe Software
 
PDF
How Agentic AI Networks are Revolutionizing Collaborative AI Ecosystems in 2025
ronakdubey419
 
How to Download and Install ADT (ABAP Development Tools) for Eclipse IDE | SA...
SAP Vista, an A L T Z E N Company
 
Activate_Methodology_Summary presentatio
annapureddyn
 
Farrell__10e_ch04_PowerPoint.pptx Programming Logic and Design slides
bashnahara11
 
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
Brief History of Python by Learning Python in three hours
adanechb21
 
New Download MiniTool Partition Wizard Crack Latest Version 2025
imang66g
 
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
Employee salary prediction using Machine learning Project template.ppt
bhanuk27082004
 
Supabase Meetup: Build in a weekend, scale to millions
Carlo Gilmar Padilla Santana
 
Explanation about Structures in C language.pptx
Veeral Rathod
 
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
Role Of Python In Programing Language.pptx
jaykoshti048
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
Infrastructure planning and resilience - Keith Hastings.pptx.pdf
Safe Software
 
How Agentic AI Networks are Revolutionizing Collaborative AI Ecosystems in 2025
ronakdubey419
 

The printing press of 2021 - using GitLab to publish the VSHN Handbook

  • 2. 2 Agenda ● About handbook.vshn.ch ● Gitlab CI process to test, build & deploy ● Local development ● Merge requests for non-engineers ● Publishing
  • 3. ● The public VSHN employee handbook ● 2019-05-17 first commit ● 2019-07-25 first public version ● 1440 commits, 428 merge requests ● 134 web pages, 496 pages PDF https://handbook.vshn.ch 3
  • 4. ● 10922 lines of AsciiDoc (similar to Markdown) ● Processed using Antora and AsciiDoctor ○ Result: HTML, PDF, EPUB, Manpage ○ Same setup used for 7 sites ● Git repo of handbook is not public because MR discussions are not public ● public: app catalog, managed services ● All tools are open source software Behind the scenes 4
  • 8. ● Language style check: https://github.com/vshn/vale ● Antora: https://github.com/vshn/antora-docker ● VSHN template: https://github.com/vshn/antora-ui-default ● PDF: https://github.com/vshn/asciidoctor-pdf ● EPUB: https://github.com/vshn/asciidoctor-epub3 ● Full text indexer: https://github.com/vshn/antora-indexer-cli ● Production base image: https://github.com/vshn/antora-nginx ● Search base image: https://github.com/vshn/embedded-search-engine Links to tools 8
  • 9. ● Work in a feature branch from “develop” ● make preview ○ auto-reloads on source edits at http://localhost:2020 using https://github.com/vshn/antora-preview ● make check ○ runs basic checks before commit/CI ● Create MR from feature branch to “develop” to review/discuss Local development 9
  • 10. ● After some training, even non-engineers can comment, propose changes, and edit files in merge requests ● Demo: example MR for non-engineers 10
  • 11. ● Complement Changelog since last release ● Create MR from develop to master ● Merge to master -> prod deployment ● Create template Changelog entry for next release Publishing 11
  • 12. VSHN helps software developers to run their applications anywhere. 12
  • 13. Thank you. https://vshn.ch/ VSHN is the leading Swiss partner for DevOps, Kubernetes & Cloud Operations. How can we help you? VSHN AG - Neugasse 10 - CH-8005 Zurich - Switzerland - +41 44 545 53 00 - https://vshn.ch/ - [email protected] 13