Forge Home


A module for Google's GO language


27,242 latest version

4.3 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 2.0.3 (latest)
  • 2.0.2
  • 2.0.1
  • 2.0.0
  • 1.1.4
  • 1.1.3
  • 1.1.2 (deleted)
  • 1.1.1
  • 1.1.0
  • 1.0.1
  • 1.0.0
  • 0.2.3
  • 0.2.2
  • 0.2.1
  • 0.2.0
  • 0.1.9
  • 0.1.8
  • 0.1.7
  • 0.1.6
  • 0.1.5
  • 0.1.4
  • 0.1.3 (deleted)
  • 0.1.1 (deleted)
  • 0.1.0 (deleted)
  • 0.0.1
released Mar 15th 2016
This version is compatible with:
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'scottyc-golang', '2.0.3'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add scottyc-golang
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install scottyc-golang --version 2.0.3

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Tags: go, golang


scottyc/golang — version 2.0.3 Mar 15th 2016


Build Status PuppetForge Puppet Forge Downloads

Table of Contents

  1. Overview
  2. Module Description
  3. Usage
  4. Dependencies
  5. Development


This is a module that will install Google's Go language for all users.

Module Description

This module installs GO from OS repo (ie. yum or apt) or staright from Google's repo, making it compatbale with any OS that listed on Google's site

Please note !!!!!

I have deprecated installing GO from source as it was making Puppet runs way too long. If you want to keep using this feature please use a version of this module that is 1.. As of 2. this feature will no longer be available.


For basic usage:

include golang

To customize the installation please see the examples below. The deafult param is now to install from package!

To install from golang repo as tar.gz:

class {'golang':
  base_dir    => '/usr/local/go',
  from_repo   => true,
  repo_version => 'go1.6',
  goroot      => '$GOPATH/bin:/usr/local/go/bin:$PATH',
  workdir     => '/usr/local/',

If you have issues with older versions of wget and Google's certificate you can disable the certificate check like this:

class {'golang':
  base_dir               => '/usr/local/go',
  from_repo              => true,
  repo_version           => 'go1.6',
  goroot                 => '$GOPATH/bin:/usr/local/go/bin:$PATH',
  workdir                => '/usr/local/',
  wgetnocheckcertificate => true,

To install from the OS repos (yum or apt)

class {'golang':
  base_dir        => '/usr/local/go',
  from_repo       => false,
  package_version => 'present',
  goroot          => '$GOPATH/bin:/usr/local/go/bin:$PATH',
  workdir         => '/usr/local/',

Or all data can be set in Hiera ie golang::base_dir: /usr/local/go


This module needs maestrodev/puppet-wget


Pull request welcome. Just hit me up.