Private Gitlab integration with Realm app

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

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