SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
Puppet Control Repository and
GIT
Martin Alfke - example42 GmbH
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 2
Puppet Trainer since 2011
CEO & Co-Founder example42 GmbH
tuxmea (Twitter, GitHub, Slack)
About me
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 3
Puppet Control-Repo
Simple GIT workflow
GIT workflow with staging branch
GIT Flow
Topics covered:
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Puppet Control Repo
4
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Puppet Control Repo
5
One repository for your own code
Separation of upstream modules
(Puppetfile or git submodules)
Branches will become Puppet
environments
Either empty repo or example42 Puppet
System Infrastructure Construction Kit
(PSICK on GitHub).
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Puppet Control Repo
6
Image: tatlin
App-DEV development testing production
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Puppet Control Repo
7
Image: tatlin
App-DEV development testing production
Puppet DEV production
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Puppet Control Repo
8
Image: tatlin
App-DEV development testing production
Puppet DEV production production production
Application Stages
Puppet Environments
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Simple GIT workflow
9
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Simple GIT workflow
10
One long living protected branch
(production)
Differences between stages are in
Hiera.
Activating features using feature flags.
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Simple GIT workflow
11
All changes come via feature branches
Prevent special chars like +, -, %, ...
these environments will not get
deployed.
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 12
Simple GIT workflow
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Simple GIT workflow
13
Pro:
Easy to learn, easy to handle
Con:
No real staging of code, code changes
affect all stages (when activated)
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT workflow with staging branch
14
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT workflow with staging branch
15
Network separation between
development and production?
Separate GIT servers and Puppet
Masters?
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT workflow with staging branch
16
All code must be developed in
development zone
No code may be added in
production, except via merge
requests.
CI/CD Systems synchronizes code
base using a staging branch
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 17
GIT workflow with staging branch
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT workflow with staging branch
18
Pro:
Security separation is taken care on
Con:
Needs automatic merging and staging,
no manual merges.
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
19
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
20
Image: tatlin
ITIL processes?
Strict code separation between
development and production required?
Hot fixes and Features must be
possible?
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
21
Image: tatlin
No merges between branches!
Each branch is an individual
development.
Cherry-Pick into next stage.
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 22
GIT Flow
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 23
GIT Flow
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
24
Image: tatlin
Each feature branch may consist of a
single commit only.
Use git commit --amend or git squash
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
25
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
26
Image: tatlin
GIT Flow
Requires knowledge on
- squashing
- rebasing
- solving merge conflicts
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 27
GIT Flow
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
GIT Flow
28
Image: tatlin
Pro:
Branch specific development possible
Con:
needs deeper understanding on GIT
more work to bring changes into
desired branch
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Summary
29
Simple can be harder than complex:
You have to work hard to get your
thinking clean to make it simple.
But it's worth it in the end because
once you get there, you can move
mountains.
- Steve Jobs
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Conclusion
30
Image: tatlin
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Conclusion
31
Start simple and expand when learning. - K.I.S.S.
Automate everything, also your code deployment!
GIT has a learning curve. Take care on that! Learn GIT!
Never adopt complex workflows if you don’t need them!
“If you use all your smartness to write the code, you have none left to debug
it.” (David Schmidt)
Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH
Conclusion 2
32
Stop social distancing! We need physical distance!
Take care on people who need help!
Puppet Control Repository and
GIT
Martin Alfke - example42 GmbH

Mais conteúdo relacionado

Mais procurados

What's New in Plug-in Development (Galileo)
What's New in Plug-in Development (Galileo)What's New in Plug-in Development (Galileo)
What's New in Plug-in Development (Galileo)Chris Aniszczyk
 
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlantaPlugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlantaAlexandre Gouaillard
 
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"Aberla
 
Continuous Improvement in PHP Projects - PHP UK Conference 2011
Continuous Improvement in PHP Projects - PHP UK Conference 2011Continuous Improvement in PHP Projects - PHP UK Conference 2011
Continuous Improvement in PHP Projects - PHP UK Conference 2011Mayflower GmbH
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudLiz Warner
 
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RTEclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RTCharles Rivet
 
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...Richard Johansson
 
Jenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipelineJenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipelineSteffen Gebert
 
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...NETWAYS
 
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipseCharles Rivet
 

Mais procurados (12)

What's New in Plug-in Development (Galileo)
What's New in Plug-in Development (Galileo)What's New in Plug-in Development (Galileo)
What's New in Plug-in Development (Galileo)
 
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlantaPlugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
 
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"
ESEconf2011 - Freixa Vidal Roger: "Oracle's Java Strategy"
 
Continuous Improvement in PHP Projects - PHP UK Conference 2011
Continuous Improvement in PHP Projects - PHP UK Conference 2011Continuous Improvement in PHP Projects - PHP UK Conference 2011
Continuous Improvement in PHP Projects - PHP UK Conference 2011
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual Cloud
 
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RTEclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
EclipseCon 2014 - Modeling symposium lightning talk - Papyrus-RT
 
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...
How to set up an ASP.NET 5 Continuous Delivery Pipeline using IBM Bluemix Dev...
 
{py}gradle
{py}gradle{py}gradle
{py}gradle
 
Python+gradle
Python+gradlePython+gradle
Python+gradle
 
Jenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipelineJenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipeline
 
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...
stackconf 2020 | Enterprise CI/CD Integration Testing Environments Done Right...
 
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
 

Semelhante a Puppet Camp Germany 2020 - Puppet Control Repo and GIT

PuppetCamp2021-Testing Modules and ControlRepo.pdf
PuppetCamp2021-Testing Modules and ControlRepo.pdfPuppetCamp2021-Testing Modules and ControlRepo.pdf
PuppetCamp2021-Testing Modules and ControlRepo.pdfMartin Alfke
 
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan Herrmann
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan HerrmannSupporting Java™ 9 in Eclipse - A critical perspective - Stephan Herrmann
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan HerrmannEclipse Day India
 
OSDC 2018 | Ops hates containers. Why? by Martin Alfke
OSDC 2018 |  Ops hates containers. Why? by Martin AlfkeOSDC 2018 |  Ops hates containers. Why? by Martin Alfke
OSDC 2018 | Ops hates containers. Why? by Martin AlfkeNETWAYS
 
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry PiAdafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry PiImad Rhali
 
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerIteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerPuppet
 
GIT training - advanced for software projects
GIT training - advanced for software projectsGIT training - advanced for software projects
GIT training - advanced for software projectsThierry Gayet
 
Going native with less coupling: Dependency Injection in C++
Going native with less coupling: Dependency Injection in C++Going native with less coupling: Dependency Injection in C++
Going native with less coupling: Dependency Injection in C++Daniele Pallastrelli
 
stackconf 2022: Configuration Management vs. Workflows vs. Orchestration
stackconf 2022: Configuration Management vs. Workflows vs. Orchestrationstackconf 2022: Configuration Management vs. Workflows vs. Orchestration
stackconf 2022: Configuration Management vs. Workflows vs. OrchestrationNETWAYS
 
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...Edge AI and Vision Alliance
 
GEFRAN GCube Fit extru+
GEFRAN GCube Fit extru+GEFRAN GCube Fit extru+
GEFRAN GCube Fit extru+Gefran Inc.
 
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONS
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONSPERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONS
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONSATMOSPHERE .
 
IBM Bluemix and the Internet of Things - Workshop
IBM Bluemix and the Internet of Things - WorkshopIBM Bluemix and the Internet of Things - Workshop
IBM Bluemix and the Internet of Things - Workshopgjuljo
 
PluginAndPlay-AmsterdamJUG.pptx
PluginAndPlay-AmsterdamJUG.pptxPluginAndPlay-AmsterdamJUG.pptx
PluginAndPlay-AmsterdamJUG.pptxSimonedeGijt
 
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...Joel W. King
 
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...Burton Lee
 
Getting started with AGL using a Raspberry Pi
Getting started with AGL using a Raspberry PiGetting started with AGL using a Raspberry Pi
Getting started with AGL using a Raspberry PiLeon Anavi
 
