mo_dew
(mo)
April 19, 2021, 2:27pm
#1
Is there any way I can integration the Realm app into the private Gitlab account?
I observed the documentation is only talking about Github but I don’t have an account in this.
I want Gitlab for this, as it is in use for rest of the application, I am working with.
Also, want to know how can I do the automatic deployment with Gitlab.
Any help in this regard is highly appreciated.
2 Likes
rouuuge
(...)
September 17, 2021, 10:13pm
#2
my gitlab pipline solution may help you:
# This file is a template, and might need editing before it works on your project.
# Official framework image. Look for the different tagged releases at:
# https://hub.docker.com/r/library/node/tags/
image: node:15.4
stages:
- deploy-development
- deploy-production
deploy-development:
stage: deploy-development
variables:
REALM_APP_ID: ${TEST_REALM_APP_ID}
STRIPE_SECRET_TEST_KEY:
STRIPE_WEBHOOK_SECRET_TEST:
before_script:
script:
- npm install -g mongodb-realm-cli
- realm-cli login --api-key="${REALM_API_PUBLIC_KEY}" --private-api-key="${REALM_API_PRIVATE_KEY}"
- cd app
# Set secrets
- realm-cli secrets update -a ${REALM_APP_ID} -s SLACK_TOKEN -v ${SLACK_TOKEN}
- realm-cli secrets update -a ${REALM_APP_ID} -s STRIPE_SECRET_KEY -v ${STRIPE_SECRET_TEST_KEY}
- realm-cli secrets update -a ${REALM_APP_ID} -s STRIPE_WEBHOOK_SECRET -v ${STRIPE_WEBHOOK_SECRET_TEST}
- realm-cli secrets update -a ${REALM_APP_ID} -s API_KEY_FCM -v ${API_KEY_FCM}
- realm-cli secrets update -a ${REALM_APP_ID} -s ATLAS_PRIVATE_KEY -v ${ATLAS_PRIVATE_KEY}
- realm-cli secrets update -a ${REALM_APP_ID} -s AWS_SECRET_ACCESS_KEY -v ${AWS_SECRET_ACCESS_KEY}
# Set environment
- sed -i "s/<ENVIRONMENT>/development/g" realm_config.json
# Push App to mongodb
- realm-cli push -d --remote="${REALM_APP_ID}" -y
only:
- master
deploy-production:
stage: deploy-production
variables:
REALM_APP_ID: ${LIVE_REALM_APP_ID}
before_script:
script:
- npm install -g mongodb-realm-cli
- realm-cli login --api-key="${REALM_API_PUBLIC_KEY}" --private-api-key="${REALM_API_PRIVATE_KEY}"
- cd app
# Set secrets
- realm-cli secrets update -a ${REALM_APP_ID} -s SLACK_TOKEN -v ${SLACK_TOKEN}
- realm-cli secrets update -a ${REALM_APP_ID} -s STRIPE_SECRET_KEY -v ${STRIPE_SECRET_KEY}
- realm-cli secrets update -a ${REALM_APP_ID} -s STRIPE_WEBHOOK_SECRET -v ${STRIPE_WEBHOOK_SECRET}
- realm-cli secrets update -a ${REALM_APP_ID} -s API_KEY_FCM -v ${API_KEY_FCM}
- realm-cli secrets update -a ${REALM_APP_ID} -s ATLAS_PRIVATE_KEY -v ${ATLAS_PRIVATE_KEY}
- realm-cli secrets update -a ${REALM_APP_ID} -s AWS_SECRET_ACCESS_KEY -v ${AWS_SECRET_ACCESS_KEY}
# Set environment
- sed -i "s/<ENVIRONMENT>/production/g" realm_config.json
# Push App to mongodb
- realm-cli push -d --remote="${REALM_APP_ID}" -y
only:
- production