deploy nuxt
This commit is contained in:
parent
c5a18dd39b
commit
cce95dc9e4
78
install.sh
78
install.sh
|
@ -90,12 +90,6 @@ if [[ "$answer" == "y" ]]; then
|
||||||
ufw allow https
|
ufw allow https
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
|
||||||
# TODO : ZABBIX AND URBACKUP
|
|
||||||
#
|
|
||||||
|
|
||||||
echo -e "${PURPLE}${BOLD}TODO : Zabbix and Urbackup${RESET}"
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# CADDY
|
# CADDY
|
||||||
#
|
#
|
||||||
|
@ -266,9 +260,8 @@ if [[ "$answer" == "y" ]]; then
|
||||||
npm init -y &&\
|
npm init -y &&\
|
||||||
npx directus bootstrap --skipAdminInit" $username
|
npx directus bootstrap --skipAdminInit" $username
|
||||||
|
|
||||||
session="directus"
|
su -c "tmux new-session -d -s directus &&\
|
||||||
su -c "tmux new-session -d -s ${session} &&\
|
tmux send-keys -t directus \"cd /home/${username}/${cms_folder} && npx directus start\" C-m" $username
|
||||||
tmux send-keys -t ${session} \"cd /home/${username}/${cms_folder} && npx directus start\" C-m" $username
|
|
||||||
|
|
||||||
su -c "cd /home/${username}/${cms_folder} &&\
|
su -c "cd /home/${username}/${cms_folder} &&\
|
||||||
npx directus roles create --role Administrator --admin true &&\
|
npx directus roles create --role Administrator --admin true &&\
|
||||||
|
@ -299,28 +292,73 @@ if [[ "$answer" == "y" ]]; then
|
||||||
echo "}" >> $caddyfile
|
echo "}" >> $caddyfile
|
||||||
caddy fmt $caddyfile -w
|
caddy fmt $caddyfile -w
|
||||||
caddy reload -c $caddyfile
|
caddy reload -c $caddyfile
|
||||||
|
|
||||||
|
echo -e "${PURPLE}${BOLD}Import Directus data model ? (y/N) ${RESET}"
|
||||||
|
read answer
|
||||||
|
if [[ "$answer" == "y" ]]; then
|
||||||
|
|
||||||
|
echo -e "${PURPLE}${BOLD}Import local Directus data model${RESET}"
|
||||||
|
echo -e "${PURPLE}npx directus schema snapshot ./snapshot.yaml${RESET}"
|
||||||
|
echo -e "${PURPLE}scp /local/path/to/snapshot.yaml ${username}@${ip}:/home/${username}/snapshot.yaml${RESET}"
|
||||||
|
echo -e "${PURPLE}${BOLD}Press any key when done${RESET}"
|
||||||
|
read
|
||||||
|
|
||||||
|
su -c "cd /home/${username}/${cms_folder} &&\
|
||||||
|
npx directus schema apply --yes ../snapshot.yaml" $username
|
||||||
|
|
||||||
|
echo -e "${PURPLE}${BOLD}You can now add some content${RESET}"
|
||||||
|
echo -e "${ORANGE}${BOLD}Do not forget to set the permissions${RESET}"
|
||||||
|
echo -e "${ORANGE}${BOLD}Website role ${RESET}${ORANGE}Read content collections and directus_files${RESET}"
|
||||||
|
echo -e "${ORANGE}${BOLD}User role ${RESET}${ORANGE}All permissions on content collections and directus_files${RESET}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "${PURPLE}${BOLD}Access Directus ${RESET}${PURPLE}https://cms.${domain_name}${RESET}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
# DIRECTUS IMPORTS
|
# NUXT
|
||||||
#
|
#
|
||||||
|
echo -e "${PURPLE}${BOLD}Install the front-end ? (y/N) ${RESET}"
|
||||||
echo -e "${PURPLE}${BOLD}Import Directus data model and content ? (y/N) ${RESET}"
|
|
||||||
read answer
|
read answer
|
||||||
if [[ "$answer" == "y" ]]; then
|
if [[ "$answer" == "y" ]]; then
|
||||||
get_username
|
get_username
|
||||||
get_ip
|
|
||||||
|
|
||||||
echo -e "${PURPLE}${BOLD}Import local Directus data model${RESET}"
|
echo -e "${PURPLE}${BOLD}Create and push a prod branch on the repo${RESET}"
|
||||||
echo -e "${PURPLE}npx directus schema snapshot ./snapshot.yaml${RESET}"
|
echo -e "${PURPLE}git checkout -b prod${RESET}"
|
||||||
echo -e "${PURPLE}scp ${username}@${ip}:/home/${username}/snapshot.yaml /path/to/snapshot.yaml${RESET}"
|
echo -e "${PURPLE}git add . && git commit -m "first commit to prod"${RESET}"
|
||||||
echo -e "${PURPLE}${BOLD}Press any key when done${RESET}"
|
echo -e "${PURPLE}git push origin prod${RESET}"
|
||||||
read
|
echo -e "${PURPLE}${BOLD}What is the .git url of the repo${RESET}"
|
||||||
|
read repo_url
|
||||||
|
|
||||||
su -c "cd /home/${username}/${cms_folder} &&\
|
front_folder=$(echo "$repo_url" | sed 's#.*/\([^/]*\)\.git#\1#')
|
||||||
npx directus schema apply --dry-run --yes ../snapshot.yaml" $username
|
if [[ -z "$website_token" ]]; then
|
||||||
|
echo -e "${PURPLE}${BOLD}Enter the Directus Website user static token${RESET}"
|
||||||
|
read website_token
|
||||||
|
fi
|
||||||
|
|
||||||
|
su -c "cd /home/${username} &&\
|
||||||
|
git clone ${repo_url} &&\
|
||||||
|
cd ${front_folder} &&\
|
||||||
|
git checkout prod &&\
|
||||||
|
echo \"DIRECTUS_API_TOKEN=${website_token}\" > .env &&\
|
||||||
|
echo \"URL=https://${domain_name}\" >> .env &&\
|
||||||
|
echo \"DIRECTUS_URL=https://cms.${domain_name}\" >> .env &&\
|
||||||
|
npm install &&\
|
||||||
|
tmux send-keys -t directus C-c &&\
|
||||||
|
npm run build &&\
|
||||||
|
tmux new-session -d -s front &&\
|
||||||
|
tmux send-keys -t front \"cd /home/${username}/${front_folder} && node .output/server/index.mjs\" C-m &&\
|
||||||
|
tmux send-keys -t directus "npx directus start" C-m" $username
|
||||||
|
|
||||||
|
|
||||||
|
echo -e "${PURPLE}${BOLD}Setup a webhook ? (y/N) ${RESET}"
|
||||||
|
read answer
|
||||||
|
if [[ "$answer" == "y" ]]; then
|
||||||
|
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# TODO
|
# TODO
|
||||||
# REMOVE EXPECT AT THE END IF IT IS INSTALLED
|
# REMOVE EXPECT AT THE END IF IT IS INSTALLED
|
||||||
# CREATE AN ASSETS FOLDER WITH THE DIRECTUS ENV
|
# CREATE AN ASSETS FOLDER WITH THE DIRECTUS ENV
|
||||||
|
|
Loading…
Reference in New Issue