Elastic network of things with mqtt and micro python
Elastic network of things with mqtt and micro pythonElastic network of things with mqtt and micro python
Elastic network of things with mqtt and micro pythonWei Lin
 
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdf
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdfPic18f4550 microcontroller based projects _ PIC Microcontroller.pdf
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdfIsmailkhan77481
 
Pfau the impact of design thinking
Pfau   the impact of design thinkingPfau   the impact of design thinking
Pfau the impact of design thinkingISSIP
 

Semelhante a Puppet Camp Germany 2020 - Puppet Control Repo and GIT (20)

PuppetCamp2021-Testing Modules and ControlRepo.pdf
PuppetCamp2021-Testing Modules and ControlRepo.pdfPuppetCamp2021-Testing Modules and ControlRepo.pdf
PuppetCamp2021-Testing Modules and ControlRepo.pdf
 
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan Herrmann
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan HerrmannSupporting Java™ 9 in Eclipse - A critical perspective - Stephan Herrmann
Supporting Java™ 9 in Eclipse - A critical perspective - Stephan Herrmann
 
OSDC 2018 | Ops hates containers. Why? by Martin Alfke
OSDC 2018 |  Ops hates containers. Why? by Martin AlfkeOSDC 2018 |  Ops hates containers. Why? by Martin Alfke
OSDC 2018 | Ops hates containers. Why? by Martin Alfke
 
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry PiAdafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi
Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi
 
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerIteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
 
GIT training - advanced for software projects
GIT training - advanced for software projectsGIT training - advanced for software projects
GIT training - advanced for software projects
 
Going native with less coupling: Dependency Injection in C++
Going native with less coupling: Dependency Injection in C++Going native with less coupling: Dependency Injection in C++
Going native with less coupling: Dependency Injection in C++
 
stackconf 2022: Configuration Management vs. Workflows vs. Orchestration
stackconf 2022: Configuration Management vs. Workflows vs. Orchestrationstackconf 2022: Configuration Management vs. Workflows vs. Orchestration
stackconf 2022: Configuration Management vs. Workflows vs. Orchestration
 
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...
“TensorFlow Lite for Microcontrollers (TFLM): Recent Developments,” a Present...
 
GEFRAN GCube Fit extru+
GEFRAN GCube Fit extru+GEFRAN GCube Fit extru+
GEFRAN GCube Fit extru+
 
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONS
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONSPERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONS
PERFORMANCEATMOSPHERE - PREDICTION OF GPU-BASED DEEP LEARNING APPLICATIONS
 
IBM Bluemix and the Internet of Things - Workshop
IBM Bluemix and the Internet of Things - WorkshopIBM Bluemix and the Internet of Things - Workshop
IBM Bluemix and the Internet of Things - Workshop
 
PluginAndPlay-AmsterdamJUG.pptx
PluginAndPlay-AmsterdamJUG.pptxPluginAndPlay-AmsterdamJUG.pptx
PluginAndPlay-AmsterdamJUG.pptx
 
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...
From 70 Networking Tasks to a Single Click by WWT: Building an F5 Solution wi...
 
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...
Axel Hafner - MakerBot Europe - European Market Entry - Stanford Engineering ...
 
Tabnet presentation
Tabnet presentationTabnet presentation
Tabnet presentation
 
Getting started with AGL using a Raspberry Pi
Getting started with AGL using a Raspberry PiGetting started with AGL using a Raspberry Pi
Getting started with AGL using a Raspberry Pi
 
Elastic network of things with mqtt and micro python
Elastic network of things with mqtt and micro pythonElastic network of things with mqtt and micro python
Elastic network of things with mqtt and micro python
 
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdf
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdfPic18f4550 microcontroller based projects _ PIC Microcontroller.pdf
Pic18f4550 microcontroller based projects _ PIC Microcontroller.pdf
 
Pfau the impact of design thinking
Pfau   the impact of design thinkingPfau   the impact of design thinking
Pfau the impact of design thinking
 

Mais de Martin Alfke

CfgMgmtCamp 2023 - Puppet is YAML.pdf
CfgMgmtCamp 2023 - Puppet is YAML.pdfCfgMgmtCamp 2023 - Puppet is YAML.pdf
CfgMgmtCamp 2023 - Puppet is YAML.pdfMartin Alfke
 
