Skip to content

CI is broken #62

@exarkun

Description

@exarkun

It fails on the libsodium install step:

#!/bin/bash -eo pipefail
apt-add-repository -y ppa:ondrej/php

/bin/bash: apt-add-repository: command not found

Exited with code exit status 127

CircleCI received exit code 127

I notice a number of things about the build system that might be improved:

  • The project uses stack. Cabal is probably fine at this point. There was a rough patch but that seems to be over.
  • The project doesn't use Nix. Nix is the best way to get reproducible builds.
  • There is no Windows or macOS CI. CircleCI can offer both of these.

These might not all be in scope for this single issue (especially the last) but switching to Nix and cabal probably makes as much sense as anything else for fixing the current CI configuration. We have lots of examples of such setups we can borrow from, too.

Some aspects of https://github.com/privatestorageio/paymentserver are pretty good - uses Nix and cabal and uses cachix for caching.
https://github.com/privatestorageio/zkapauthorizer has a Nix flake that shows off how flakes can make CI configuration easier (and more CI provider independent).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions