Skip to content

Instantly share code, notes, and snippets.

@salewski
Created February 17, 2018 23:14
Show Gist options
  • Save salewski/fa3b310f078af721864f7b68029d37ea to your computer and use it in GitHub Desktop.
Save salewski/fa3b310f078af721864f7b68029d37ea to your computer and use it in GitHub Desktop.
vagrantfile-keepalived-doc-build-archlinux-archlinux64
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile for verifying archlinux-based documentation updates for
# keepalived issue #761:
#
# https://github.com/acassen/keepalived/issues/761
#
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
# Every Vagrant development environment requires a box. You can search for
# boxes at https://atlas.hashicorp.com/search.
config.vm.box = "archlinux/archlinux"
config.vm.box_version = "2018.01.07"
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
config.vm.box_check_update = false
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
#vb.gui = true
#
# Customize the amount of memory on the VM:
#vb.memory = "1024"
#
# AL.NOTE (2018-01-28): Found this by a mixture of empirical testing and
# gathering tidbits from googling. The archlinux/archlinux vagrant
# box (box version 2018.01.07) gets stuck at boot-up time unless
# the VirtualBox knob that says the cable is plugged-in is checked.
# This config line uses the 'VBoxManage' command line tool (to
# modify the virtual machine just prior to vagrant booting it) to
# do the equivalent of launching the VirtualBox GUI and then
# clicking the checkbox manually.
#
# See also:
# https://www.vagrantup.com/docs/virtualbox/configuration.html
# https://www.virtualbox.org/manual/ch08.html
#
# [--cableconnected<1-N> on|off]
vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
end
# The below will give you a box on which you can 'git clone' the
# 'keepalived' repo and configure the project, but will not be able to build
# the HTML and/or PDF documentation.
#
# To be able to build the HTML documenation, you additionally need to:
#
# # pacman -S python-sphinx python-sphinx_rtd_theme
#
#
# To be able to build the LaTeX and/or PDF documenation, you additionally
# need to:
#
# # pacman -S texlive-core texlive-bin texlive-latexextra
#
config.vm.provision "shell", inline: <<-SHELL
pacman -Syu
pacman -S gcc make autoconf automake git
pacman -S openssl libnl ipset iptables libnfnetlink
SHELL
# Upon login (as the 'vagrant' user):
#
# $ mkdir src
#
# $ cd src
# $ git clone https://github.com/acassen/keepalived.git
#
# $ cd keepalived
#
# $ find . -exec touch -r configure {} +
#
# $ ./configure --prefix=/tmp/blah-keepalived-build
#
# If you have installed the packages to build the HTML documentation, then
# you can run the following from the top of the build tree:
#
# $ make html
#
# If you have installed the packages to build the LaTeX and PDF
# documentation, then you can run the following to kick off the build of
# that. Note that building the PDF documentation cannot be done from the top
# of the build tree, hence the reason we 'cd' into the 'doc' subdir:
#
# $ cd doc
# $ make latexpdf
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment