Files
5chan/scripts/deploy.sh
T

51 lines
1.3 KiB
Bash
Raw Normal View History

2023-04-24 19:42:49 +00:00
#!/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
2023-05-24 22:30:49 +00:00
if [ -f ../.deploy-env ]; then
export $(echo $(cat ../.deploy-env | sed 's/#.*//g'| xargs) | envsubst)
2023-04-24 19:42:49 +00:00
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
FIVECHAN_VERSION=$(node -e "console.log(require('../package.json').version)")
2026-03-21 12:41:32 +08:00
FIVECHAN_HTML_NAME="5chan-$FIVECHAN_VERSION-html"
2023-04-24 19:42:49 +00:00
SCRIPT="
# download html
cd ~
rm $FIVECHAN_HTML_NAME.zip
rm -fr $FIVECHAN_HTML_NAME
wget https://github.com/bitsocialnet/5chan/releases/download/v$FIVECHAN_VERSION/$FIVECHAN_HTML_NAME.zip || exit
2023-04-24 19:42:49 +00:00
# extract html
unzip $FIVECHAN_HTML_NAME.zip || exit
rm $FIVECHAN_HTML_NAME.zip || exit
2023-04-24 19:42:49 +00:00
# add to ipfs
CID=\`ipfs add --recursive --pin --quieter $FIVECHAN_HTML_NAME | tail -n 1\`
2023-04-24 19:42:49 +00:00
ipfs pin add --recursive \"\$CID\"
# start ipfs daemon if not started
ipfs init
nohup ipfs daemon &
2025-10-17 23:30:35 +02:00
# the CID of 5chan html, add this CID to ENS
2023-04-24 19:42:49 +00:00
sleep 3
echo \"\"
2023-06-03 20:03:07 +00:00
CID=\`ipfs cid base32 \$CID\`
echo $FIVECHAN_HTML_NAME \"CID: \$CID\"
2023-04-24 19:42:49 +00:00
echo \"\"
"
# execute script over ssh
echo "$SCRIPT" | sshpass -p "$DEPLOY_PASSWORD" ssh "$DEPLOY_USER"@"$DEPLOY_HOST"