There's no support for automated releases (CD, JEP-229), missing metadata for the plugin page and a few other limitations, which don't make it a great experience using it.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAFwNDjq9xnyvJFoB33n07jORm7Hw6fSBf8FY5ho5FdGMDAiKug%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/5f43f822-37e4-45e2-85a2-3c60840ffcdfn%40googlegroups.com.
There's no support for automated releases (CD, JEP-229), missing metadata for the plugin page and a few other limitations, which don't make it a great experience using it.
…
I would be ready to lift this restriction again if the JPI plugin developers provide the same scope of tools like we have for Maven.
> Last I checked, generated poms were also invalid, which is a problem for any consumers of these artifacts that do more than just download the hpi.I believe this was fixed in 2019 as v0.31.0.
--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAFwNDjoXcdRte%3DXuUwp9XbTcFte_kiT4-CBqXqvgJzzRU98LcQ%40mail.gmail.com.
Hi,lately I've been working on improving the Gradle support for building Jenkins plugins, see https://github.com/jenkinsci/gradle-jpi-plugin/issues/213 for more details
The latest JPI plugin release 0.49.0 and recent changes on the pipeline-library (https://github.com/jenkins-infra/pipeline-library/pull/654 and https://github.com/jenkins-infra/pipeline-library/pull/652) enable quality checks and incremental builds on ci.jenkins.io. Where can we document this and would it be ok to re-enable Gradle support ?
One thing I've noticed though is that the cd release with Gradle would not be supported by the dedicated Github action. I wonder if it worth supporting, since I don't see it used by a lot of plugins currently: https://github.com/search?q=org%3Ajenkinsci%20%22maven-cd.yml%40v1%22%20path%3A*.yml&type=code. What do you think ?
On Thursday, May 25, 2023 at 6:09:42 AM UTC-6 you wrote:Hi,lately I've been working on improving the Gradle support for building Jenkins plugins, see https://github.com/jenkinsci/gradle-jpi-plugin/issues/213 for more detailsThanks for doing that.The latest JPI plugin release 0.49.0 and recent changes on the pipeline-library (https://github.com/jenkins-infra/pipeline-library/pull/654 and https://github.com/jenkins-infra/pipeline-library/pull/652) enable quality checks and incremental builds on ci.jenkins.io. Where can we document this and would it be ok to re-enable Gradle support ?https://github.com/jenkinsci/gradle-jpi-plugin/issues/213#issue-1499881868 indicates the following reasons that the hosting team started rejecting new hosting requests for plugins built with Gradle:
- No support for JEP-229
- No support for JEP-305
- Lacking end-user documentation on jenkins.io
- No support for publishing static analysis and coverage reports on ci.jenkins.io
- No support for building on ACI (Azure Container Instance) agents
- Suspect to produce invalid pom.xml files causing issues with third parties and the update center in the past
You noted that the second bullet (JEP-305 - incremental builds) is now supported and that the fourth bullet (quality checks) are now supported and that the first bullet (JEP-229 - automated release / continuous delivery) is not supported.Are you willing to create end user documentation on jenkins.io for those who use Gradle?
I'm not a member of the hosting team, but I think they will want to be assured that Jenkins plugins can be successfully maintained and released using Gradle.One thing I've noticed though is that the cd release with Gradle would not be supported by the dedicated Github action. I wonder if it worth supporting, since I don't see it used by a lot of plugins currently: https://github.com/search?q=org%3Ajenkinsci%20%22maven-cd.yml%40v1%22%20path%3A*.yml&type=code. What do you think ?Your query is not showing you how widely the automated release process is used.https://github.com/search?q=repo%3Ajenkins-infra%2Frepository-permissions-updater+%22cd%3A%22&type=code shows that 340 repositories have enabled automated release.
I'm not sure what stops Gradle from being supported by automated release, but the number of plugins using automated releases has been steadily increasing for a
Thanks for the quick answer!On Thursday, May 25, 2023 at 3:16:30 PM UTC+2 Mark Waite wrote:On Thursday, May 25, 2023 at 6:09:42 AM UTC-6 you wrote:Hi,lately I've been working on improving the Gradle support for building Jenkins plugins, see https://github.com/jenkinsci/gradle-jpi-plugin/issues/213 for more detailsThanks for doing that.The latest JPI plugin release 0.49.0 and recent changes on the pipeline-library (https://github.com/jenkins-infra/pipeline-library/pull/654 and https://github.com/jenkins-infra/pipeline-library/pull/652) enable quality checks and incremental builds on ci.jenkins.io. Where can we document this and would it be ok to re-enable Gradle support ?https://github.com/jenkinsci/gradle-jpi-plugin/issues/213#issue-1499881868 indicates the following reasons that the hosting team started rejecting new hosting requests for plugins built with Gradle:
- No support for JEP-229
- No support for JEP-305
- Lacking end-user documentation on jenkins.io
- No support for publishing static analysis and coverage reports on ci.jenkins.io
- No support for building on ACI (Azure Container Instance) agents
- Suspect to produce invalid pom.xml files causing issues with third parties and the update center in the past
You noted that the second bullet (JEP-305 - incremental builds) is now supported and that the fourth bullet (quality checks) are now supported and that the first bullet (JEP-229 - automated release / continuous delivery) is not supported.Are you willing to create end user documentation on jenkins.io for those who use Gradle?Sure, I can start a dedicated page with what we have and enrich later (see below)
I'm not a member of the hosting team, but I think they will want to be assured that Jenkins plugins can be successfully maintained and released using Gradle.One thing I've noticed though is that the cd release with Gradle would not be supported by the dedicated Github action. I wonder if it worth supporting, since I don't see it used by a lot of plugins currently: https://github.com/search?q=org%3Ajenkinsci%20%22maven-cd.yml%40v1%22%20path%3A*.yml&type=code. What do you think ?Your query is not showing you how widely the automated release process is used.https://github.com/search?q=repo%3Ajenkins-infra%2Frepository-permissions-updater+%22cd%3A%22&type=code shows that 340 repositories have enabled automated release.My understanding of https://www.jenkins.io/doc/developer/publishing/releasing-cd/ is that this step will just set the Maven repository credentials as secrets on the relevant Github repository.The actual continuous release will happen only if using https://raw.githubusercontent.com/jenkinsci/.github/master/workflow-templates/cd.yaml, or am I missing something ? People maybe just have their own workflow using credentials to publish ?
I'm not sure what stops Gradle from being supported by automated release, but the number of plugins using automated releases has been steadily increasing for aCurrently the Github action uses Maven to rebuild and publish https://github.com/jenkins-infra/jenkins-maven-cd-action/blob/master/run.sh#L8.We could either provide a similar Github action, or simply a template and some docs on how to use it, but first I'd like to make sure it's used.Getting a step back, I'd be curious to know why it requires rebuilding since it's supposed to be built already on ci.jenkins.io and published to the incrementals repository. The automatic releasing would just consist in promoting from the incrementals repository to the release repository in Artifactory.
Thanks!