• ImplyingImplications@lemmy.ca
    link
    fedilink
    arrow-up
    219
    arrow-down
    1
    ·
    6 months ago

    See your problem is you’re editing the code until it passes the tests. It’s way easier if you edit the tests until it passes the code.

  • Pxtl@lemmy.ca
    link
    fedilink
    English
    arrow-up
    38
    arrow-down
    2
    ·
    edit-2
    6 months ago

    DevOps is bad because for some reason we’ve decided to invent new programming languages that you can’t debug locally and so you have to keep pushing commits to the pipeline server. It’s bullshit.

    “Why do you write all your pipelines as shell scripts and then wrap them in yaml at the very end”?

    Because then I can run them locally quickly and test individual components of them instead of “edit, commit, push, wait 10 minutes, read error message, repeat”.

    • biribiri11@lemmy.ml
      link
      fedilink
      arrow-up
      13
      ·
      6 months ago

      FWIW, gitlab-runner exec and earthly exist for running tests locally, with others things like nektos/act for GHA as a 3rd party solution. I’ll never get used to yaml, though, all my pipelines are mostly shell scripts. Using a markup language as a programming language was definitely one of the decisions of all time.

      • kugiyasan@lemmy.one
        link
        fedilink
        arrow-up
        2
        ·
        6 months ago

        Gitlab-runner exec and act are great tools, but this goes out of the window as soon as the cloud hosting service is a little less intelligent (looking at you, azure DevOps, who removed the hack that let pipeline run locally in 2019)

        • biribiri11@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          6 months ago

          That’s why earthly exists. Now you can run your pipeline on a container with a “familiar syntax” inside another container with a “familiar syntax” inside of a “reproducible, easy-to-use” VM provisioned on top of probably KVM, as Torvalds intended

    • kometes@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 months ago

      My build environment has 3 jillion unneeded builds going. I am lucky to get 2 build failures in a single day.

  • beeng@discuss.tchncs.de
    link
    fedilink
    arrow-up
    27
    ·
    6 months ago

    Local tests are less shameful. Imagine if you had a Red X online for every compiler or syntax error whilst developing.

    So it is.

  • mumblerfish@lemmy.world
    link
    fedilink
    arrow-up
    5
    ·
    6 months ago

    Come on! You need those red crosses to know it fails as it should. Thats what I would say they are there for :-)