Skip to content

nix-ocaml/nix-s3-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace
This branch is 16 commits ahead of, 128 commits behind cachix/cachix-action:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d124825 · Jul 22, 2023
Jul 22, 2023
Jul 22, 2023
Jul 22, 2023
Apr 10, 2020
Oct 2, 2019
Jun 27, 2023
Jan 10, 2023
Sep 30, 2019
Jul 22, 2023
Apr 16, 2020
Feb 27, 2020
Sep 21, 2020
Sep 30, 2019
Jul 22, 2023

Repository files navigation

cachix-action

github actions badge

One nice benefit of Nix is that CI can build and cache developer environments for every project on every branch using binary caches.

Another important aspect of CI is the feedback loop of how many minutes does the build take to finish.

With a simple configuration using Cachix, you’ll never have to build any derivation twice and share them with all your developers.

After each job, just built derivations are pushed to your binary cache.

Before each job, derivations to be built are first substituted (if they exist) from your binary cache.

Getting started

Follow Continuous Integration with GitHub Actions tutorial.

See action.yml for all options.

Security

Cachix auth token and signing key need special care as they give read and write access to your caches.

As per GitHub Actions' security model:

Anyone with write access to a repository can create, read, and use secrets.

Which means all developers with write/push access can read your secrets and write to your cache.

Pull requests do not have access to secrets so read access to a public binary cache will work, but pushing will be disabled since there is no signing key.

Note that malicious code submitted via a pull request can, once merged into master, reveal the tokens.

Hacking

Install the dependencies

$ yarn install

Build the typescript

$ yarn build

Run the tests ✔️

$ yarn test

About

Build software only once and put it in a global cache

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 78.3%
  • Nix 16.5%
  • JavaScript 5.2%