How To Setup Github Actions For CI/CD

Поділитися
Вставка
  • Опубліковано 23 лип 2024
  • Automating your CI/CD workflow just got easier with GitHub Actions. In this video, you'll learn how to set them up and find out how Pulumi's technology can help make the process faster and more efficient.
    ⚬ GitHub: github.com/ArjanCodes/2022-cicd
    ⚬ Pulumi: www.pulumi.com/?...
    ⚬ Pulumi template I used: www.pulumi.com/templates/serv...
    🎓 Courses:
    The Software Designer Mindset: www.arjancodes.com/mindset
    The Software Designer Mindset Team Packages: www.arjancodes.com/sas
    The Software Architect Mindset: Pre-register now! www.arjancodes.com/architect
    Next Level Python: Become a Python Expert: www.arjancodes.com/next-level...
    The 30-Day Design Challenge: www.arjancodes.com/30ddc
    🛒 GEAR & RECOMMENDED BOOKS: kit.co/arjancodes.
    👍 If you enjoyed this content, give this video a like. If you want to watch more of my upcoming videos, consider subscribing to my channel!
    💬 Discord: discord.arjan.codes
    🐦Twitter: / arjancodes
    🌍LinkedIn: / arjancodes
    🕵Facebook: / arjancodes
    📱Instagram: / arjancodes
    👀 Code reviewers:
    - Yoriz
    - Ryan Laursen
    - James Dooley
    - Dale Hagglund
    🎥 Video edited by Mark Bacskai: / bacskaimark
    🔖 Chapters:
    0:00 Intro
    1:07 Pulumi’s technology
    2:17 Example explanation
    4:51 What is CI/CD?
    7:47 CI/CD pipeline
    8:12 GitHub Actions
    8:40 Test setup
    11:39 Continuous deployment workflow file
    12:44 GitHub Secrets
    14:00 Pulumi workflow file
    14:52 Pulumi templates
    19:54 Final thoughts
    #arjancodes #softwaredesign #python
    DISCLAIMER - The links in this description might be affiliate links. If you purchase a product or service through one of those links, I may receive a small commission. There is no additional charge to you. Thanks for supporting my channel so I can continue to provide you with free content each week!

КОМЕНТАРІ • 15

  • @NostraDavid2
    @NostraDavid2 Рік тому +4

    I did my thesis on CI/CD. The two books (Continuous Integration by Paul Duvall, and Continuous Delivery by Jez Humble) were a great help to deeply understand what's what. The CI book is somewhat outdated and is only interesting for historical purposes. The CD book still holds up (though we have Jenkins instead of Hudson, nowadays).
    It won't teach you any specific tool, unless you get cracking and actually try to install one, but the deeper understanding helped.

  • @fs_72
    @fs_72 Рік тому

    Great Video as always, thank you Arjan!

    • @ArjanCodes
      @ArjanCodes  Рік тому +1

      Thank you, glad you liked the video!

  • @Pharaoization
    @Pharaoization Рік тому

    Nice, I've literslly just done that!

  • @mehdicherifi6289
    @mehdicherifi6289 Рік тому +2

    Thank you. Please 🙏 can you make in the future a video about local runner for windows? Thank you

  • @user-xq2jv5sk5l
    @user-xq2jv5sk5l Рік тому

    Gooood

  • @michajas
    @michajas Рік тому

    Hey! How do you tackle long term statistics for github actions workflows? I'd like to see how my workflows perform over time...

  • @sasidharjanaki5852
    @sasidharjanaki5852 Рік тому

    Nice

    • @ArjanCodes
      @ArjanCodes  Рік тому +1

      Thank you, glad you liked it!

  • @AnthonySherritt
    @AnthonySherritt Рік тому +8

    Thanks!

  • @jaimeaznar1181
    @jaimeaznar1181 Рік тому

    How can you make it so that the python and requirements installation only run when there are changes to it and not everytime you want to test? …would you create a workflow with just the testing part?

    • @marcotroster8247
      @marcotroster8247 Рік тому +3

      It's actually crucial to reinstall everything on each workflow run because the pipeline will give you the confidence that the installation procedure still works. You don't want to end up with a cached pipeline that stopped working several months ago without you noticing. And now that your build server went down, you have to run the procedure on another server where the procedure doesn't work which means you're out of business, cannot ship any hot-fixes for severe bugs or security holes, etc.
      You want to automate every step from launching a fresh build machine, installing the compiler, downloading the source code, compiling / linting / testing up to finally dropping a releasable product. CI/CD is about keeping the whole procedure up-to-date such that you don't depend on specific machines or hardware.
      And a practical tip: You don't need to care about the hardware too much. GitHub workflows grants several thousand free hours of compute per month to every publicly available repository. You'll hardly ever exceed that limit with any small to mid size project. So, it's not your hardware that will suffer from reinstalling stuff all the time.

  • @PhilipDenys
    @PhilipDenys Рік тому +1

    warning intro starts with a dad joke

  • @hasithkashyapa7645
    @hasithkashyapa7645 Рік тому +2

    Too long sometimes too boring