Commit eef36704 authored by Matthieu FAURE's avatar Matthieu FAURE
Browse files

First commit

parent 9e0e0cb0
# IntelliJ
.idea/
*.iml
# Puppet downloaded modules
modules/
# Vagrant internal files
.vagrant/
ubuntu*.log
\ No newline at end of file
#!/bin/bash
r10k puppetfile install -v
vagrant up
This diff is collapsed.
# Modules from Puppet (VoxPupuli): A -> Z
mod 'puppet-archive', '4.2.0'
mod 'puppet-php', '6.0.2'
mod 'puppet-zypprepo', '2.2.2'
# Modules from Puppetlabs: A -> Z
mod 'puppetlabs-apache', '5.0.0'
mod 'puppetlabs-apt', '7.1.0'
mod 'puppetlabs-concat', '6.1.0'
mod 'puppetlabs-inifile', '3.1.0'
mod 'puppetlabs-stdlib', '6.0.0'
# Modules from others: A -> Z
# vagrant-nextcloud
Vagrant box to initiate development of a Puppet module for Nextcloud
## Prerequisites
* Virtualbox
* Vagrant
* git
* r10k (see below how to do this properly)
## r10k installation on a workstation
TODO: this should be correctly explained and tested (which by now may not be the case :) )
1. On your workstation, install [RBenv](https://github.com/rbenv/rbenv). RBenv allows a user to have different versions of Ruby running on a system and isolate them. This is a great help when using Puppet on Linux, as Ruby versions shipped with distros can be quite old. Moreover, RBenv allows user to have a Ruby installation in its user-space, so that no root privileges are required.
1. With RBenv install Ruby 2.5.x (please follow RBenv documentation to do that)
1. Install r10k: `gem install r10k`
## Usage
Grab this repository, get into it, grab Puppet modules needed and then run Vagrant:
```
git clone https://gitlab.com/matt.faure/vagrant-nextcloud.git
cd vagrant-nextcloud
./BUILD.sh
```
$script_bionic = <<-SCRIPT
if [ ! -f /opt/puppetlabs/bin/puppet ]; then
sudo wget --quiet https://apt.puppetlabs.com/puppet6-release-bionic.deb
sudo dpkg -i puppet6-release-bionic.deb
sudo apt-get update
sudo apt-get install puppet-agent
fi
SCRIPT
Vagrant.configure("2") do |config|
config.vm.define "nextcloud" do |nc|
nc.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = "2"
end
nc.vm.box = "ubuntu/bionic64"
nc.vm.network "forwarded_port", guest: 80, host: 8080
nc.vm.hostname = "nextcloud.example.org"
nc.vm.provision "shell", inline: $script_bionic
nc.vm.provision "puppet" do |nc1|
nc1.module_path = "modules"
nc1.manifest_file = "default.pp"
end
end
end
class {'apache':}
class { 'php::globals':
php_version => '7.3',
}
-> class {'php':
manage_repos => true,
}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment