Hi again. In the last part, we have set up our RN project, iOS certs, and profiles and the fastlane deployment. Now we can use all of this in the Bitrise panel!
Log in to your account and proceed with app creation:
Click Add New App and choose Add New App on web UI, then just proceed with app creation:
You might find help in this video.
Okay, you have an app. Now we can go to the workflow. You can delete all steps there except Activate SSH key (RSA private key) and Git Clone Repository 🙂 . Let’s add 3 steps:
Run yarn command (in which you execute yarn install)
Certificate and profile installer (to install our certs and profiles, we will upload them later)
fastlane(to run our deploy lane which we have prepared in part I)
Our workflow should look like:
Great, we have everything prepared. Now we can provide all the necessary data to make this actually works!
Firstly, we need to upload our certs and profiles. Go to Code Signing tab and upload our files which we have generated in part I.
After that go to Secrets tab. Rememeber when we have genereted all necessary data in part I to handle connection? Now we will need it:
As you can see. Three variables:
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD, FASTLANE_SESSION and FASTLANE_PASSWORD are used to make proper authorization with Apple. Thanks to that we will be able to upload the build into Testflight.
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD — value generated under your apple account
FASTLANE_SESSION — session generated with
fastlane spaceauth -u
FASTLANE_PASSWORD — password to your apple account
If you encounter some auth issues then regenerate the session with Apple and replace value under FASTLANE_SESSION.
Okay! In this moment we have everything configured we can run a build and after some time:
It works! 🎉
Of course we can have different issues related to bitrise. Bitrise is not free. To use it we need to subscribe to particular plan. I guess there is a free plan but it allows only for 30 minutes` pipelines. You might notice that this simple app has been building for 31 minutes and without paid plan my pipeline would have been aborted!
Great, now you have simple CD configured with Bitrise and Fastlane. I will extend this tutorial with next configs like react-native-config and Android deployment.
When I have started development in React I thought: “Wow, what’s nice technology, everything is quite simple and easy to implement”. After 2 years of development with React, I have decided to start development with React Native. I considered it a great idea and it was! The same thoughts came to my mind about the simplicity and coolness of this solution: “One codebase for 2 platforms, this is awesome. I can’t wait how much time I will save for project implementations”.read more
In React Native, everything is native, so forget about full cross-platform compatibility. The platforms are different, so the components are different. They have different logic and mechanics of interaction. You can write everything in JS and throw out the concept of native, but you don’t want that. Native is your advantage!read more