Skip to content

Latest commit

 

History

History
74 lines (46 loc) · 2.02 KB

README.md

File metadata and controls

74 lines (46 loc) · 2.02 KB

Mobile app CI/CD demo app built with ReactNative and TypeScript

Monorepo for services and apps related to the RNTDemoApp

Get Started

Install missing prerequisites if neccessary

  1. Install Node.js and Yarn
  2. Install XCode from the AppStore (for iOS)
  3. Install the required tools for running the mobile app locally

Running locally

  1. Install dependencies
yarn
  1. Start the background worker service (NodeJS app)
(cd services/background-worker && yarn run dev)
Let it fetch and store some data before starting the API
  1. Start the backend service (GraphQL API)
(cd services/api && yarn run dev)
  1. Start the React Native process and iOS and/or Android simulator in separate terminals as instructed here

Running from Docker Compose

  1. Build containers and spin them up
env BUILD_VERSION=$(git rev-parse --short HEAD) docker-compose up --build
  1. Ramp down
docker-compose down --remove-orphans

Contents of this repository

Known issues

MacOS M1

Android simulator

  • The API_URL configured in clients/mobile-app/RNTDemoApp/.env needs to point to your local IP address like 192.168.x.x when testing through Docker Compose, with localhost the app fails to connect to the GraphQL endpoint

CI/CD

There's a single Github Action that both builds the Docker images (through Docker Compose) and then deploys the services to Azure Container Apps Environment. The docker-compose.build.yml is reserved for the CI process.

alt text alt text