HashiTalksDACH-Terraform-Managing training instances in the Cloud
HashiTalksDACH-Terraform-Managing training instances in the CloudHashiTalksDACH-Terraform-Managing training instances in the Cloud
HashiTalksDACH-Terraform-Managing training instances in the CloudMartin Alfke
 
Puppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesPuppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesMartin Alfke
 
Can you upgrade to Puppet 4.x?
Can you upgrade to Puppet 4.x?Can you upgrade to Puppet 4.x?
Can you upgrade to Puppet 4.x?Martin Alfke
 
Upgrading Puppet CommitterConf Essen 2014
Upgrading Puppet CommitterConf Essen 2014Upgrading Puppet CommitterConf Essen 2014
Upgrading Puppet CommitterConf Essen 2014Martin Alfke
 
GUUG Hamburg OpenNebula
GUUG Hamburg OpenNebulaGUUG Hamburg OpenNebula
GUUG Hamburg OpenNebulaMartin Alfke
 
Puppet camp london-modulerewritingsmartway
Puppet camp london-modulerewritingsmartwayPuppet camp london-modulerewritingsmartway
Puppet camp london-modulerewritingsmartwayMartin Alfke
 
Puppet future parser
Puppet future parserPuppet future parser
Puppet future parserMartin Alfke
 
developing sysadmin, sysadmining developersGuug devops puppet
developing sysadmin, sysadmining developersGuug devops puppetdeveloping sysadmin, sysadmining developersGuug devops puppet
developing sysadmin, sysadmining developersGuug devops puppetMartin Alfke
 
Gluster fs buero20_presentation
Gluster fs buero20_presentationGluster fs buero20_presentation
Gluster fs buero20_presentationMartin Alfke
 
Puppet buero20 presentation
Puppet buero20 presentationPuppet buero20 presentation
Puppet buero20 presentationMartin Alfke
 

Mais de Martin Alfke (13)

CfgMgmtCamp 2023 - Puppet is YAML.pdf
CfgMgmtCamp 2023 - Puppet is YAML.pdfCfgMgmtCamp 2023 - Puppet is YAML.pdf
CfgMgmtCamp 2023 - Puppet is YAML.pdf
 
HashiTalksDACH-Terraform-Managing training instances in the Cloud
HashiTalksDACH-Terraform-Managing training instances in the CloudHashiTalksDACH-Terraform-Managing training instances in the Cloud
HashiTalksDACH-Terraform-Managing training instances in the Cloud
 
Puppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesPuppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in Modules
 
Power of Puppet 4
Power of Puppet 4Power of Puppet 4
Power of Puppet 4
 
Can you upgrade to Puppet 4.x?
Can you upgrade to Puppet 4.x?Can you upgrade to Puppet 4.x?
Can you upgrade to Puppet 4.x?
 
Upgrading Puppet CommitterConf Essen 2014
Upgrading Puppet CommitterConf Essen 2014Upgrading Puppet CommitterConf Essen 2014
Upgrading Puppet CommitterConf Essen 2014
 
GUUG Hamburg OpenNebula
GUUG Hamburg OpenNebulaGUUG Hamburg OpenNebula
GUUG Hamburg OpenNebula
 
Puppet camp london-modulerewritingsmartway
Puppet camp london-modulerewritingsmartwayPuppet camp london-modulerewritingsmartway
Puppet camp london-modulerewritingsmartway
 
One
OneOne
One
 
Puppet future parser
Puppet future parserPuppet future parser
Puppet future parser
 
developing sysadmin, sysadmining developersGuug devops puppet
developing sysadmin, sysadmining developersGuug devops puppetdeveloping sysadmin, sysadmining developersGuug devops puppet
developing sysadmin, sysadmining developersGuug devops puppet
 
Gluster fs buero20_presentation
Gluster fs buero20_presentationGluster fs buero20_presentation
Gluster fs buero20_presentation
 
Puppet buero20 presentation
Puppet buero20 presentationPuppet buero20 presentation
Puppet buero20 presentation
 

