diff options
author | tv <tv@krebsco.de> | 2015-05-21 23:52:06 +0200 |
---|---|---|
committer | tv <tv@krebsco.de> | 2015-05-21 23:52:06 +0200 |
commit | bb46e52bb239f9b0962ff441d5a8f037b1ef1eaf (patch) | |
tree | 826235e1b776665ab32ee787bb96cd3b6f519d95 /bin/nixos-fetch-git | |
parent | 42d10d883a720a63753568a6fa2d12790e9310c6 (diff) |
deploy: merge next
Diffstat (limited to 'bin/nixos-fetch-git')
-rwxr-xr-x | bin/nixos-fetch-git | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/bin/nixos-fetch-git b/bin/nixos-fetch-git new file mode 100755 index 0000000..7002208 --- /dev/null +++ b/bin/nixos-fetch-git @@ -0,0 +1,32 @@ +#! /bin/sh +# +# nixos-fetch-git : nixos-config -> ... +# +set -euf + +host=$1 + +target=root@$host + +git_rev=$(nixos-query "$host" nixpkgs.rev) +git_url=$(nixos-query "$host" nixpkgs.url) + +worktree=$nixpkgs_root/$host + +if [ ! -d "$worktree" ]; then + mkdir -p "$worktree" +fi + +cd "$worktree" + +git init -q + +if ! current_url=$(git config remote.src.url); then + git remote add src "$git_url" +elif [ "$current_url" != "$git_url" ]; then + git remote set-url src "$git_url" +fi + +git fetch src + +git checkout "$git_rev" |