fly-apps / fly-apps/nix-base

Add an expression for building and caching important packages in CI

Open
#7 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Nix
Stars
22
Forks
5
PR merge metrics
No merged PRs in 30d

Description

We want to `nix-build` important packages against every push to this repo, to ensure that:

* Things build correctly
* Newly built packages get cached for Linux and macos

We'll need to define which packages these are. Probably at least we'll want all the Ruby versions we want to support (all 2.x and 3.x), and the gemset.nix that's generated by the Rails Nix project. We could run a separate CI on that project, or do it all here. I feel like doing it here is better for now.

Another thing we can do is cache common gems to speed up initial deployments a bit. This would require some clever work to get things built, but that would only need to happen once per gem-version+platform.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the repository's existing CI configuration and the use of nix-build. Define the important packages, including supported Ruby 2.x and 3.x versions and the Rails Nix gemset.nix, then decide whether gemset builds belong here or in the Rails Nix project. Done means builds run on every push and newly built packages are cached for Linux and macOS.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, ci-cd, devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.