f82fa91f58
It can no longer be dependent on Cli.Utils, since that will affect which version of NuGet gets used. It's better for this small console app to just depend on VersionTools.
59 lines
1.7 KiB
Bash
Executable file
59 lines
1.7 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
#
|
|
# Copyright (c) .NET Foundation and contributors. All rights reserved.
|
|
# Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
#
|
|
|
|
set -e
|
|
|
|
SOURCE="${BASH_SOURCE[0]}"
|
|
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
SOURCE="$(readlink "$SOURCE")"
|
|
[[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
|
done
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
|
|
REPO_ROOT="$DIR/../.."
|
|
PROJECT_PATH="$DIR/update-dependencies.csproj"
|
|
|
|
# Some things depend on HOME and it may not be set. We should fix those things, but until then, we just patch a value in
|
|
if [ -z "${HOME:-}" ]; then
|
|
export HOME=$REPO_ROOT/artifacts/home
|
|
|
|
[ ! -d "$HOME" ] || rm -Rf "$HOME"
|
|
mkdir -p "$HOME"
|
|
fi
|
|
|
|
# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot)
|
|
if [ -z "${DOTNET_INSTALL_DIR:-}" ]; then
|
|
export DOTNET_INSTALL_DIR=$REPO_ROOT/.dotnet_stage0/x64
|
|
fi
|
|
|
|
# Install a stage 0
|
|
echo "Installing .NET Core CLI Stage 0"
|
|
$REPO_ROOT/scripts/obtain/dotnet-install.sh -Channel master -Architecture x64
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Failed to install stage 0"
|
|
exit 1
|
|
fi
|
|
|
|
# Put the stage 0 on the path
|
|
export PATH=$DOTNET_INSTALL_DIR:$PATH
|
|
|
|
echo "Restoring $PROJECT_PATH..."
|
|
dotnet restore "$PROJECT_PATH"
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Failed to restore"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Invoking App $PROJECT_PATH..."
|
|
dotnet run -p "$PROJECT_PATH" $@
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Build failed"
|
|
exit 1
|
|
fi
|