Último

Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceDelhi Call girls
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.soniya singh
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirtrahman018755
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...SUHANI PANDEY
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...singhpriety023
 

Último (20)

Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
 

Puppet Camp Germany 2020 - Puppet Control Repo and GIT

  • 1. Puppet Control Repository and GIT Martin Alfke - example42 GmbH
  • 2. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 2 Puppet Trainer since 2011 CEO & Co-Founder example42 GmbH tuxmea (Twitter, GitHub, Slack) About me
  • 3. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 3 Puppet Control-Repo Simple GIT workflow GIT workflow with staging branch GIT Flow Topics covered:
  • 4. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Puppet Control Repo 4 Image: tatlin
  • 5. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Puppet Control Repo 5 One repository for your own code Separation of upstream modules (Puppetfile or git submodules) Branches will become Puppet environments Either empty repo or example42 Puppet System Infrastructure Construction Kit (PSICK on GitHub). Image: tatlin
  • 6. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Puppet Control Repo 6 Image: tatlin App-DEV development testing production
  • 7. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Puppet Control Repo 7 Image: tatlin App-DEV development testing production Puppet DEV production
  • 8. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Puppet Control Repo 8 Image: tatlin App-DEV development testing production Puppet DEV production production production Application Stages Puppet Environments
  • 9. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Simple GIT workflow 9 Image: tatlin
  • 10. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Simple GIT workflow 10 One long living protected branch (production) Differences between stages are in Hiera. Activating features using feature flags. Image: tatlin
  • 11. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Simple GIT workflow 11 All changes come via feature branches Prevent special chars like +, -, %, ... these environments will not get deployed. Image: tatlin
  • 12. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 12 Simple GIT workflow
  • 13. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Simple GIT workflow 13 Pro: Easy to learn, easy to handle Con: No real staging of code, code changes affect all stages (when activated) Image: tatlin
  • 14. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT workflow with staging branch 14 Image: tatlin
  • 15. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT workflow with staging branch 15 Network separation between development and production? Separate GIT servers and Puppet Masters? Image: tatlin
  • 16. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT workflow with staging branch 16 All code must be developed in development zone No code may be added in production, except via merge requests. CI/CD Systems synchronizes code base using a staging branch Image: tatlin
  • 17. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 17 GIT workflow with staging branch
  • 18. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT workflow with staging branch 18 Pro: Security separation is taken care on Con: Needs automatic merging and staging, no manual merges. Image: tatlin
  • 19. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 19 Image: tatlin
  • 20. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 20 Image: tatlin ITIL processes? Strict code separation between development and production required? Hot fixes and Features must be possible?
  • 21. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 21 Image: tatlin No merges between branches! Each branch is an individual development. Cherry-Pick into next stage.
  • 22. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 22 GIT Flow
  • 23. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 23 GIT Flow
  • 24. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 24 Image: tatlin Each feature branch may consist of a single commit only. Use git commit --amend or git squash
  • 25. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 25
  • 26. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 26 Image: tatlin GIT Flow Requires knowledge on - squashing - rebasing - solving merge conflicts
  • 27. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH 27 GIT Flow
  • 28. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH GIT Flow 28 Image: tatlin Pro: Branch specific development possible Con: needs deeper understanding on GIT more work to bring changes into desired branch
  • 29. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Summary 29 Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple. But it's worth it in the end because once you get there, you can move mountains. - Steve Jobs
  • 30. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Conclusion 30 Image: tatlin
  • 31. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Conclusion 31 Start simple and expand when learning. - K.I.S.S. Automate everything, also your code deployment! GIT has a learning curve. Take care on that! Learn GIT! Never adopt complex workflows if you don’t need them! “If you use all your smartness to write the code, you have none left to debug it.” (David Schmidt)
  • 32. Puppet Control Repository and GIT - PuppetCamp Europe 2020 - Martin Alfke © example42 GmbH Conclusion 2 32 Stop social distancing! We need physical distance! Take care on people who need help!
  • 33. Puppet Control Repository and GIT Martin Alfke - example42 GmbH