Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Gitlab Puppet Module and Profiles

Gitlab Puppet Module and Profiles

A short introduction in our Gitlab Module, why we created a new one and how we use profiles to customize it.

Avatar for Tobias Brunner

Tobias Brunner

July 08, 2015
Tweet

More Decks by Tobias Brunner

Other Decks in Technology

Transcript

  1. 07/07/15 VSHN AG | http://vshn.ch 2 Agenda • VSHN? Or:

    How do I spell that? • Gitlab: Git all the things! • (Not) just another Gitlab Puppet module • Customize it: Profiles!
  2. 07/07/15 VSHN AG | http://vshn.ch 3 /me • Tobias Brunner

    aka tobru • VSHNeer • Puppetizer since 2011. Modules: – Smokeping – Knot DNS – Gitlab – Identity • Blog: https://tobrunet.ch • Twitter: @tobruzh
  3. 07/07/15 VSHN AG | http://vshn.ch 4 Company Profile | v

    ʒ | ˈ ɪ nn • Owner-operated Swiss company • 12 employees at the head office in Zurich • Service provider for DevOps, software delivery automation and configuration management • Partner for operations/hosting of web applications • Further specialty fields: Consulting, System Engineering, Continuous Delivery, Monitoring, Backup, 24/7 Support
  4. 07/07/2015 VSHN AG | http://vshn.ch 7 Gitlab? #2 • Release

    day: 22nd • Git • (Web)Hooks • Activity stream • History • Issues • Merge requests • Groups • ...
  5. 07/07/2015 VSHN AG | http://vshn.ch 8 A Gitlab Puppet Module

    #1 • Forge: Found 6 modules tagged with 'gitlab' – sbadia/gitlab: Plain installation, no Omnibus. Exposes too many parameters. – spuder/gitlab: The original one. A lot (!) of workarounds for all different Gitlab versions. No repo. Bloated. – lboynton/gitlab: Abandonware. – abrader/gms: Not a Gitlab installer. – Aethylred/gitlab: Complicated, a lot of dependencies, no Omnibus. – vshn/gitlab: That's what were talking about.
  6. 07/07/2015 VSHN AG | http://vshn.ch 9 A Gitlab Puppet Module

    #2 vshn/gitlab • init.pp Input validation and class caller • install.pp Repo management and package installer • config.pp Omnibus config file writer and gitlab-ctl reconfigure executor • service.pp Gitlab service manager using gitlab-ctl
  7. 07/07/2015 VSHN AG | http://vshn.ch 12 Customize it: Profile #1

    Profile: Customize a base Puppet module with specific parameters and add surrounding services: • Backup • Monitoring • Firewall • ...