Flutter CI/CD with Codemagic

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 ก.ย. 2024
  • Flutter CI/CD with Codemagic
    I've been trying to learn and set up CI/CD for the Book Club App for quite some time now! Finally after a lot of headaches and a lot of trouble I finally got it working! This was the most stressful video I have made, it took me over 24 hours to finish the recording, but I finally got it. I decided to throw in a little bit of comedy into this video, let me know what you think!
    Deploy Play Store: • Deploying Flutter App ...
    Deploy App Store: • Deploying Flutter App ...
    Encode Decode Article: blog.codemagic...
    Another issue I had: stackoverflow....
    Join Me on Discord: / discord
    Make sure to Like and Share!
    And pls subscribe: shorturl.at/dsIO9
    Thanks For Watching!
    This is the best mouse I've ever used!
    MX Master 3: amzn.to/3gor9so
    For my mac users, a cheap hub that I've been using with no complaints
    Hiearcool USB-C Hub: amzn.to/3gor9so
    Also my favorite book ever, just so more people can read it :)
    Brave New World by Aldous Huxley: amzn.to/3c7o91c

ความคิดเห็น • 64

  • @tadaspetra
    @tadaspetra  4 ปีที่แล้ว +6

    My favorite part comes at 7:23 😂
    Also if you need to deploy an app first make sure to check these:
    Deploy Play Store: th-cam.com/video/NFTaWkUtD34/w-d-xo.html
    Deploy App Store: th-cam.com/video/NT-W5sAarco/w-d-xo.html

  • @StarEducation-bh5rs
    @StarEducation-bh5rs 11 หลายเดือนก่อน +1

    As a junior developer, seeing developers who have more experience having some hard times in their development gives me motivation to keep going .

    • @tadaspetra
      @tadaspetra  11 หลายเดือนก่อน +2

      Oh trust me. The struggle never goes away, but you do get faster at solving easy problems, but then sometimes get hit with a hard problem that takes a while. But the most important thing to remember is that given enough time you can solve any problem

  • @lbarq
    @lbarq 4 ปีที่แล้ว +3

    I published my first flutter android app at google play store based in your videos. Thank you a lot.

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      Luis Barqueira wow that’s awesome! What’s the app? I don’t have an android but I want to at least see the listing 😊

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +1

      Luis Barqueira that’s awesome! Great article too! Hopefully it’s the first of many apps published 😊

    • @MrArrex
      @MrArrex 3 ปีที่แล้ว +1

      @@lbarq nice article ,btw you spelled achievement wrong on the playstore. I hope to publish my first app too

    • @lbarq
      @lbarq 3 ปีที่แล้ว

      @@MrArrex Thanks for alerting me. I`m glad you liked it.

  • @singhsaubhik
    @singhsaubhik 3 ปีที่แล้ว +6

    Put on dark theme, because we are developers; hilarious 😂😂

    • @tadaspetra
      @tadaspetra  3 ปีที่แล้ว +1

      haha you gotta use dark theme always :)

    • @singhsaubhik
      @singhsaubhik 3 ปีที่แล้ว

      @@tadaspetra I do, I actually create my most of the flutter apps focused on dark theme :D

  • @blank-vw2sb
    @blank-vw2sb 4 ปีที่แล้ว +2

    Nice video!
    Code Magic is COOL
    I should incorporate for the benefit, in the long run, Sensei!

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +1

      Dummy Dummy definitely! You only need to set it up once and you’re golden!

  • @adamumuktar7970
    @adamumuktar7970 3 ปีที่แล้ว

    I like your videos, as they're straight forward, keep doing the good work to the community bro.

    • @tadaspetra
      @tadaspetra  3 ปีที่แล้ว +1

      Thank you so much 😊

  • @createdbykoko
    @createdbykoko 4 ปีที่แล้ว +1

    Great job!

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      Mitch Koko thanks man!

  • @wesleybarnes5376
    @wesleybarnes5376 3 ปีที่แล้ว

    Loved this video just for the humour 😂😂😂 Cant we all relate? We cant all play games all day right 🤠😂

  • @alvin3171997
    @alvin3171997 4 ปีที่แล้ว +6

    Love your videos!
    1 question:
    Do you have any guidelines on how to write proper error handling for functions?
    Because right now everyone in the team just write try-catch for every single functions in both viewmodels and services.
    Is this good practice?
    Would love to hear your input.

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +5

      So my personal opinion is that every Future should be wrapped in a try catch, and I think that is the best way to do it. As far as everything that is a bit overkill. And I think you just have to stay conscious of what part of the app you are in. But you should probably check where you have the necessary data to display before entering a view.
      This is a really good question. I think I need to do a little research to give you a more educated answer! But for myself I mostly check the futures and then I would just have unit/widget tests to cover the viewmodels

    • @adamumuktar7970
      @adamumuktar7970 3 ปีที่แล้ว

      Hi buddy, try-catch is a good approach for error handling, even though, for functions that returns future, it's recommended to use:
      myFunc().then(v)=>doSomthingWith(v)).catchError(e).
      Check this on Dart Docs:
      dart.dev/guides/libraries/futures-error-handling

  • @thiyraashdavid7784
    @thiyraashdavid7784 3 ปีที่แล้ว

    Great explanation ! Very usefull! Keep rocking!

  • @blank-vw2sb
    @blank-vw2sb 4 ปีที่แล้ว +8

    0:36. You are a programmer. you don't use light theme.
    😂😂😂

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +1

      Dummy Dummy haha if I see someone coding in light theme it makes me cringe

    • @blank-vw2sb
      @blank-vw2sb 4 ปีที่แล้ว +1

      @@tadaspetra
      💯
      I'm da bot, sensei!

    • @maiahenriquevitor
      @maiahenriquevitor 3 ปีที่แล้ว

      @@tadaspetra So funny!! hahaha

  • @AnaximandroAndrade
    @AnaximandroAndrade 4 ปีที่แล้ว +1

    Very nice, thanks!

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      Anaximandro Andrade thanks for watching

  • @mgkaungenglish453
    @mgkaungenglish453 4 ปีที่แล้ว +1

    Great Job sir

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +1

      Mg Kaung thank you

  • @mitzukodavis7393
    @mitzukodavis7393 4 ปีที่แล้ว +2

    Dark theme

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +2

      Mitzuko Davis you're not a real developer if you don't use dark theme 😂

  • @enco8e
    @enco8e ปีที่แล้ว

    First thing: use dark theme -> instant like

  • @afolayanademola461
    @afolayanademola461 2 ปีที่แล้ว

    Thanks so much lol

  • @nicolasdupere
    @nicolasdupere 3 ปีที่แล้ว

    Amen

  • @stefaandeconinck1531
    @stefaandeconinck1531 4 ปีที่แล้ว +1

    Thx

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      Hope it helps!! 😊

  • @mobiledevelopment8897
    @mobiledevelopment8897 2 ปีที่แล้ว

    When we make a code base for iOS(Swift or Objective C), will flutter generate the swift code for iOS or Objective C code or both? Can we specify whether like to have Swift code? If not, what kind of code will be generated for iOS and Android, please? Any help is appreciated.

  • @PrinceGoyal-ii2hj
    @PrinceGoyal-ii2hj ปีที่แล้ว

    is this safe to provide app manager role key to codemagic?

  • @nuniezjorge
    @nuniezjorge 4 ปีที่แล้ว +2

    so, i could test an ios app on a real device without ever using a mac?

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +2

      Yes! And codemagic also allows for you to use a remote Mac for debugging!

    • @nuniezjorge
      @nuniezjorge 4 ปีที่แล้ว +1

      @@tadaspetra so, you need a mac at some point during the development/testing, or using a mac is optional?

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      nuniezjorge if you use codemagic you should need it! They have remote machines you can use to log in and check why your build failed 😊

  • @pembatamang8233
    @pembatamang8233 3 ปีที่แล้ว

    can I setup firebase fcm through codemagic ? or do I need a mac to run xcode at some point or any reason?

  • @wesleybarnes5376
    @wesleybarnes5376 2 ปีที่แล้ว

    Hey Tadas, how has your experience been with Code Magic? I have done a lot of setup work, managing 4 apps on it now and when it works its amazing, but finding it hard to maintain and fix any errors, it's so hard o troubleshoot. Are there any alternatives?

    • @tadaspetra
      @tadaspetra  2 ปีที่แล้ว

      I think that’s just a pain with CICD in general, you have to wait until it goes through the process before you find something out. If you are talking about errors in the code like linting or building I have some GitHub actions that run to check all those things before it goes to Codemagic. But for deployment errors I think it’s something you’ll have to deal with everywhere

  • @pequenojohnny1422
    @pequenojohnny1422 3 ปีที่แล้ว

    I don't have a Mac. I published my first Google Play app manually (following your great tutorial, by the way!) and want to publish it to App Store as well. Can I use this? You mentioned you need to have a published app but how can I do so without a mac?

    • @tadaspetra
      @tadaspetra  3 ปีที่แล้ว +1

      If I remember correctly, I think you don’t need to have “published” an app. You just need to have an app created in the console. I would double check on that though

    • @pequenojohnny1422
      @pequenojohnny1422 3 ปีที่แล้ว

      @@tadaspetra Awesome, thanks a lot man and again great job on the fantastic tutorials!

  • @gajegaje5450
    @gajegaje5450 4 ปีที่แล้ว +1

    Great video! Can anyone help me, why there's no setting icon on my codemagic? Thanks

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +1

      That's really weird. But you can reach out to their customer service

    • @gajegaje5450
      @gajegaje5450 4 ปีที่แล้ว +1

      @@tadaspetra thanks!

  • @andrefelipechannel
    @andrefelipechannel 3 ปีที่แล้ว

    How works with flavors in codemagic?

  • @sneezygibz6403
    @sneezygibz6403 3 ปีที่แล้ว

    I've made a flutter application but for android and have never used codemagic. I now need codemagic since one of my college courses requires an ios app. If I build my ios using code magic can I view it on an emulator or how does that work?

    • @tadaspetra
      @tadaspetra  3 ปีที่แล้ว

      If you have an iOS emulator available then it should be able to run the app. You can put it into test flight and then try it out from there

  • @ShubhankTyagi
    @ShubhankTyagi 3 ปีที่แล้ว

    Hi! Thanks for your content!
    One question is for iOS, how do the build number and version gets updated?

    • @tadaspetra
      @tadaspetra  3 ปีที่แล้ว +2

      You can update it in the pubspec.yaml file. But check the code magic documentation, there is a way to automate all that

    • @ShubhankTyagi
      @ShubhankTyagi 3 ปีที่แล้ว

      @@tadaspetra thanks! 🍾✌🏻Will look into it.

  • @michaelamir6504
    @michaelamir6504 4 ปีที่แล้ว +1

    If this takes such a long time, then why would I use it?! Doing things manually would be faster.

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว +3

      Michael Amir because. Now it is set up and i can send out updates to both app stores with a simple push to master! You only have to get it running once and then you’re done! (Also it was my first time doing CICD. I’m sure others have an easier time)

  • @brunoniconeves
    @brunoniconeves 2 ปีที่แล้ว

    Copy the plist file from where? Kkk

  • @Omarahmed-fs8jv
    @Omarahmed-fs8jv 4 ปีที่แล้ว +1

    runner.app is very large you know why?

    • @tadaspetra
      @tadaspetra  4 ปีที่แล้ว

      Not sure, but you can take a look at this flutter.dev/docs/perf/app-size