unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* guix on travis-ci
@ 2018-11-19  9:01 Efraim Flashner
  2018-11-20  9:45 ` Efraim Flashner
  0 siblings, 1 reply; 4+ messages in thread
From: Efraim Flashner @ 2018-11-19  9:01 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1627 bytes --]

I have a working Travis-CI file that I've been working on occasionally
and I wanted to share it. As-is it works, albeit subject to the normal
limitations of Travis, ie: the builds can't take too long, and
apparently you're limited to ~10000 lines of log.

I also have one for Gitlab's CI integration, but I haven't figured out
how to get the daemon and build users working nicely yet.

As far as a TODO going forward, I'd like to be able to integrate this in
with a regular .travis.yml file, where it's not Guix or nothing, and I'd
like to kick-off multiple builds for different packages in one repo
(GUIX_PACKAGE_PATH).

Also, if anyone wants to help make this script worse by figuring out how
to add the echo line to a 'curl | sudo bash' line I'd be interested ;P.


language: cpp
sudo: enabled

os: linux
sudo: required

addons:
  apt:
    packages:
     - gnupg

install:
    - wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
    - gpg --keyserver pgp.mit.edu --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
    - echo -e 'y\ny' | sudo bash guix-install.sh
    - guix pull --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org"

script:
    - guix build --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" -f guix.scm

notifications:
    email: false

git:
    depth: 1


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: guix on travis-ci
  2018-11-19  9:01 guix on travis-ci Efraim Flashner
@ 2018-11-20  9:45 ` Efraim Flashner
  2018-11-20 10:01   ` Julien Lepiller
  0 siblings, 1 reply; 4+ messages in thread
From: Efraim Flashner @ 2018-11-20  9:45 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 3736 bytes --]

On Mon, Nov 19, 2018 at 11:01:41AM +0200, Efraim Flashner wrote:
> I have a working Travis-CI file that I've been working on occasionally
> and I wanted to share it. As-is it works, albeit subject to the normal
> limitations of Travis, ie: the builds can't take too long, and
> apparently you're limited to ~10000 lines of log.
> 
> I also have one for Gitlab's CI integration, but I haven't figured out
> how to get the daemon and build users working nicely yet.
> 
> As far as a TODO going forward, I'd like to be able to integrate this in
> with a regular .travis.yml file, where it's not Guix or nothing, and I'd
> like to kick-off multiple builds for different packages in one repo
> (GUIX_PACKAGE_PATH).
> 
> Also, if anyone wants to help make this script worse by figuring out how
> to add the echo line to a 'curl | sudo bash' line I'd be interested ;P.
> 
> 
> language: cpp
> sudo: enabled
> 
> os: linux
> sudo: required
> 
> addons:
>   apt:
>     packages:
>      - gnupg
> 
> install:
>     - wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
>     - gpg --keyserver pgp.mit.edu --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
>     - echo -e 'y\ny' | sudo bash guix-install.sh
>     - guix pull --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org"
> 
> script:
>     - guix build --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" -f guix.scm
> 
> notifications:
>     email: false
> 
> git:
>     depth: 1
> 

Here's what I've ended up with for now:

language: cpp
sudo: enabled
os: linux

addons:
  apt:
    packages:
     - gnupg wget grep sed

env:
  - GUIX_SYSTEM=i686-linux
  - GUIX_SYSTEM=x86_64-linux

install:
    - wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
    - gpg --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
    - echo -e 'y\ny' | sudo bash guix-install.sh
    - guix pull --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org"

script:
    - guix build --no-grafts --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" -f guix.scm --system=$GUIX_SYSTEM

notifications:
    email: false

git:
    depth: 10

and for my GUIX_PACKAGE_PATH repository I have:

language: cpp
sudo: enabled
os: linux

addons:
  apt:
    packages:
     - gnupg wget grep sed

env:
  - FILE=dfsg/main/brendan_gregg.scm
  - FILE=dfsg/main/confclerk.scm
  - FILE=dfsg/main/cpuid2cpuflags.scm
  - FILE=dfsg/main/ecrire.scm
  - FILE=dfsg/main/equate.scm
  - FILE=dfsg/main/evisum.scm
  - FILE=dfsg/main/html2text.scm
  - FILE=dfsg/main/mcron.scm
  - FILE=dfsg/main/mpv.scm
  - FILE=dfsg/main/mupdf.scm
  - FILE=dfsg/main/nyancat.scm
  - FILE=dfsg/main/pinentry-efl.scm
  - FILE=dfsg/main/rtv.scm
  - FILE=dfsg/main/wgetpaste.scm
  - FILE=dfsg/main/xorriso.scm

install:
    - wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
    - gpg --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
    - echo -e 'y\ny' | sudo bash guix-install.sh
    - guix pull --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org"

script:
    - GUIX_PACKAGE_PATH=. guix build --no-grafts --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" $(grep define-public $FILE | cut -f2 -d' ')

notifications:
    email: false

git:
    depth: 10

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: guix on travis-ci
  2018-11-20  9:45 ` Efraim Flashner
