- apps
- validate
- push
- versions
- logs
- local app
- dev app
- staging app
- copies
.zapierapprc-$appinto.zapierapprc - creates
env.jsonwithURL. Just include it inside your Zapier App
| { | |
| "id": 12345, | |
| "key": "App12345" | |
| } |
| { | |
| "id": 12345, | |
| "key": "App12345" | |
| } |
| { | |
| "id": 12345, | |
| "key": "App12345" | |
| } |
| #!/bin/bash | |
| # https://en.wikipedia.org/wiki/ANSI_escape_code | |
| RED='\033[0;31m' | |
| GREEN='\033[0;32m' | |
| YELLOW='\033[0;33m' | |
| NC='\033[0m' | |
| printf "\n${GREEN}SELECT COMMAND${NC}\n" | |
| COMMANDS=("apps" "validate" "push" "versions" "logs") | |
| APPS=("local" "dev" "staging") | |
| select command in "${COMMANDS[@]}" | |
| do | |
| if [ -z "$command" ] | |
| then | |
| printf "${RED}Invalid command${NC}\n" | |
| exit 1 | |
| else | |
| break | |
| fi | |
| done | |
| printf "\n${GREEN}SELECT APP:${NC}\n" | |
| select app in "${APPS[@]}" | |
| do | |
| if [ -z "$app" ] | |
| then | |
| printf "${RED}Invalid app${NC}\n" | |
| exit 1 | |
| else | |
| case $app in | |
| "local") | |
| if [ "$command" = "push" ]; then | |
| PREV_BASE_URL=`node -p "require('./env.json').BASE_URL"` | |
| printf "\n${GREEN}USE PREVIOUS URL${NC} ${YELLOW}$PREV_BASE_URL${NC} ${GREEN}(y/n)?${NC} " | |
| read choice | |
| case "$choice" in | |
| y|Y ) | |
| BASE_URL=$PREV_BASE_URL | |
| ;; | |
| * ) | |
| printf "\n${GREEN}NGROK URL (ex:${NC} ${YELLOW}http://123456.eu.ngrok.io${NC}${GREEN}):${NC} " | |
| read BASE_URL | |
| ;; | |
| esac | |
| else | |
| BASE_URL="http://website.dev" | |
| fi | |
| ;; | |
| "dev") | |
| BASE_URL="https://dev.website.com" | |
| ;; | |
| "staging") | |
| BASE_URL="https://staging.website.com" | |
| ;; | |
| esac | |
| break | |
| fi | |
| done | |
| printf "\n****************************************************************\n" | |
| printf "Command\t\t: ${GREEN}\$ zapier $command${NC}\n" | |
| printf "App\t\t: ${GREEN}$app${NC}\n" | |
| printf "URL\t\t: ${GREEN}$BASE_URL${NC}\n" | |
| printf "Config file\t: ${GREEN}.zapierapprc-$app${NC}\n" | |
| printf "Config\t\t: ${GREEN}$(tr -d '\n ' < .zapierapprc-${app})${NC}" | |
| printf "\n****************************************************************\n" | |
| printf "\n${GREEN}IS EVERYTHING CORRECT (y/n)?${NC} " | |
| read choice | |
| case "$choice" in | |
| y|Y ) | |
| printf "\n\n" | |
| cp ".zapierapprc-$app" ".zapierapprc" | |
| echo "{\"BASE_URL\":\"$BASE_URL\"}" > env.json | |
| zapier $command | |
| ;; | |
| * ) | |
| exit 1; | |
| ;; | |
| esac |