Skip to content

Instantly share code, notes, and snippets.

@wi-ski
Last active November 5, 2019 01:11
Show Gist options
  • Save wi-ski/714f1ee81af795c4cd57b36cbe4daa58 to your computer and use it in GitHub Desktop.
Save wi-ski/714f1ee81af795c4cd57b36cbe4daa58 to your computer and use it in GitHub Desktop.
#!/bin/sh
# _ _ __ _
# | | | |___ ___ / _|_ _| |
# | | | / __|/ _ \ |_| | | | |
# | |_| \__ \ __/ _| |_| | |
# \___/|___/\___|_| \__,_|_|
# BC id: 5430e7bc5cdc2e0300dd8b78
# http://localhost:3000/admiin/historical-opportunity-imports/5430e7bc5cdc2e0300dd8b78
# See: https://unix.stackexchange.com/questions/122845/using-a-b-for-variable-assignment-in-scripts
MONGO_CONNECTION_URI=${MONGO_OPPS_CONNECTION_STRING:-"mongodb://localhost:27017/bc-local-opps"}
function insertTemplateDoc(){
echo "$1 | Inserting templateSheetId: $2"
read -r -d '' VVVVV <<- EOM
db.HistoricalImports.insert({
_id: new ObjectId('$3'),
companyId: ObjectId('5430e7bc5cdc2e0300dd8b78'),
officeId: ObjectId('5430e7bc5cdc2e0300dd8b7b'),
startedBy: ObjectId('58ed681b195f9a0b00708c4b'),
onTrial: false,
state: 'DRAFT',
templateSheetId: '$2'
})
EOM
docker exec -i bc_mongo mongo $MONGO_CONNECTION_URI --eval "$VVVVV"
}
function insertSummaryDoc(){
echo "$1 | Inserting summarySheetId: $2"
read -r -d '' VVVVV <<- EOM
db.HistoricalImports.insert({
_id: new ObjectId('$3'),
companyId: ObjectId('5430e7bc5cdc2e0300dd8b78'),
officeId: ObjectId('5430e7bc5cdc2e0300dd8b7b'),
startedBy: ObjectId('58ed681b195f9a0b00708c4b'),
onTrial: false,
state: 'DRAFT',
templateSheetId: '1iYG59mD3wXTa5RDn0vPQ-VjYDnuJybkNDnplXjyKUKY',
summarySheetId: '$2'
})
EOM
docker exec -i bc_mongo mongo $MONGO_CONNECTION_URI --eval "$VVVVV"
}
function processTemplates () {
# See: https://stackoverflow.com/questions/11776468/create-associative-array-in-bash-3
declare -a listOfValsToLoop=("${!1}")
for val in "${listOfValsToLoop[@]}"; do
IFS=':' read -ra MY_SWEET_ARRAY <<< "$val"
echo $MY_SWEET_ARRAY
# See: https://www.thegeekstuff.com/2010/07/bash-string-manipulation
insertTemplateDoc ${MY_SWEET_ARRAY[0]} ${MY_SWEET_ARRAY[1]} ${MY_SWEET_ARRAY[2]}
done
}
function processSummaries () {
# See: https://stackoverflow.com/questions/11776468/create-associative-array-in-bash-3
declare -a listOfValsToLoop=("${!1}")
for val in "${listOfValsToLoop[@]}"; do
IFS=':' read -ra MY_SWEET_ARRAY <<< "$val"
echo $MY_SWEET_ARRAY
# See: https://www.thegeekstuff.com/2010/07/bash-string-manipulation
insertSummaryDoc ${MY_SWEET_ARRAY[0]} ${MY_SWEET_ARRAY[1]} ${MY_SWEET_ARRAY[2]}
done
}
# _____ _____ ____ _____ ___ _ _ ____ ____ _ _____ _
# |_ _| ____/ ___|_ _|_ _| \ | |/ ___| | _ \ / \|_ _|/ \
# | | | _| \___ \ | | | || \| | | _ | | | |/ _ \ | | / _ \
# | | | |___ ___) || | | || |\ | |_| | | |_| / ___ \| |/ ___ \
# |_| |_____|____/ |_| |___|_| \_|\____| |____/_/ \_\_/_/ \_\ woot.
TEMPLATE_TESTING_SHEETS=(
"BLOCKING_ERRORS_EMPTY_PROJECT_NAME:1ZaSAGUoJ8p0kdgbSnqckAcTnD6oDs8yxpKKVI3EqOEE:ffffffffffffffffffffff00"
"BLOCKING_ERRORS_INVALID_CLIENT_EMAIL:1G3L_jg4XGGTgqDhbND3pLI428wR-WuWiiC3PBjRPhXY:ffffffffffffffffffffff01"
"BLOCKING_ERRORS_EMPTY_SHEET:1kp-xa04_LF5ExPx4QM1KkhwqDojSm0KJr_70Atb-GSI:ffffffffffffffffffffff02"
"TEMPLATE_ERRORS_NO_FALLBACK:1_Ve09eyGIjSZHbXlyRgK9dVc1TMtX1RoaqaEd06kM5Q:ffffffffffffffffffffff03"
"TEMPLATE_ERRORS_FALLBACK:1Y3edGY-k0NtP3Z5oJp3K8FWOR6Pt0QT9UIeo8qc6ZUc:ffffffffffffffffffffff04"
"BLOCKING_ERRORS_BAD_COLUMN_NAME:1-x3HzFOLK061SrDjmQ9xKddfzbfda2t6K_PlZsLmsy4:ffffffffffffffffffffff05"
"TEMPLATE_ERRORS_MISSING_OUTCOME_DATE:1kbU1rJtUR3N8iFzc-2aY_SbkdBUarHN8DqbyQJ7kQ94:ffffffffffffffffffffff06"
"TEMPLATE_ERRORS_BAD_OUTCOME_DATE:1dVDovcIQRsTRps7zC9o9ONgAQWqgGPbgRi3J_Qd_uSs:ffffffffffffffffffffff07"
#edge cases
"TEMPLATE_SHEET_EDGE_CASE_TEST_FORMULAS:1ZeVKDTP3WXsWZP_QqRCFVEyViRHvT2-HWlXpnjn4PEc:ffffffffffffffffffffff08"
)
SUMMARY_TESTING_SHEETS=(
"SUMMARY_SHEET_PRISTINE:15FME8nf1UOonwbPJI2LIuEpQj0z0yz3myicHk1Qi3GM:ffffffffffffffffffffff09"
"SUMMARY_SHEET_ID_1:1zC45HEMiSXv_7pIBzMMimena85Vxg8OTfKp3Dym44Ng:ffffffffffffffffffffff10"
"SUMMARY_SHEET_ID_2:1VIDaRzlADyRLw0mkKRRBaYvXcAcklfaoR0jDX3yE1r4:ffffffffffffffffffffff11"
"SUMMARY_SHEET_ID_3:1_Ef9vL9U4VkBGYf4j3HU7Reh8cMjr15M8DhUvqEwKns:ffffffffffffffffffffff12"
"SUMMARY_SHEET_ID_4:1hvUBUAKJJcNxovVX6Rgc40a_EtGbkPoUP_QQmvTD2uo:ffffffffffffffffffffff13"
"SUMMARY_SHEET_ID_5:1O3vXajmi9mhVQkx04kz_5F1ilKvwJU8rAWl7MV4UWCk:ffffffffffffffffffffff14"
"SUMMARY_SHEET_ID_6:1DOaUZikB_XZutIvznEe1Xti3QiQPOd54Lg-8T9yovYM:ffffffffffffffffffffff15"
"SUMMARY_SHEET_ID_7:1zhbDOcjk0U_QjG08L7XA3kqeGaHqJKYUG9KpRNrMLXw:ffffffffffffffffffffff16"
"SUMMARY_SHEET_ID_8:1CWOsdqrtYYiQoFkod0Ch40X8a6J8qnZO6AvUD6qgh9k:ffffffffffffffffffffff17"
"SUMMARY_SHEET_ID_9:1CWOsdqrtYYiQoFkod0Ch40X8a6J8qnZO6AvUD6qgh9k:ffffffffffffffffffffff18"
"SUMMARY_SHEET_ID_10:1aySBavD3jTWqo9_YV9646L002Q4xuwAMMlBx6N-U1ws:ffffffffffffffffffffff19"
#random sheet for cory
"CORYS_SPECIAL_QA_SHEET:15IeDRth0NNdVesjAhNA7UwmkfZwyLLVT9yjaRZuIGiY:ffffffffffffffffffffff20"
"SUMMARY_SHEET_INTRO_OUTCOME_DATE:1iYG59mD3wXTa5RDn0vPQ-VjYDnuJybkNDnplXjyKUKY:ffffffffffffffffffffff21"
)
docker exec -i bc_mongo mongo $MONGO_CONNECTION_URI --eval "db.HistoricalImports.remove({})" &&
# See: https://stackoverflow.com/questions/11776468/create-associative-array-in-bash-3
processTemplates TEMPLATE_TESTING_SHEETS[@] &&
processSummaries SUMMARY_TESTING_SHEETS[@]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment