mirror of
https://github.com/plebbit/seedit.git
synced 2025-12-24 22:48:24 -05:00
67 lines
2.0 KiB
Bash
Executable File
67 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# deploy html to a server and then add html to ipfs
|
|
|
|
# go to current folder
|
|
cd "$(dirname "$0")"
|
|
|
|
# add env vars
|
|
if [ -f ../.deploy-env ]; then
|
|
export $(echo $(cat ../.deploy-env | sed 's/#.*//g'| xargs) | envsubst)
|
|
fi
|
|
|
|
# check creds
|
|
if [ -z "${DEPLOY_HOST+xxx}" ]; then echo "DEPLOY_HOST not set" && exit; fi
|
|
if [ -z "${DEPLOY_USER+xxx}" ]; then echo "DEPLOY_USER not set" && exit; fi
|
|
if [ -z "${DEPLOY_PASSWORD+xxx}" ]; then echo "DEPLOY_PASSWORD not set" && exit; fi
|
|
|
|
# save version
|
|
SEEDIT_VERSION=$(node -e "console.log(require('../package.json').version)")
|
|
SEEDIT_HTML_NAME="seedit-html-$SEEDIT_VERSION"
|
|
SEEDIT_PREVIOUS_VERSIONS=$(git tag | sed 's/v//g' | tr '\n' ' ')
|
|
|
|
SCRIPT="
|
|
# download html
|
|
cd ~
|
|
rm $SEEDIT_HTML_NAME.zip
|
|
rm -fr $SEEDIT_HTML_NAME
|
|
wget https://github.com/plebbit/seedit/releases/download/v$SEEDIT_VERSION/$SEEDIT_HTML_NAME.zip || exit
|
|
|
|
# extract html
|
|
unzip $SEEDIT_HTML_NAME.zip || exit
|
|
rm $SEEDIT_HTML_NAME.zip || exit
|
|
|
|
# add previous versions as folders e.g. /0.1.1
|
|
cd $SEEDIT_HTML_NAME
|
|
for SEEDIT_PREVIOUS_VERSION in $SEEDIT_PREVIOUS_VERSIONS
|
|
do
|
|
# download previous version
|
|
SEEDIT_PREVIOUS_VERSION_HTML_NAME="seedit-html-\$SEEDIT_PREVIOUS_VERSION"
|
|
echo downloading \$SEEDIT_PREVIOUS_VERSION_HTML_NAME...
|
|
wget --quiet https://github.com/plebbit/seedit/releases/download/v\$SEEDIT_PREVIOUS_VERSION/\$SEEDIT_PREVIOUS_VERSION_HTML_NAME.zip
|
|
# extract previous version html
|
|
unzip -qq \$SEEDIT_PREVIOUS_VERSION_HTML_NAME.zip
|
|
rm \$SEEDIT_PREVIOUS_VERSION_HTML_NAME.zip
|
|
mv \$SEEDIT_PREVIOUS_VERSION_HTML_NAME \$SEEDIT_PREVIOUS_VERSION
|
|
done
|
|
cd ..
|
|
|
|
# add to ipfs
|
|
CID=\`ipfs add --recursive --pin --quieter $SEEDIT_HTML_NAME | tail -n 1\`
|
|
ipfs pin add --recursive \"\$CID\"
|
|
|
|
# start ipfs daemon if not started
|
|
ipfs init
|
|
nohup ipfs daemon &
|
|
|
|
# the CID of seedit html, add this CID to ENS
|
|
sleep 3
|
|
echo \"\"
|
|
CID=\`ipfs cid base32 \$CID\`
|
|
echo $SEEDIT_HTML_NAME \"CID: \$CID\"
|
|
echo \"\"
|
|
"
|
|
|
|
# execute script over ssh
|
|
echo "$SCRIPT" | sshpass -p "$DEPLOY_PASSWORD" ssh "$DEPLOY_USER"@"$DEPLOY_HOST"
|