Skip to content
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

Using nightly builds on Travis CI is broken #5836

Closed
Sija opened this issue Mar 17, 2018 · 25 comments · Fixed by #7893
Closed

Using nightly builds on Travis CI is broken #5836

Sija opened this issue Mar 17, 2018 · 25 comments · Fixed by #7893

Comments

@Sija
Copy link
Contributor

Sija commented Mar 17, 2018

Using nightly builds on Travis CI has been advertised in docs for Crystal language for some time now, yet ATM it doesn't work.

Refs: https://github.com/travis-ci/travis-build/blob/b2a89dad8e7020c4c28b396639b36d87e5b1d4f6/lib/travis/build/script/crystal.rb#L80


Without nightly releases users caring about having their codebase tested on Travis CI against current Crystal are left with 3 less-than-optimal-options:

  1. Wait for next Crystal release—which might happen... who knows when?
  2. Use docker with nightly tag—but! nightly is 11 days old as of now, and new builds are tagged with nightly-YYYYMMDD scheme, making it hard to point at just that last release—fixed in Use crystallang/crystal:nightly tag for nightly releases on docker #5837
  3. Build it manually—ouch

Since nightly releases are being build as of #5182, the only thing missing would be hooking this up to apt package index, which is used by Travis CI.

With that in place we'd be able to use nice'n'simple .travis.yml:

language: crystal
crystal:
  - latest
  - nightly

Howgh! Thanks for reading!

@Sija
Copy link
Contributor Author

Sija commented Mar 24, 2018

@matiasgarciaisaia @bcardiff 1 week l8r... ping?

@Sija
Copy link
Contributor Author

Sija commented Apr 13, 2018

Ping again... 🕦 🌙 💤

@Sija
Copy link
Contributor Author

Sija commented May 22, 2018

@bcardiff 🏓

@bcardiff
Copy link
Member

The former nightly packages were kept by @jhass and probably that process had a hiccup. It is not yet using the nightly automated build from circle ci.

We are looking forward to try some service for hosting the distro repo. Or if that timeout integrate something manually in S3 as it's done in the former release packages.

Meanwhile, wither @jhass jumps in the discussing, or docker nightlies need to be used.

@jhass
Copy link
Member

jhass commented May 22, 2018

The spare machine I could use is actually gone, sorry.

@bcardiff
Copy link
Member

It's fine, so the nightly.crystal-lang.org domain should be redirected something else, right @jhass? The packages there were unsigned or it was using some key?

@jhass
Copy link
Member

jhass commented May 22, 2018

Yeah.

They were signed by a subkey of the one used for the main APT repo. I can check later this evening if I can still find it, if needed.

@Sija
Copy link
Contributor Author

Sija commented May 22, 2018

Regarding hosting debian packages on S3, I've found some resources which could help with that:

@RX14
Copy link
Contributor

RX14 commented May 23, 2018

We already host debian packages on s3 for the releases. We should just ask travis to change how the crystal: nightly option works, and publish packages in the existing repo.

@jhass
Copy link
Member

jhass commented May 23, 2018

That is ask Travis just means sending a pull request to travis-build

@Sija
Copy link
Contributor Author

Sija commented May 23, 2018

@Sija
Copy link
Contributor Author

Sija commented May 23, 2018

Actually if you'd keep the same domain and gpg key, the PR to travis-build would be needless, it would Just Work™

@bcardiff
Copy link
Member

@jhass if you had chance to find the certificate for nightly send it to me / follow up by email.

I was waiting for news from https://bintray.com/ for OSS projects and use nightlies there and see if it could be used to automate publishing of all releases. @Sija the options you send only support .deb packages.

@Sija
Copy link
Contributor Author

Sija commented May 24, 2018

@bcardiff yes, and what else is needed?

@bcardiff
Copy link
Member

For travis nothing else. But if we aim for nightlies in the same platforms as the official packages then, they are not enough as a complete solution. Worst case we host them in S3 but we want to check if a services may come handy.

@Sija
Copy link
Contributor Author

Sija commented May 24, 2018

@bcardiff my personal grief is stated in the original post, that is, using nightlies on travis, I also believe that would cover majority of use-cases for nightly builds. On my local machine I have no problem with compiling crystal myself, I don't need packaged nightlies for that. Of course that would be neat and all, but is it worth the hassle?

@straight-shoota
Copy link
Member

Just a note: For the time being, you can also use this script to install Crystal nightly from circle ci artifacts: https://gist.github.com/straight-shoota/a2f4b29203936c04c578d6f6a1ad5f9b

@Sija
Copy link
Contributor Author

Sija commented Jun 8, 2018

@bcardiff Anything going on with this?

@bcardiff
Copy link
Member

bcardiff commented Jun 8, 2018

@Sija Not yet. The workaround for now is to use docker nightly images or the script, but in travis would be easier to use docker nightly

@vladfaust
Copy link
Contributor

vladfaust commented Sep 17, 2018

Any guide on how to run a shard build on Travis with crystal nightly docker image? Should I include a Dockerfile in the shard's repository?

@vladfaust
Copy link
Contributor

https://bintray.com supports OSS now, as seen on their website

@straight-shoota
Copy link
Member

@vladfaust Just follow the guides to using docker images in your build: https://docs.travis-ci.com/user/docker/ and use image crystallang/crystal:nightly.

@vladfaust
Copy link
Contributor

There are difficulties if need to test against databases with docker approach. I wonder why nightly doesn't work now? It's clearly a bug because Travis says nightly should work...

@Sija
Copy link
Contributor Author

Sija commented Feb 10, 2019

Bintray looks promising, especially with free OSS package... Perhaps it's the time to re-evaluate the situation? 🏓 @bcardiff

@Blacksmoke16
Copy link
Member

Any update on this?

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

Successfully merging a pull request may close this issue.

8 participants