zsajjad / semaphore-demo-react-native

A Semaphore demo CI pipeline for a React Native project targeting iOS and Android.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CI status

Semaphore demo CI/CD pipeline using React Native

Example application and CI/CD pipeline showing how to run a React Native project on Semaphore 2.0. Uses React Native CLI Quickstart.

CI/CD on Semaphore

  1. Fork this repository and use it to create a project.

The CI pipeline will look like this:

CI pipeline on Semaphore

To run just iOS CI, change pipeline file to run ios.yml:

The CI pipeline will look like this (iOS):

CI iOS pipeline on Semaphore

To run just Android CI, change pipeline file to run android.yml:

The CI pipeline will look like this (Android):

CI adnroid pipeline on Semaphore

The example pipeline contains 4 blocks:

Local project setup

Installation

$ npm install

Running the app

$ npm start

Lint

$ npm run lint

Unit and integration tests

$ npm test

e2e UI tests iOS

$ npm run detox-ios-build
$ npm run detox-ios-test

e2e UI tests android

$ npm run detox-android-build
$ npm run detox-android-test

Troubleshooting

If while runing your end to end tests on iOS you get this error #error Unsupported architecture make sure that the detox configuration uses the ONLY_ACTIVE_ARCH=YES flag as shown in the package.json file.

License

Copyright (c) 2019 Rendered Text

Distributed under the MIT License. See the file LICENSE.md.

About

A Semaphore demo CI pipeline for a React Native project targeting iOS and Android.


Languages

Language:TypeScript 65.4%Language:Java 11.5%Language:JavaScript 9.8%Language:Objective-C 7.6%Language:Ruby 4.1%Language:Starlark 1.0%Language:C 0.3%Language:Swift 0.3%