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
|
||||
fi
|
||||
|
||||
#
|
||||
# TODO : ZABBIX AND URBACKUP
|
||||
#
|
||||
|
||||
echo -e "${PURPLE}${BOLD}TODO : Zabbix and Urbackup${RESET}"
|
||||
|
||||
#
|
||||
# CADDY
|
||||
#
|
||||
|
@ -266,9 +260,8 @@ if [[ "$answer" == "y" ]]; then
|
|||
npm init -y &&\
|
||||
npx directus bootstrap --skipAdminInit" $username
|
||||
|
||||
session="directus"
|
||||
su -c "tmux new-session -d -s ${session} &&\
|
||||
tmux send-keys -t ${session} \"cd /home/${username}/${cms_folder} && npx directus start\" C-m" $username
|
||||
su -c "tmux new-session -d -s directus &&\
|
||||
tmux send-keys -t directus \"cd /home/${username}/${cms_folder} && npx directus start\" C-m" $username
|
||||
|
||||
su -c "cd /home/${username}/${cms_folder} &&\
|
||||
npx directus roles create --role Administrator --admin true &&\
|
||||
|
@ -299,28 +292,73 @@ if [[ "$answer" == "y" ]]; then
|
|||
echo "}" >> $caddyfile
|
||||
caddy fmt $caddyfile -w
|
||||
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
|
||||
|
||||
#
|
||||
# DIRECTUS IMPORTS
|
||||
# NUXT
|
||||
#
|
||||
|
||||
echo -e "${PURPLE}${BOLD}Import Directus data model and content ? (y/N) ${RESET}"
|
||||
echo -e "${PURPLE}${BOLD}Install the front-end ? (y/N) ${RESET}"
|
||||
read answer
|
||||
if [[ "$answer" == "y" ]]; then
|
||||
get_username
|
||||
get_ip
|
||||
|
||||
echo -e "${PURPLE}${BOLD}Import local Directus data model${RESET}"
|
||||
echo -e "${PURPLE}npx directus schema snapshot ./snapshot.yaml${RESET}"
|
||||
echo -e "${PURPLE}scp ${username}@${ip}:/home/${username}/snapshot.yaml /path/to/snapshot.yaml${RESET}"
|
||||
echo -e "${PURPLE}${BOLD}Press any key when done${RESET}"
|
||||
read
|
||||
echo -e "${PURPLE}${BOLD}Create and push a prod branch on the repo${RESET}"
|
||||
echo -e "${PURPLE}git checkout -b prod${RESET}"
|
||||
echo -e "${PURPLE}git add . && git commit -m "first commit to prod"${RESET}"
|
||||
echo -e "${PURPLE}git push origin prod${RESET}"
|
||||
echo -e "${PURPLE}${BOLD}What is the .git url of the repo${RESET}"
|
||||
read repo_url
|
||||
|
||||
su -c "cd /home/${username}/${cms_folder} &&\
|
||||
npx directus schema apply --dry-run --yes ../snapshot.yaml" $username
|
||||
front_folder=$(echo "$repo_url" | sed 's#.*/\([^/]*\)\.git#\1#')
|
||||
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
|
||||
|
||||
|
||||
# TODO
|
||||
# REMOVE EXPECT AT THE END IF IT IS INSTALLED
|
||||
# CREATE AN ASSETS FOLDER WITH THE DIRECTUS ENV
|
||||
|
|
Loading…
Reference in New Issue