github.com/thiagoyeds/go-cloud@v0.26.0/internal/testing/listdeps.sh (about) 1 #!/usr/bin/env bash 2 # Copyright 2019 The Go Cloud Development Kit Authors 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # https://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 16 set -euo pipefail 17 18 # To run this script manually to update alldeps: 19 # 20 # $ internal/testing/listdeps.sh > internal/testing/alldeps 21 # 22 # Make sure to use the same version of Go as used by tests 23 # (see .github/actions/tests.yml) when updating the alldeps file. 24 tmpfile=$(mktemp) 25 function cleanup() { 26 rm -rf "$tmpfile" 27 } 28 trap cleanup EXIT 29 30 31 sed -e '/^#/d' -e '/^$/d' allmodules | awk '{print $1}' | while read -r path || [[ -n "$path" ]]; do 32 ( cd "$path" && go list -mod=readonly -deps -f '{{with .Module}}{{.Path}}{{end}}' ./... >> "$tmpfile") 33 done 34 35 # Sort using the native byte values to keep results from different environment consistent. 36 LC_ALL=C sort "$tmpfile" | uniq