forked from dexidp/dex
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcheck-go-version
executable file
·33 lines (25 loc) · 1.03 KB
/
check-go-version
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/sh
set -e
VERSION=$( go version )
# For development versions of Go, these will be empty.
MAJOR_GOVERSION=$( echo -n "$VERSION" | grep -o 'go1\.[0-9]' || true )
FULL_GOVERSION=$( echo -n "$VERSION" | grep -o 'go1\.[0-9|\.]*' || true )
# The list of unsupported major go versions.
UNSUPPORTED=( "go1.0" "go1.1" "go1.2" "go1.3" "go1.4" "go1.5" "go1.6" )
# Minor go verisons which have known security vulnerabilities. Refuse to build with these.
#
# There aren't any security issues that impact dex in 1.7 but minor versions should be
# added here later if they do have issues.
KNOWN_INSECURE=( )
for V in "${UNSUPPORTED[@]}"; do
if [ "$V" = "$MAJOR_GOVERSION" ]; then
>&2 echo "ERROR: dex requires Go version 1.7+. Please update your Go installation: https://golang.org/dl/"
exit 2
fi
done
for V in "${KNOWN_INSECURE[@]}"; do
if [ "$V" = "$FULL_GOVERSION" ]; then
>&2 echo "Go version ${V} has known security vulnerabilities which impact dex. Please update your Go verison."
exit 2
fi
done