mirror of https://github.com/fluxcd/flux2.git
Add CLI install instruction and script
parent
4c6dba2f39
commit
7739d84fa7
@ -0,0 +1,37 @@
|
|||||||
|
# TK CLI Installation
|
||||||
|
|
||||||
|
Binaries for macOS and Linux AMD64 are available for download on the
|
||||||
|
[release page](https://github.com/fluxcd/toolkit/releases).
|
||||||
|
|
||||||
|
To install the latest release run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s https://raw.githubusercontent.com/fluxcd/toolkit/master/install/tk.sh | sudo bash
|
||||||
|
```
|
||||||
|
|
||||||
|
The install script does the following:
|
||||||
|
* attempts to detect your OS
|
||||||
|
* downloads and unpacks the release tar file in a temporary directory
|
||||||
|
* copies the tk binary to `/usr/local/bin`
|
||||||
|
* removes the temporary directory
|
||||||
|
|
||||||
|
## Build from source
|
||||||
|
|
||||||
|
Clone the repository:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/fluxcd/toolkit
|
||||||
|
cd toolkit
|
||||||
|
```
|
||||||
|
|
||||||
|
Build the tk binary (requires go >= 1.14):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make build
|
||||||
|
```
|
||||||
|
|
||||||
|
Run the binary:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./bin/tk -h
|
||||||
|
```
|
@ -0,0 +1,51 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
DEFAULT_BIN_DIR="/usr/local/bin"
|
||||||
|
BIN_DIR=${1:-"$DEFAULT_BIN_DIR"}
|
||||||
|
|
||||||
|
opsys=""
|
||||||
|
if [[ "$OSTYPE" == linux* ]]; then
|
||||||
|
opsys=linux
|
||||||
|
elif [[ "$OSTYPE" == darwin* ]]; then
|
||||||
|
opsys=darwin
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$opsys" == "" ]]; then
|
||||||
|
echo "OS $OSTYPE not supported"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! -x "$(command -v curl)" ]]; then
|
||||||
|
echo "curl not found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
tmpDir=`mktemp -d`
|
||||||
|
if [[ ! "$tmpDir" || ! -d "$tmpDir" ]]; then
|
||||||
|
echo "could not create temp dir"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
function cleanup {
|
||||||
|
rm -rf "$tmpDir"
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
pushd $tmpDir >& /dev/null
|
||||||
|
|
||||||
|
curl -s https://api.github.com/repos/fluxcd/toolkit/releases/latest |\
|
||||||
|
grep browser_download |\
|
||||||
|
grep $opsys |\
|
||||||
|
cut -d '"' -f 4 |\
|
||||||
|
xargs curl -sL -o tk.tar.gz
|
||||||
|
|
||||||
|
tar xzf ./tk.tar.gz
|
||||||
|
|
||||||
|
mv ./tk $BIN_DIR
|
||||||
|
|
||||||
|
popd >& /dev/null
|
||||||
|
|
||||||
|
echo "$(tk --version) installed"
|
Loading…
Reference in New Issue