Skip to content

Instantly share code, notes, and snippets.

@kpurdon
Created December 11, 2020 22:53
Show Gist options
  • Save kpurdon/762297595b796e1e1709b73a1654a324 to your computer and use it in GitHub Desktop.
Save kpurdon/762297595b796e1e1709b73a1654a324 to your computer and use it in GitHub Desktop.
get license and version information from a go modules
rm licenses.csv
touch licenses.csv
echo "name,url,version,license" >> licenses.csv
deps=$(go list -m -json all | jq -c .)
for dep in $deps; do
path=$(echo $dep | jq -r .Path)
if [[ "$path" == "github.com/syndio/syndio" ]]; then
continue
fi
version=$(echo $dep | jq -r .Version)
license=$(http https://pkg.go.dev/"$path"?tab=licenses | grep "#lic-0" | sed -e 's/<[^>]*>//g' | xargs echo)
if [[ "$license" == "" ]]; then
license="unknown"
fi
echo "$path $license $version"
echo "$path,$path,$version,$license" >> licenses.csv
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment