view modules/vcs/manifests/init.pp @ 482:d83de9b3a62b default tip

Update hiera.yaml within Puppet config Forgot that we manage it from here. Now has content to match new packages
author IBBoard <dev@ibboard.co.uk>
date Fri, 30 Aug 2024 16:10:36 +0100
parents 2c3e745be8d2
children
line wrap: on
line source

class vcs {
    @package { [
            "mercurial",
            "git"
        ]:
        ensure => installed
    }
    python::pip { 'mercurial-keyring':
        ensure => 'present',
        pip_provider => 'pip3',
        install_args => '--break-system-packages',
    }
    # Alt keyrings are insecure, but a) we're on a limited access server and
    # b) I share the Mecurial config with the desktop, which uses the system
    # keyring rather than
    #
    # [backend]
    # default-keyring=keyrings.alt.file.PlaintextKeyring
    python::pip { 'keyrings.alt':
        ensure => 'present',
        pip_provider => 'pip3',
        install_args => '--break-system-packages',
    }
    if $facts["os"]["name"] == 'Ubuntu' {
        $gitprompt = '/etc/bash_completion.d/git-prompt'
    }
    else {
        $gitprompt = '/usr/share/git-core/contrib/completion/git-prompt.sh'
    }
    file { '/etc/bash_completion.d/git-prompt.sh':
        ensure => 'link',
        target => $gitprompt,
    }
}

class vcs::client inherits vcs {
	realize(Package["mercurial"],
		Python::Pip["mercurial-keyring"],
		Python::Pip["keyrings.alt"],
		Package["git"])
}

class vcs::server inherits vcs {
	realize(Package["mercurial"],
		Package["git"])
}