React Native EU 2019: Nick de Jesus - Continuous Integration With Microsoft App Center

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello everyone thank you for the invitation call stack this is my very first talk like ever I haven't even done local talk so it's kind of crazy that I'm here thank you so I just want to share this nice picture of myself I have been using react native for about two - in two or three years and yeah I've been working on this project this personal project of mine so has to give you some context I hate saying this but I'm actually like a professional eSports player I play a fighting game called Tekken and I wanted to make an app that would help people learn how to play that game at a professional level so would give them the competitive advantage over their over their opponents I have over 20,000 users and that's just from beta testing for like almost a year which was way too long so I had to tell you that because the app is called t7 chicken so you're gonna see like chickens and stuff I wanted I don't watch all be to be confused I'm gonna give some context there so let's start off with a brief list of things that suck in no particular order drinking orange juice after brushing your teeth I don't know if anyone's accidentally done that before but it's really awful the way Game of Thrones ended that was really bad I don't have to say much there and then last but not least deploying react native apps manually if you're smarter than me you probably have never gone through this I don't make the best decisions all the time and this is why I'm doing this talk just in case you suffer from the same thing - so I also have a list of things that suck about deploying things manually unfortunately this is a lightning talk I don't really have time to go over it but for anyone wants to catch up with me later grab some drinks and go over this list with me I'd be very grateful so one solution that you can use is Fastlane fascinating some really good stuff it helps automate tedious processes and handle code signing you can use it to actually go from beta to full release and it's flexible it works with any CI tool out there however I am still too lazy for fast and so enter App Center and just just to be clear fascinating some really good stuff just because you use App Center it doesn't mean you shouldn't use Fastlane in fact App Center uses fascinating under the hood so that's something to keep in mind so what does App Center do so that is so I think the main thing is continuous integration they allow you to do a lot of testing on on like hundreds of different devices virtually comes with analytics you can do push notifications and live updates code push was actually some really cool stuff I'll talk about later all under like one roof so the first thing I want to show you is from the on the left side menu there's a distribute drop-down so this is a really different way of sort of testing apps sometimes committing to the whole official processes through Google Play or or test flight it's it's a little it's a little much sometimes sometimes you should want to do a quick and dirty test of whatever you're working on send it to some people so App Center has this own little system for that you can create groups where you upload an IPA or apk file throw in some notes tell the users what you want them to test and then they can actually start downloading the app and you can see look like any crash analytics and stuff like that I thought it was cool to show this just because I've used this myself just to test apps by myself before I even send it to other people of course when you work on your react native project for a while and things start getting a little serious you can start deploying to the more official processes so as you can see here I've got all these groups in test flight my designer his name is Ray he's like the only person in that group I've got beta testers group app store connect users and then there's the production released at the very top which actually went to do the full production release this week I'm still going through that process where you get denied by Apple every other day so from here you can see like a history of the releases you've done there's a button in the top right says publish to test flight which more or less has the interface that I showed earlier we could upload an IPA or apk or whatever and then there's also code push which yes which is actually really cool code push is some cloud service that allows you to make updates to the JavaScript parts of your react native projects really convenient sometimes there might be a bug or the app is crashing just because of something on the client-side and you can actually release like a quick fix for your users in the meantime while you get something a little more thorough passed into your next version you can see you can you can control a lot you can make the updates mandatory you can enable or disable them at any time and you can see how many active devices you've got going and so basically here's the meat and potatoes of the deployment aspect of App Center you can integrate it with your your github repo it's really easy config thing going once that's up and running then you have access to a whole configure menu for your branches and so that's what this is so you can you have tons of options you can use some build scripts before the actual build itself you can tell it you can tell it when to build the build frequency between build this branch on every push which is really fun at first until it's not you can choose to manually choose yeah manually choose when those builds run you have an option of getting your apps pushed out as Android app bundles versus apks auto auto increment version is like my favorite because I always forget to do that you can use a build format timestamp you can run unit tests please don't judge me for having that checked off right now I do have some tests in my app and you can also lint the source code as far as signing the experience is pretty similar between both iOS and Android I've actually I'm only showing screenshots of the Android side you upload your your piece tour file throwing the password and basically set it and forget it that way you don't have to do like weird things like email your girlfriend your key store files and say they don't delete this ever and stuff like that so oh and then also the testing on the real device I think they start off with like a 30 day a 30 day free trial you know Android there's so many different devices operating systems like Samsung and just so much so much to test there and so you can actually well if you check that off it they actually will virtually spin up your apps for you and give you lots of data on like each iteration as well as iPhone it's just not as intense as distributing builds you can see on the left there's groups and that's the App Center groups that I was talking about where you get once you deploy to there you get back a URL that you can share with people that you're inviting to test your app then there's the official processes which is from store if I were to click that drop-down you would see on Android for Android there would be alpha beta production and for iOS there would be the any tests like groups I've created as well as production and then you can get build status but badges there and so may I put no effort into this slide but basically that's that it for the most part appcenter seems to be a continuously improving thing like they actually like maybe four or five months ago they didn't even have analytics part of it so it's exciting it's very easy straight to the point exciting to see where it goes but before I wrap this up I just wanted to share a little bit about the organization that I work for I work for a non-profit in Boston called resilient coders our number one goal is to close the opportunity gap between underrepresented people of color and the tech industry this is actually a picture of the last cohort it's a 14 week boot camp we pay them to learn how to code and their full stack engineers at the end one of my favorite projects somebody made an augmented reality tattoo web app where you just show like your arm in front of the camera and then you end up getting you could see what a tattoo would look like that's uploaded from like a tattoo artist or something and she had no idea how to code 14 weeks before creating that so I would appreciate it a lot if you followed resilient coders on Twitter and all yeah you could also like follow me too and yeah that's pretty much it for me thank you for having me you all been great [Applause]
Info
Channel: Callstack Engineers
Views: 2,222
Rating: 5 out of 5
Keywords:
Id: zLY2a5enUhE
Channel Id: undefined
Length: 10min 33sec (633 seconds)
Published: Tue Oct 08 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.