-
Notifications
You must be signed in to change notification settings - Fork 4
56 lines (56 loc) · 1.85 KB
/
build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: build
on:
push:
paths-ignore:
- 'README.org'
- '.guix-authorizations'
- '.guix-channel'
pull_request:
schedule:
# weekly builds, making sure everything still works with guix-proper
- cron: '39 3 * * 0'
jobs:
build:
name: Build package
runs-on: ubuntu-latest
strategy:
# building independent packages, don’t abort entire build if one fails
fail-fast: false
matrix:
package:
- rust-bin
steps:
- name: Guix cache
uses: actions/cache@v2
with:
path: ~/.cache/guix
# use a key that (almost) never matches
key: guix-cache-${{ github.sha }}
restore-keys: |
guix-cache-
- name: Install Guix
uses: PromyLOPh/guix-install-action@v1
with:
pullAfterInstall: false
channels: |-
(list (channel
(name 'guix)
(url "https://github.com/declantsien/guix")
(branch "master")
(commit
"da9f509b0300f1b6b979c68a52d8669f9bcb89a7")
(introduction
(make-channel-introduction
"9edb3f66fd807b096b48283debdcddccfea34bad"
(openpgp-fingerprint
"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))))
- name: Checkout
uses: actions/checkout@v2
- name: Lint package
run: |
export GUILE_LOAD_PATH="$(pwd):$HOME/.config/guix/current/share/guile/site/3.0"
guix lint -L . ${{ matrix.package }} |& sed -nre 's#(.*):([0-9]+):([0-9]+): (.*)$#::warning file=\1,line=\2,col=\3::\4#gp'
- name: Build package
run: |
export GUILE_LOAD_PATH="$(pwd):$HOME/.config/guix/current/share/guile/site/3.0"
guix build -L . ${{ matrix.package }}