Skip to main content

I probably do something wrong. But the CI of software projects seem to fail every time I touch them after half a year. I always start with adjusting CI instead of getting things done.

And even using #Nix, sill CI breaks: while tests pass locally.

Very frustrating … CI doesn't seem too valuable for projects where you are the only developer.

your shell.nix does not pin a nixpkgs version but rather subscribes to a channel. The nixpkgs version you are using locally may be very different than that being used in the CI. 🙂 By not pinning nixpkgs to a specific version you are basically loosing all the nice reproducibility nix is promising you and given the update frequency of nixpkgs you may actually get very different versions within a few weeks.
This entry was edited (1 month ago)

I don't think this is related to nix but something else, e.g. project setup or resources available within CI.

I explicitly do not pin in order to have latest versions (auto updates). I'd otherwise go crazy with managing even more stuff. Need to investigate or disable those tests tomorrow.

Still thanks for your feedback.

I generally set up a canary job that isn't pinned for spotting impending breaks but keep regular test jobs pinned so that I can choose when to deal with those breaks.
@sheepforce what you want is impossible. Either your tests are reproducible and don't fail unexpected and you pin nixpkgs in some way or you get auto updates and they might break over time because packages are updated.

#Google is using #Nix for their #IDX generative AI coding workspace:

Nice to see how Nix is becoming more common and well known.

Don't see this is a recommendation of IDX or Google from my sight. I just wanted to share that Nix is becoming more common. I distance myself from Google.

docteurklein reshared this.