Merge branch 'AnotherKamila-golang-types'
This commit is contained in:
commit
f2dedbe0a2
11 changed files with 154 additions and 0 deletions
1
cdist/conf/explorer/kernel_name
Normal file
1
cdist/conf/explorer/kernel_name
Normal file
|
@ -0,0 +1 @@
|
||||||
|
uname -s
|
3
cdist/conf/type/__go_get/explorer/go-executable
Normal file
3
cdist/conf/type/__go_get/explorer/go-executable
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[ -f /etc/environment ] && . /etc/environment
|
||||||
|
[ -f /etc/profile ] && . /etc/profile
|
||||||
|
go version 2>/dev/null || true
|
8
cdist/conf/type/__go_get/gencode-remote
Normal file
8
cdist/conf/type/__go_get/gencode-remote
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
package=$__object_id
|
||||||
|
|
||||||
|
cat<<EOF
|
||||||
|
[ -f /etc/environment ] && . /etc/environment
|
||||||
|
[ -f /etc/profile ] && . /etc/profile
|
||||||
|
export GOPATH=\${GOPATH:-/opt/gocode}
|
||||||
|
go get $package
|
||||||
|
EOF
|
48
cdist/conf/type/__go_get/man.rst
Normal file
48
cdist/conf/type/__go_get/man.rst
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
cdist-type__go_get(7)
|
||||||
|
=====================
|
||||||
|
|
||||||
|
NAME
|
||||||
|
----
|
||||||
|
cdist-type__go_get - Install go packages with go get
|
||||||
|
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
-----------
|
||||||
|
This cdist type allows you to install golang packages with go get.
|
||||||
|
A sufficiently recent version of go must be present on the system.
|
||||||
|
|
||||||
|
The object ID is the go package to be installed.
|
||||||
|
|
||||||
|
|
||||||
|
REQUIRED PARAMETERS
|
||||||
|
-------------------
|
||||||
|
None.
|
||||||
|
|
||||||
|
|
||||||
|
OPTIONAL PARAMETERS
|
||||||
|
-------------------
|
||||||
|
None.
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
--------
|
||||||
|
|
||||||
|
.. code-block:: sh
|
||||||
|
|
||||||
|
__go_get github.com/prometheus/prometheus/cmd/...
|
||||||
|
|
||||||
|
# usually you'd need to require golang from somewhere:
|
||||||
|
require="__golang_from_vendor" __go_get github.com/prometheus/prometheus/cmd/...
|
||||||
|
|
||||||
|
|
||||||
|
AUTHORS
|
||||||
|
-------
|
||||||
|
Kamila Součková <kamila@ksp.sk>
|
||||||
|
|
||||||
|
|
||||||
|
COPYING
|
||||||
|
-------
|
||||||
|
Copyright \(C) 2017 Kamila Součková. You can redistribute it
|
||||||
|
and/or modify it under the terms of the GNU General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of the
|
||||||
|
License, or (at your option) any later version.
|
17
cdist/conf/type/__go_get/manifest
Normal file
17
cdist/conf/type/__go_get/manifest
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
go_executable=$(cat "$__object/explorer/go-executable")
|
||||||
|
[ -z "$go_executable" ] && echo "__go_get: Cannot find go executable; make sure it is installed and in PATH" >&2 && exit 1
|
||||||
|
|
||||||
|
os=$(cat "$__global/explorer/os")
|
||||||
|
case $os in
|
||||||
|
debian|devuan|ubuntu)
|
||||||
|
__package build-essential
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "__go_get: Don't know how to install g++ on $os" >&2
|
||||||
|
echo "__go_get: Send a pull request or contact <kamila@ksp.sk> to add support for $os." >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
26
cdist/conf/type/__golang_from_vendor/gencode-remote
Normal file
26
cdist/conf/type/__golang_from_vendor/gencode-remote
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
version=$(cat "$__object/parameter/version")
|
||||||
|
|
||||||
|
kernel_name=$(cat "$__global/explorer/kernel_name" | tr '[:upper:]' '[:lower:]')
|
||||||
|
machine=$(cat "$__global/explorer/machine")
|
||||||
|
case $machine in
|
||||||
|
x86_64|amd64)
|
||||||
|
arch=amd64
|
||||||
|
;;
|
||||||
|
x86)
|
||||||
|
arch=386
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
arch=$machine # at least try...
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
PACKAGE="go${version}.${kernel_name}-${arch}"
|
||||||
|
URL="https://storage.googleapis.com/golang/${PACKAGE}.tar.gz"
|
||||||
|
cat <<EOF
|
||||||
|
[ "x\$(cat /usr/local/go/VERSION 2>/dev/null)" = "xgo$version" ] && exit 0 # already there
|
||||||
|
wget --no-verbose "$URL" -O "/tmp/${PACKAGE}.tar.gz"
|
||||||
|
rm -rf /usr/local/go
|
||||||
|
tar -C /usr/local -xzf /tmp/${PACKAGE}.tar.gz
|
||||||
|
EOF
|
48
cdist/conf/type/__golang_from_vendor/man.rst
Normal file
48
cdist/conf/type/__golang_from_vendor/man.rst
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
cdist-type__golang_from_vendor(7)
|
||||||
|
=====================
|
||||||
|
|
||||||
|
NAME
|
||||||
|
----
|
||||||
|
cdist-type__golang_from_vendor - Install any version of golang from golang.org
|
||||||
|
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
-----------
|
||||||
|
This cdist type allows you to install golang from archives provided by https://golang.org/dl/.
|
||||||
|
|
||||||
|
See https://golang.org/dl/ for the list of supported versions, operating systems and architectures.
|
||||||
|
|
||||||
|
This is a singleton type.
|
||||||
|
|
||||||
|
|
||||||
|
REQUIRED PARAMETERS
|
||||||
|
-------------------
|
||||||
|
None.
|
||||||
|
|
||||||
|
|
||||||
|
OPTIONAL PARAMETERS
|
||||||
|
-------------------
|
||||||
|
version
|
||||||
|
The golang version to install, defaults to 1.8.1
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
--------
|
||||||
|
|
||||||
|
.. code-block:: sh
|
||||||
|
|
||||||
|
__golang_from_vendor --version 1.8.1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
AUTHORS
|
||||||
|
-------
|
||||||
|
Kamila Součková <kamila@ksp.sk>
|
||||||
|
|
||||||
|
|
||||||
|
COPYING
|
||||||
|
-------
|
||||||
|
Copyright \(C) 2017 Kamila Součková. You can redistribute it
|
||||||
|
and/or modify it under the terms of the GNU General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of the
|
||||||
|
License, or (at your option) any later version.
|
1
cdist/conf/type/__golang_from_vendor/manifest
Normal file
1
cdist/conf/type/__golang_from_vendor/manifest
Normal file
|
@ -0,0 +1 @@
|
||||||
|
__line go_in_path --line 'export PATH=/usr/local/go/bin:$PATH' --file /etc/profile
|
|
@ -0,0 +1 @@
|
||||||
|
1.8.1
|
1
cdist/conf/type/__golang_from_vendor/parameter/optional
Normal file
1
cdist/conf/type/__golang_from_vendor/parameter/optional
Normal file
|
@ -0,0 +1 @@
|
||||||
|
version
|
0
cdist/conf/type/__golang_from_vendor/singleton
Normal file
0
cdist/conf/type/__golang_from_vendor/singleton
Normal file
Loading…
Reference in a new issue