Page MenuHomePhabricator

[CI] Add CI configuration for the GUIX builds
ClosedPublic

Authored by Fabien on Mar 11 2024, 15:27.

Details

Reviewers
PiRK
Group Reviewers
Restricted Project
Commits
rABCb5497111c120: [CI] Add CI configuration for the GUIX builds
Summary

This will make it possible to run the builds from the CI.

Test Plan
./contrib/teamcity/build-configurations.py guix-linux
./contrib/teamcity/build-configurations.py guix-osx
./contrib/teamcity/build-configurations.py guix-win

Diff Detail

Repository
rABC Bitcoin ABC
Branch
guix_ci
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 27793
Build 55145: Build Diff
Build 55144: arc lint + arc unit

Event Timeline

Fabien requested review of this revision.Mar 11 2024, 15:27

I tried reviewing one of these guix diffs but got an error about not having the required deps (and running the script wiped my build/ dir and also all node_modules.

What do I need to install to run these commands?

This revision is now accepted and ready to land.Mar 12 2024, 08:32

I tried reviewing one of these guix diffs but got an error about not having the required deps (and running the script wiped my build/ dir and also all node_modules.

What do I need to install to run these commands?

You basically need to follow the missing dependencies. They are not documented because they are for CI only, this is not a script for the end user.

I tried reviewing one of these guix diffs but got an error about not having the required deps (and running the script wiped my build/ dir and also all node_modules.

The guix-clean script is meant to delete most changes in the repository to start from a state that is as close as possible to the fresh clone. This improves the chances that the builds are reproducible, not polluted by local files.
In most cases you can skip the guix-clean step, unless you want to specifically test build reproducibility. But then you'll have to manually delete a few build dirs created by the guix-build script afterwards.

What do I need to install to run these commands?

The dependencies should be mostly documentsed in contrib/guix/INSTALL.md and contrib/guix/README.md.