Permalink
Switch branches/tags
Nothing to show
Commits on Mar 10, 2014
  1. Merge pull request #10 from gds-operations/comment_about_renaming

    dcarley committed Mar 10, 2014
    Add a comment suggesting that hostname and ip should be changed.
  2. Merge pull request #9 from gds-operations/change-path-exec-puppet

    dcarley committed Mar 10, 2014
    Change path and exec method in Puppet
Commits on Mar 5, 2014
  1. Merge pull request #7 from gds-operations/fix-libpuppet-config

    dcarley committed Mar 5, 2014
    Fixes default PUPPET_DESTRUCTIVE value
Commits on Jul 1, 2013
  1. Merge pull request #5 from andrewh/rake-bootstrap

    dcarley committed Jul 1, 2013
    rake: add bootstrap task for bundler and librarian
Commits on Jun 17, 2013
  1. Shift node IPs by +9

    dcarley committed Jun 17, 2013
    Inter-VM communication in VirtualBox seems a bit funky when one node is
    sitting on the first IP in a netblock. So shift them up by 9.
  2. Give all Vagrant nodes a TLD

    dcarley committed Jun 17, 2013
    This will stop Puppet complaining about broken fqdn/domainname and will be
    useful for experiments with DNS.
  3. Downgrade stdlib to 3.x

    dcarley committed Jun 17, 2013
    For Puppet 2.7 support, while we're using a mixture of both.
Commits on Jun 14, 2013
  1. Prefix hiera data files

    dcarley committed Jun 14, 2013
    Enforce a nice directory layout with a delineation between node-specific and
    environment-specific data files.
  2. Tag version 0.0.2

    dcarley committed Jun 14, 2013
  3. hiera lookup use clientcert instead of hostname

    dcarley committed Jun 14, 2013
    This variable is less likely (impossible?) to be spoofed. It is also fully
    qualified. Whereas a Puppet agent can send whatever `hostname` or `fqdn`
    Facter value they like.
  4. Use hiera as a lightweight ENC

    dcarley committed Jun 14, 2013
    Doesn't currently include any modules, because we don't have any.
    Cribbed from HMRC and @nickstenning.
  5. Bump puppet-syntax to 0.0.4

    dcarley committed Jun 14, 2013
    Fixes an error with manifest checks on Puppet 3.x:
    voxpupuli/puppet-syntax@v0.0.3...v0.0.4
  6. Adjust RAM for Vagrant nodes

    dcarley committed Jun 14, 2013
    The new PuppetLabs base box introduced in ab1fd8a has a default of 2048M
    RAM. That's quite thirsty if you plan to run three or more nodes at the same
    time.
    
    Bump them all down to a default of 384M and specify one as 512M to
    demonstrate that it can be overridden.
  7. Fix per-node settings in Vagrant

    dcarley committed Jun 14, 2013
    This was using the outer config block, causing each node to adopt the
    settings of the first one. Surfaced as errors of duplicate names and IP
    addresses.
Commits on Jun 13, 2013
  1. Add hiera example

    dcarley committed Jun 13, 2013
    Now that we have a basebox with Puppet 3.x, thanks @garethr
    
    Uses Vagrant's own shared folder to pass `hiera.yaml` and `hieradata` in.
    Fairly simple search hierachy and an empty `common.yaml` to get started.
    
    The order of `hostname` and `environment` has been switched so that
    individual nodes can override specific keys from the environment's config.
    This differs from Perf Platform, cc @samjsharpe
    
    Currently passing a `--hiera_config` option to Puppet, but this can be
    replaced with `puppet.hiera_config_path` in Vagrant 1.2.3
  2. Merge branch 'vagrantfile-suggestions'

    dcarley committed Jun 13, 2013
    Fixes #2
  3. Remove `--debug` from Puppet

    dcarley committed Jun 13, 2013
    Puppet's debug output is quite chatty and can easily obscure the detail of
    what has or hasn't changed in a given run. So I think it should be disabled
    by default.
    
    Also moved the option within the block to match style with the other
    settings.