@ 2018-11-20 10:01   ` Julien Lepiller
  2018-11-20 10:10     ` Efraim Flashner
  0 siblings, 1 reply; 4+ messages in thread
From: Julien Lepiller @ 2018-11-20 10:01 UTC (permalink / raw)
  To: guix-devel

Le 2018-11-20 10:45, Efraim Flashner a écrit :
> On Mon, Nov 19, 2018 at 11:01:41AM +0200, Efraim Flashner wrote:
>> I have a working Travis-CI file that I've been working on occasionally
>> and I wanted to share it. As-is it works, albeit subject to the normal
>> limitations of Travis, ie: the builds can't take too long, and
>> apparently you're limited to ~10000 lines of log.
>> 
>> I also have one for Gitlab's CI integration, but I haven't figured out
>> how to get the daemon and build users working nicely yet.
>> 

Can you share your gitlab CI file?

>> 
> 
> Here's what I've ended up with for now:
> 
> [...]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: guix on travis-ci
  2018-11-20 10:01   ` Julien Lepiller
@ 2018-11-20 10:10     ` Efraim Flashner
  0 siblings, 0 replies; 4+ messages in thread
From: Efraim Flashner @ 2018-11-20 10:10 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1666 bytes --]

On Tue, Nov 20, 2018 at 11:01:51AM +0100, Julien Lepiller wrote:
> Le 2018-11-20 10:45, Efraim Flashner a écrit :
> > On Mon, Nov 19, 2018 at 11:01:41AM +0200, Efraim Flashner wrote:
> > > I have a working Travis-CI file that I've been working on occasionally
> > > and I wanted to share it. As-is it works, albeit subject to the normal
> > > limitations of Travis, ie: the builds can't take too long, and
> > > apparently you're limited to ~10000 lines of log.
> > > 
> > > I also have one for Gitlab's CI integration, but I haven't figured out
> > > how to get the daemon and build users working nicely yet.
> > > 
> 
> Can you share your gitlab CI file?
> 

before_script:
    - wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
    - gpg --keyserver pgp.mit.edu --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
    - echo -e 'y\ny' | bash guix-install.sh
    - guix pull --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org"

guix_x86_64:
  script:
    - guix build --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" -f guix.scm

guix_x86:
  script:
    - guix build --fallback --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" --system=i686-linux -f guix.scm

IIRC it currently fails when trying to start the daemon. On irc jonsger
suggested using an opensuse docker image with guix pre-loaded.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-11-20 10:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-19  9:01 guix on travis-ci Efraim Flashner
2018-11-20  9:45 ` Efraim Flashner
2018-11-20 10:01   ` Julien Lepiller
2018-11-20 10:10     ` Efraim Flashner

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).