You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.4 KiB
Bash
42 lines
1.4 KiB
Bash
#!/bin/sh
|
|
# WHAT: This script assembles the vim-hashicorp-tools plugin from git checkouts
|
|
# of the constituent plugins, which are assumed to exist in the same
|
|
# directory as vim-hashicorp-tools.
|
|
|
|
BLD=$(tput bold)
|
|
RST=$(tput sgr0)
|
|
|
|
for REPO in consul nomadproject ottoproject packer terraform vagrant vaultproject; do
|
|
# Clone all the repositories just incase we didn't have them
|
|
if [ ! -d "../vim-${REPO}" ]; then
|
|
echo "${BLD}INFO: Cloning vim-${REPO}${RST}"
|
|
git clone git@github.com:hashivim/vim-${REPO} ../vim-${REPO}
|
|
fi
|
|
|
|
# We only want to assemble off of master
|
|
if [ $(cd ../vim-${REPO} && git rev-parse --abbrev-ref HEAD) != "master" ]; then
|
|
echo "${BLD}WARN: Repository vim-${REPO} did not have the master branch checked out. To get that branchs changes back, run \`stash pop\`.${RST}"
|
|
git stash
|
|
git checkout master
|
|
git pull
|
|
fi
|
|
|
|
# Hashicorp tools ASSEMBLE!
|
|
echo "${BLD}INFO: Assembling ../vim-${REPO} into this repository.${RST}"
|
|
rsync --archive \
|
|
--exclude=.git \
|
|
--exclude=*.md \
|
|
--exclude=LICENSE \
|
|
--exclude=*.rb \
|
|
--exclude=*.sh \
|
|
--exclude=.travis.yml \
|
|
--exclude=Makefile \
|
|
--exclude=test/ \
|
|
--exclude=vader.vim/ \
|
|
--exclude=terraform-providers/ \
|
|
../vim-${REPO}/ .
|
|
done
|
|
|
|
echo "${BLD}INFO: Done!${RST}"
|
|
git status
|