Commits on Jun 12, 2013
  1. Vagrant set node name in VirtualBox

    dcarley committed Jun 12, 2013
    This makes the VMs have huamn readable names in `VBoxManage` and the VBox
    GUI. Which can be handy, once you've accumulated a few.
  2. Vagrant nodes with different IPs and RAM

    dcarley committed Jun 12, 2013
    Demonstrate assigning private network interfaces to VMs, in order for them
    to communicate with each other. And assigning a different amount of RAM to a
    single node. Nodes are defined in a Ruby hash.
    
    VirtualBox provider customisations have been moved into the `nodes.each`
    loop because it needs access to `node_opts[:memory]`. There seems to be no
    speed impact to `vagrant status`. Whereas calling `customize` twice would
    have been significantly slower, even if it did look cleaner.
  3. Bulk out README introduction.

    dcarley committed Jun 12, 2013
  4. Merge pull request #3 from alphagov/changelog

    dcarley committed Jun 12, 2013
    Add a changelog file
Commits on Jun 11, 2013
  1. Flesh out README.

    dcarley committed Jun 11, 2013
  2. Vagrant DNS proxy for VirtualBox

    dcarley committed Jun 11, 2013
    Use VirtualBox's builtin DNS proxy server. This ensures that the guest
    doesn't see the real nameservers from the host's network, and will continue
    to work when the host moves between physical locations. Cribbed from GOV.UK
  3. Add three (dummy) nodes to the Vagrantfile

    dcarley committed Jun 11, 2013
    Will create three VMs. As an indication of multi-VM support in Vagrant.
  4. Simplest possible Vagrantfile

    dcarley committed Jun 11, 2013
    Vagrant >= 1.1, VirtualBox, single VM, using upstream Ubuntu 12.04 box, and
    referencing our Puppet manifest/module layout. Internal modules take
    precedence over vendored.
  5. Add Gemfile.lock but remove it for TravisCI builds

    dcarley committed Jun 11, 2013
    The lock file is desireable for consistency during deployments. However we
    need to remove it for CI builds so that versions can be sourced from
    environment variables. This seems like the best balance.
  6. Move third-party modules to vendor/modules

    dcarley committed Jun 11, 2013
    Ensures that they are kept separate. First party modules can be committed to
    this repo, on the basis that they are too small, trivial, or organisation
    specific, to break out with librarian.
    
    Destructive is set to true. Since this path shouldn't contain any content
    that isn't managed directly by librarian-puppet.
    
    /cc @nickstenning @samjsharpe
Commits on Jun 10, 2013
  1. Switch to puppet-syntax

    dcarley committed Jun 10, 2013
    Rake tasks for syntax checking of Puppet manifests and templates have been
    externalised as a gem. They can now be versioned and upgraded more freely.
Commits on Jun 6, 2013
  1. Include puppetlabs/stdlib

    dcarley committed Jun 6, 2013
    Useful standard libaries for Puppet. Version is fixed in `Puppetfile.lock`.
  2. Add most basic Puppetfile and Puppetfile.lock

    dcarley committed Jun 6, 2013
    Contains URL for PuppetLabs Forge.
  3. Port syntax check rake tasks for GOV.UK repo

    dcarley committed Jun 6, 2013
    Syntax checks for Puppet manifests and templates. Adapted to use the
    `exclude_paths` function from 59cf75f. Properly namespaced under `syntax:*`,
    with an alias that calls both. Syntax comes before lint, in order or
    importance.
    
    Ideally these should be split out to a gem. Which will enable us to pull in
    newer versions easily. For example, IDA have some much older copies of these
    scripts which don't catch warnings, but now easy way to be notified of
    updates or merge them in.
    
    I've removed the `$stderr.puts` progress messages for the moment. There
    might be a neater way to achieve those.
  4. Move excluded paths to Rakefile for re-use

    dcarley committed Jun 6, 2013
    Other tasks will want to use this to ignore vendored code. A variable in
    `Rakefile` won't be accessible to the `:lint` task. But a funtion is.
  5. Travis CI tests for Puppet and Ruby versions

    dcarley committed Jun 6, 2013
    Add matrix tests for our targetted version (Puppet 3.1 on Ruby 1.9.3) and
    future versions (Puppet 3.2 on Ruby HEAD). The latter are allowed to fail,
    as an indicator of what may be to come.
    
    Omitting older versions of Puppet and Ruby for the moment. We could also
    add future versions of Facter in here.
    
    The default rake task will be run. Which currently only contains lint.
  6. Directory structure for Puppet manifests/modules

    dcarley committed Jun 6, 2013
    These should be quite minimal if we're relying on librarian-puppet to pull
    in modules and hiera as an ENC-alike.