Version information
This version is compatible with:
- Puppet Enterprise 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
- Puppet >= 4.7.0
- , , , , , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'dp-golang', '1.0.6'
Learn more about managing modules with a PuppetfileDocumentation
golang
This installs go under /usr/local/go/
, and symlinks the binaries into
/usr/local/bin/
.
Usage
include golang
You may wish to set the version with hiera (golang::version: 1.10.4
), or with
a class declaration:
class { 'golang':
version => '1.10.4',
}
Limitations
This does not support Windows.
Reference
There is specific documentation for individual parameters in REFERENCE.md. That file is generated with:
pdk bundle exec puppet strings generate --format markdown
Reference
Table of Contents
Classes
golang
: Install go in /usr/local/go and /usr/local/bin
Classes
golang
/usr/local/share/
must exist.
Most people will not need to change any parameter other than $version
.
Parameters
The following parameters are available in the golang
class:
version
Data type: String[1]
The version of Go to install. You can find the latest version number at https://go.dev/dl/
Default value: '1.18.3'
link_binaries
Data type: Array[String[1]]
The binaries to symlink into /usr/local/bin
.
Default value: ['go', 'gofmt']
source
Data type: String[1]
URL to actual archive.
Default value: "${source_prefix}/go${version}.${os}-${arch}.tar.gz"
source_prefix
Data type: String[1]
URL to directory that contains the archive to download.
Default value: 'https://go.dev/dl'
os
Data type: String[1]
The OS to use to determine what archive to download.
Default value: $facts['kernel']
arch
Data type: String[1]
The architecture to use to determine what archive to download.
Default value: $facts['os']['hardware']
Change log
All notable changes to this project will be documented in this file.
Release 1.0.6
Bugfixes
- Updated change log.
Release 1.0.5 (withdrawn)
Features
- Latest Go version (1.18.3) installed by default.
Bugfixes
- Updated to use the current Go domain (golang.org → go.dev).
- Metadata updated to support the most recent version of puppet/archive.
Release 1.0.4
Features
- Latest Go version (1.16.7) installed by default.
Bugfixes
- The
godoc
binary no longer ships in the Go package, so this no longer links it into/usr/local/bin
by default. Note: this does not remove the link if it already exists. - Metadata updated to support the most recent version of puppet/archive.
Release 1.0.3
Features
- #2: support convenient installation on Raspberry Pi 2B and 3B.
Bugfixes
- #2: default to the correct 64-bit ARM binary on 64 bit ARM, e.g. on the Raspberry Pi 4.
Release 1.0.2
Features
- Latest Go version (1.13.6) installed by default.
- #2: support convenient installation on Raspberry Pi 4.
Dependencies
- puppet/archive (>= 4.0.0 < 7.0.0)
Copyright 2018 Daniel Parks Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.