pitest / pitclipse

Mutation testing for Java in Eclipse IDE. Based on PIT (Pitest).
https://pitest.org
Apache License 2.0
59 stars 17 forks source link

Switch from Bintray to GitHub Pages for serving the Eclipse update site #122

Closed LorenzoBettini closed 3 years ago

LorenzoBettini commented 3 years ago

Motivation

Bintray is shutting down, so we cannot serve the Eclipse update site from there...

Proposed Solution

I suggest we switch to GitHub Pages for the Eclipse (composite) update site. I already have a working example for that. This requires creating a new GitHub repository for hosting the update site (@hcoles, @echebbi I think I can create that myself in the organization with my admin rights). While hosting binaries on GitHub pages is not ideal, I don't foresee a lot of traffic so we should be fine (and in my experiments, it's pretty fast).

By the way, Bintray is shutting down really soon (I guess the end of March), so we should act pretty quickly.

echebbi commented 3 years ago

We'll also have to update the link to the update site in the Eclipse Marketplace entry. By the way I can grant you the rights to edit the entry if you give me your Eclipse UID.

Do we really need an additional repository? We can merely create a dedicated branch to host binaries, can't we?

LorenzoBettini commented 3 years ago

We'll also have to update the link to the update site in the Eclipse Marketplace entry. By the way I can grant you the rights to edit the entry if you give me your Eclipse UID.

You mean my Eclipse email address? It's the one in the commits lorenzo.bettini gmail

Do we really need an additional repository? We can merely create a dedicated branch to host binaries, can't we?

We could, but that would make the main repository heavyweight that's why I'd avoid that (not to mention that we might hit the GitHub limitations if we store the update sites in the same repository of the main code) ;) The experiments are making are based on another GitHub repository and I found that procedure much easier (the publishing is done during the Maven/Tycho build by the way)

echebbi commented 3 years ago

You mean my Eclipse email address? It's the one in the commits lorenzo.bettini gmail

Yeah, looks like your email address was enough, you should have the rights now.

We could, but that would make the main repository heavyweight that's why I'd avoid that (not to mention that we might hit the GitHub limitations if we store the update sites in the same repository of the main code) ;)

Understood, makes sense!

The experiments are making are based on another GitHub repository and I found that procedure much easier (the publishing is done during the Maven/Tycho build by the way)

Great, thank you. I think we should also take the opportunity to automate the deployment through GitHub Actions (e.g. each time a tag is pushed to master).

For the record here are some deployment-specific stuff that should be removed:

ebramirez commented 3 years ago

Hi @LorenzoBettini and @echebbi,

How is this moving along? The update site is no longer responding.

echebbi commented 3 years ago

I have a bit of free time this week so I should be able to tackle this.

@LorenzoBettini I don't have the rights to create a new repository in the pitest organization, can you create it?

LorenzoBettini commented 3 years ago

@echebbi I don't have it either :(

Maybe @hcoles can create that or can give us the rights to do that?

I might have some free time from this Friday, please let me know if I can do anything.

Remember that first we should:

echebbi commented 3 years ago

Remember that first we should:

  • merge the branch where Jupiter support has been added
  • use reproducible build qualifiers in version numbers

I'll do that tonight. I may also have the time to work on the deployment to GitHub Pages; can I proceed or are you already doing things on your side?

echebbi commented 3 years ago

@LorenzoBettini I updated the POM files to automate the deployment of a composite update site to a GitHub repository. I didn't try to actually deploy the p2 repo but mvn verify -P release-composite seems to create the update site as expected. The GitHub Actions are still missing and I won't have time for that before tomorrow so feel free to take over if you have some free time today.

My current work is on the 120-deploy-to-github-pages branch.

LorenzoBettini commented 3 years ago

Hi, I can work on parallel things today. I can take care of GitHub Actions workflow. I'll also review your changes. There's still to configure the two additional GitHub repositories to serve GitHub Pages from the master branch.

echebbi commented 3 years ago

I can take care of GitHub Actions workflow. I'll also review your changes

Great, thank you!

There's still to configure the two additional GitHub repositories to serve GitHub Pages from the master branch.

I just took care of it, should be working now.

LorenzoBettini commented 3 years ago

OK! So we now have the new update site https://pitest.github.io/pitclipse-releases/ and the MarketPlace entry has been updated as well! Happy mutation testing! :)

ebramirez commented 3 years ago

Thanks a lot @LorenzoBettini @echebbi!