GoogleCloudPlatform / GoogleCloudPlatform/appengine-plugins

Unlock plugins {...} syntax: publish plugin markers to Sonatype OSSRH (Maven Central)

Open
#1,004 4 comments 2 reactions 0 assignees View on GitHub
enhancement p3
Dominant language
Java
Stars
47
Forks
27
PR merge metrics
No merged PRs in 30d

Description

Gradle plugins are usable with `plugins {...}` syntax if they have [plugin markers](https://docs.gradle.org/current/userguide/plugins.html#sec:plugin_markers)
Currently `app-gradle-plugin` does not publish one, so the users struggle.

It would be great if the markers were published.

---

Currently, `app-gradle-plugin` uses [maven](https://docs.gradle.org/current/userguide/maven_plugin.html) to publish to Nexus. `maven` is deprecated for a long time, and it is probably time to migrate to [maven-publish](https://docs.gradle.org/current/userguide/publishing_maven.html)

---

I don't know the way you publish/release, and I don't want to interrupt workflows, however, I guess the following might be a sane plan:

* Bump Gradle (e.g. to 6.8.2)
* Use `maven-publish` for publishing
* Use Gradle's `java-gradle-plugin` for plugin marker generation
* Use https://github.com/gradle-nexus/publish-plugin for Nexus staging. Just in case, staging enables you to create a "staging" repository, push multiple artifacts and release them at once (or drop the staged repo)
* Use Kotlin DSL for Gradle for less magic and better autocomplete

WDYT?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.