New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build release artifacts in CI #4637

Open
ezyang opened this Issue Jul 28, 2017 · 9 comments

Comments

Projects
None yet
4 participants
@ezyang
Copy link
Contributor

ezyang commented Jul 28, 2017

In #3755, it was mentioned that one barrier to more frequent releases was the difficulty of getting binaries for all platforms. I've started experimenting with having our CIs generate binaries for us. Here is one binary from AppVeyor (cut off the 2.0-staging branch):

@23Skidoo

This comment has been minimized.

Copy link
Member

23Skidoo commented Jul 28, 2017

Nice. Note that for Windows and Linux we normally produce both a 32-bit and a 64-bit version.

@ezyang

This comment has been minimized.

Copy link
Contributor

ezyang commented Jul 29, 2017

How do these 32-bit Windows binaries get built? 32-bit machine? "Cross" compile?

@23Skidoo

This comment has been minimized.

Copy link
Member

23Skidoo commented Jul 29, 2017

Using the 32-bit HP on a Windows x64 machine. On Linux I used chroot + distro-bundled GHC.

@maoe

This comment has been minimized.

Copy link
Member

maoe commented Aug 11, 2017

It would be great if binaries were released on GitHub Releases on every tag or something like that.

@ezyang

This comment has been minimized.

Copy link
Contributor

ezyang commented Aug 12, 2017

I had pretty good success for Linux builds, see: https://github.com/ezyang/cabal-release

@maoe

This comment has been minimized.

Copy link
Member

maoe commented Aug 12, 2017

Great!

Once this is set up for every major platform, I'd like to use it from the threadscope project. Currently we're using hvr's PPA for Linux, this build for macOS and stack for Windows. It would be great if we could use the same cabal-install for all the platforms.

@23Skidoo

This comment has been minimized.

Copy link
Member

23Skidoo commented Sep 8, 2017

GHC is standardising on Jenkins for its CI setup, maybe we can piggyback on that effort?

@phadej

This comment has been minimized.

Copy link
Collaborator

phadej commented Sep 8, 2017

@23Skidoo we should. That could solve other CI problems.

@23Skidoo

This comment has been minimized.

Copy link
Member

23Skidoo commented Sep 9, 2017

I asked @bgamari about this today at HIW, and he said that it may be possible, conditional on the available server capacity. So if Cabal CI will increase the load on GHC Jenkins infrastructure too much, we may need to look for a source of additional funding to pay for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment