kawipiko/scripts/go.z-run

386 lines
8 KiB
Text
Raw Normal View History

#!/dev/null
2021-12-24 14:36:53 +00:00
<< go / build / all / release / quick
2022-08-26 16:02:41 +00:00
export -- __BUILD_QUICK=true
2021-12-24 14:36:53 +00:00
"${ZRUN[@]}" ':: go / build / archiver / release' "${@}"
"${ZRUN[@]}" ':: go / build / server / release' "${@}"
"${ZRUN[@]}" ':: go / build / server-dummy / release' "${@}"
"${ZRUN[@]}" ':: go / build / wrapper / release' "${@}"
!!
<< go / build / server / debug
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/debug/kawipiko-server" ; then
rm -- "${_outputs}/binaries/debug/kawipiko-server"
fi
exec -- \
nodaemon \
nice -n 19 \
"${ZRUN[@]}" ':: go / tool' \
build \
-o "${_outputs}/binaries/debug/kawipiko-server" \
-- ./cmd/server.go \
#
!!
<< go / build / server / release / quick
2022-08-26 16:02:41 +00:00
export -- __BUILD_QUICK=true
exec -- "${ZRUN[@]}" ':: go / build / server / release' "${@}"
!!
<< go / build / server / release
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/release/kawipiko-server" ; then
rm -- "${_outputs}/binaries/release/kawipiko-server"
fi
2021-12-21 18:27:02 +00:00
_flags=(
-tags netgo
)
2022-08-26 16:02:41 +00:00
if test -z "${__BUILD_QUICK:-}" ; then
_flags+=(
-gcflags 'all=-l=4'
-ldflags 'all=-s'
-buildmode exe
-trimpath
2021-12-21 18:27:02 +00:00
-a
)
fi
exec -- \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
"${_flags[@]}" \
-o "${_outputs}/binaries/release/kawipiko-server" \
-- ./cmd/server.go \
#
!!
<< go / build / archiver / debug
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/debug/kawipiko-archiver" ; then
rm -- ${_outputs}/binaries/debug/kawipiko-archiver
fi
exec -- \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
-o "${_outputs}/binaries/debug/kawipiko-archiver" \
-- ./cmd/archiver.go \
#
!!
<< go / build / archiver / release / quick
2022-08-26 16:02:41 +00:00
export -- __BUILD_QUICK=true
exec -- "${ZRUN[@]}" ':: go / build / archiver / release' "${@}"
!!
<< go / build / archiver / release
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/release/kawipiko-archiver" ; then
rm -- "${_outputs}/binaries/release/kawipiko-archiver"
fi
2021-12-21 18:27:02 +00:00
_flags=(
-tags netgo
)
2022-08-26 16:02:41 +00:00
if test -z "${__BUILD_QUICK:-}" ; then
_flags+=(
-gcflags 'all=-l=4'
-ldflags 'all=-s'
-buildmode exe
-trimpath
2021-12-21 18:27:02 +00:00
-a
)
fi
exec -- \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
"${_flags[@]}" \
-o "${_outputs}/binaries/release/kawipiko-archiver" \
-- ./cmd/archiver.go \
#
!!
<< go / build / wrapper / debug
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/debug/kawipiko-wrapper" ; then
rm -- "${_outputs}/binaries/debug/kawipiko-wrapper"
fi
exec -- \
nodaemon \
nice -n 19 \
"${ZRUN[@]}" ':: go / tool' \
build \
-o "${_outputs}/binaries/debug/kawipiko-wrapper" \
-- ./cmd/wrapper.go \
#
!!
<< go / build / wrapper / release
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/release/kawipiko-wrapper" ; then
rm -- "${_outputs}/binaries/release/kawipiko-wrapper"
fi
exec -- \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
-tags netgo \
-a \
-gcflags 'all=-l=4' \
-ldflags 'all=-s' \
-buildmode exe \
-trimpath \
-o "${_outputs}/binaries/release/kawipiko-wrapper" \
-- ./cmd/wrapper.go \
#
!!
<< go / build / server-dummy / debug
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/debug/kawipiko-server-dummy" ; then
rm -- "${_outputs}/binaries/debug/kawipiko-server-dummy"
fi
exec -- \
nodaemon \
nice -n 19 \
"${ZRUN[@]}" ':: go / tool' \
build \
-o "${_outputs}/binaries/debug/kawipiko-server-dummy" \
-- ./cmd/server-dummy.go \
#
!!
<< go / build / server-dummy / release / quick
2022-08-26 16:02:41 +00:00
export -- __BUILD_QUICK=true
exec -- "${ZRUN[@]}" ':: go / build / server-dummy / release' "${@}"
!!
<< go / build / server-dummy / release
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
if test -e "${_outputs}/binaries/release/kawipiko-server-dummy" ; then
rm -- "${_outputs}/binaries/release/kawipiko-server-dummy"
fi
2021-12-21 18:27:02 +00:00
_flags=(
-tags netgo
)
2022-08-26 16:02:41 +00:00
if test -z "${__BUILD_QUICK:-}" ; then
_flags+=(
-gcflags 'all=-l=4'
-ldflags 'all=-s'
-buildmode exe
-trimpath
2021-12-21 18:27:02 +00:00
-a
)
fi
exec -- \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
"${_flags[@]}" \
-o "${_outputs}/binaries/release/kawipiko-server-dummy" \
-- ./cmd/server-dummy.go \
#
!!
<< go / build / all / release
if test "${#}" -ge 1 ; then
_platform_0="${1}"
shift -- 1
else
_platform_0='all'
fi
if test "${#}" -ge 1 ; then
_component_0="${1}"
shift -- 1
else
_component_0=all
fi
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
for _platform in linux darwin openbsd freebsd ; do
if test "${_platform_0}" != all -a "${_platform_0}" != "${_platform}" ; then
continue
fi
for _component in archiver server server-dummy wrapper ; do
if test "${_component_0}" != all -a "${_component_0}" != "${_component}" ; then
continue
fi
if test -e "${_outputs}/binaries/release/kawipiko-${_component}--${_platform}" ; then
rm -f -- "${_outputs}/binaries/release/kawipiko-${_component}--${_platform}"
fi
done
done
for _platform in linux darwin openbsd freebsd ; do
if test "${_platform_0}" != all -a "${_platform_0}" != "${_platform}" ; then
continue
fi
for _component in archiver server server-dummy wrapper ; do
if test "${_component_0}" != all -a "${_component_0}" != "${_component}" ; then
continue
fi
test ! -e "${_outputs}/binaries/release/kawipiko-${_component}--${_platform}"
printf -- '[ii] building `%s` for `%s`...\n' "${_component}" "${_platform}" >&2
env GOOS="${_platform}" \
nodaemon \
nice -n 19 -- \
"${ZRUN[@]}" ':: go / tool' \
build \
-tags netgo \
-a \
-gcflags 'all=-l=4' \
-ldflags 'all=-s' \
-buildmode exe \
-trimpath \
-o "${_outputs}/binaries/release/kawipiko-${_component}--${_platform}" \
-- "./cmd/${_component}.go" \
#
done
done
!!
<< go / build / all / publish
test "${#}" -eq 0
for _platform in linux darwin openbsd freebsd ; do
for _component in archiver server server-dummy wrapper ; do
cp -T -- \
"./.outputs/binaries/release/kawipiko-${_component}--${_platform}" \
"./.outputs/publish/binaries/kawipiko-${_component}--${_platform}" \
#
done
done
!!
<< go / build / server / analyze
test "${#}" -eq 0
_outputs="$( exec -- readlink -e -- ./.outputs )"
exec -- "${ZRUN[@]}" ':: go / tool' \
build \
2021-12-16 10:05:13 +00:00
-a \
-gcflags '-m' \
-o "${_outputs}/binaries/analyze/kawipiko-server" \
2021-12-16 10:05:13 +00:00
-- ./cmd/server/server.go \
#
!!
<< go / build / server / analyze / escapes
"${ZRUN[@]}" ':: go / build / server / analyze' "${@}" \
2>&1 \
| grep -F -e ' escapes ' \
| LC_ALL=C sort -n -k 2,2 -t ':'
!!
<< go / dependencies / update
test "${#}" -eq 0
exec -- "${ZRUN[@]}" ':: go / tool' \
get \
-v \
-d \
-u \
-- \
all \
#
!!
<< go / dependencies / list
test "${#}" -eq 0
exec -- "${ZRUN[@]}" ':: go / tool' \
list \
-m \
-- \
all \
#
!!
<< go / dependencies / tidy
test "${#}" -eq 0
exec -- "${ZRUN[@]}" ':: go / tool' \
mod tidy \
#
!!
<< go / dependencies / verify
test "${#}" -eq 0
exec -- "${ZRUN[@]}" ':: go / tool' \
mod verify \
#
!!
<< go / dependencies / upgrade
test "${#}" -eq 0
"${ZRUN[@]}" ':: go / dependencies / update'
"${ZRUN[@]}" ':: go / dependencies / tidy'
"${ZRUN[@]}" ':: go / dependencies / verify'
"${ZRUN[@]}" ':: go / dependencies / list'
!!
<< go / tool
test "${#}" -ge 1
_outputs="$( exec -- readlink -e -- ./.outputs )"
_sources="$( exec -- readlink -e -- ./sources )"
export -- GOPATH="${_outputs}/go"
export -- GOBIN="${_outputs}/go/bin"
export -- GOTMPDIR="${_outputs}/go/tmp"
export -- GOCACHE="${_outputs}/go/cache"
export -- GO111MODULE=on
cd -- "${_sources}"
exec -- go "${@}"
!!