Can we add drone.io and status badge?

Issue #133 new
Nathanael Jones created an issue

While I can set up drone.io for my own fork of gd-libgd, drone.io does not let me set up CI for the official repo (I assume because I lack push permissions or something).

It takes about 5 minutes to set up Drone.io on a repository. Once that is done, I would like to add a readme file and a status badge so it's obvious when the build gets broken.

Comments (33)

  1. Nathanael Jones reporter

    Drone.io appears to be abandoned; their VMs are broken and spewing errors. I can set up AppVeyor, but if you want reliable linux/mac builds and artifacts, we'd have to move to github. (Travis is github-only)

  2. Nathanael Jones reporter

    Travis uses GitHub's authorization system to determine who can do what. This makes it very easy to manage projects, as you only have to manage permissions in GitHub. When you're using advanced services that require encrypted tokens (like releasing artifacts to github releases, or coverity scan, etc), this is very nice.

    The upside, Travis+GitHub is a super-smooth, fast, experience. It's open-source and the best-maintained CI service I've seen.

    The downside, it is tied to GitHub. GitLab compatibility might be possible, but the design is intentionally married to GitHub.

    Most paid CI services advertise 'travis.yml' compatible. I'm paying $80/mo for AppVeyor, but Travis is so fast - and free - that I'm not inclined to pay for vexor.io or something similar knockoff when I can get the real thing.

  3. Nathanael Jones reporter

    It wouldn't automatically test every pull request, which (to me) is a big feature. (also; one of those things that you can only do when you tightly integrate with the git provider, like travis does).

    I really like bitbucket, but GitHub's giant ecosystem has strong gravitational pull. It does also have really good multi-factor authentication, which I promote the use of.

    There's also the convenience factor; if libgd was on GitHub, we would sync our copy much more frequently, since it takes seconds via browser (instead of minutes via commandline), and we could easily view changes between branches on different repos. Right now, we usually end up with a painful rebase before each upstream push :[. That does discourage PR frequency.

    I'd also like to invest in a 'CONTRIBUTING.md' file eventually; this (on GitHub) is displayed to users filing issues or PRs, so that they can keep code style, etc. consistent. Making the onboarding process easier and getting more devs to jump in would be nice; as would setting up waffle.io and marking tasks as 'up for grabs'. (Example on ImageResizer) But this too, is GitHub specific.

    Mirroring is certainly better than nothing, though!

  4. Pierre Joye

    hm... That's bad.

    I am not too keen to do yet another move. While github is very appealing, I do not have the time to transfert everything, keep history (git) and all that :/

    Any suggestions welcome :)

  5. Nathanael Jones reporter

    We could help with that; actually. We have around 50 projects to manage, so we've developed some pretty fast processes.

  6. Pierre Joye

    yes, let me check with the other if they are ok to move.That will also bring more visibility :)

  7. Former user Account Deleted

    Converting the repositories is easy - e.g. done.

    Now I am working on travis-ci.org build of the pelican website (I wouldn't mind converting the pages to native github Jekyll... but I am not doing that :)).

    The next step would be to:

    1) setup CI build at travis-ci.org (easy, I will do that as soon as I finish the website) 2) setup Coverity build from travis-ci.org (and drop the custom jenkins at CZ.NIC) 3) setup push mirroring over to bitbucket (should be fairly easy) 4) change various information on the website, etc.

  8. Pierre Joye

    @nathanaeljones what is your github handle? :)

    And email, would be handy :)

    @oerdnj O_o wow :) Thanks :)

  9. Former user Account Deleted

    So, website is up and running on libgd.github.io. You can either setup alias from libgd.org (there should be a CNAME file in website root) or just do the redirect.

    Travis CI on libgd fails with something webp related. Perhaps the setup is missing some library. I also changed .travis.yml to use autotools on linux.

  10. Nathanael Jones reporter

    Add tostercx to the repo, he can fix the build. A few important commits didn't make it upstream after we updated some dependency locations, thus the issues. My github is nathanaeljones.

  11. Nathanael Jones reporter

    Re: issue migration, this is a problem on the bitbucket/read side, right? A hacky fix would be to transfer the repo to an individual, then back to the org (assuming bitbucket permits that).

  12. Toster Cx

    @nathanaeljones, they are using autotools atm. The error seems to have something to do with the vpx->webp switch.

    edit

    Hmm.. runs fine locally.

  13. Nathanael Jones reporter

    Does thumbs.sh build? Seems better to fetch deps than rely on travis's worker's copy.

  14. Nathanael Jones reporter

    Also, I can let libgd\libgd use my upgraded AppVeyor account, but I will have to be an org member for AppVeyor to recognize it.

  15. Pierre Joye

    Oh I forgot it. That will be for 2.2

    Btw, we need to test GD-2.1 too, not as frequently as there won't have many changes but bugs fixes.

  16. Pierre Joye

    On the todo list, the releases have to be transferred as well.

    @oerdnj I will change the alias entry to point to github.io

    Thanks for the quick&awesome work :)

  17. Former user Account Deleted

    Got sidetracked :). If anyone has a time to look at it, I won't mind. @nathanaeljones ?

  18. Nathanael Jones reporter

    It looks like the rate limits don't apply to private repos. Making the repository private (temporarily) during the import should make this possible. It would also prevent @notifications from happening to everyone, which is annoying.

    I just completed a test against a blank private repo and all 140 were migrated. If someone can give me Owner access, I'll use my card to enable private repos, and get this done.

    @oerdnj @pierrejoye

  19. Nathanael Jones reporter

    GitHub support got back to me finally and lifted my rate limit. Let me know if you spot any issues with the issues :)

  20. Log in to comment