Skip to content
This repository has been archived by the owner on Sep 13, 2019. It is now read-only.

Latest commit

 

History

History
156 lines (100 loc) · 7.55 KB

README.md

File metadata and controls

156 lines (100 loc) · 7.55 KB

flare-publishing-plugins

This project has been deprecated in favor of flare-plugins - see the migration guide for information on transitioning to the new plug-ins.

The one remaining piece of functionality not transferred is the docker-base and docker-build plug-ins - see the associated GitHub Issue to view or contribute to the discussion of their fate

Travis CI Code Coverage Black Duck Security Risk Changelog validated by Chronicler Maven Central License

For information on migrating between major plug-in versions, see the migration guide

Legal

The Flare Publishing Plug-ins are distributed under the MIT License. There are no requirements for using it in your own project (a line in a NOTICES file is appreciated but not necessary for use)

The requirement for a copy of the license being included in distributions is fulfilled by a copy of the LICENSE file being included in constructed JAR archives

Contributing

Information for how to contribute to the Flare Publishing Plugins can be found in the contribution guidelines

Supported Gradle Versions

Gradle 3.2.1 through 3.5.1 (Inclusive)

Supported by plug-in version 0.x

Gradle 4.x

Supported by plug-in version 1.x

Gradle 5.x

Supported by plug-in version 1.x and 2.x

Plug-in Version 1.x Required Workaround

Plug-in versions 1.x work with Gradle 5, with the exception of the published info plug-in's maven POM integration. This can be corrected with the workaround described in GH-36 of applying the following the the root project after applying the plug-in:

publishing {
    publications {
        publications.withType(MavenPublication.class).all{ pub ->
            pub.pom {
                url = "${publishedInfo.url}"
                licenses {
                    publishedInfo.licenses.each { lic ->
                        license {
                            name = "${lic.name}"
                            url = "${lic.url}"
                            distribution = "${lic.distribution}"
                        }
                    }
                }
                developers {
                    publishedInfo.developers.each{ dev ->
                        developer {
                            id = "${dev.id}"
                            name = "${dev.name}"
                            email = "${dev.url}"
                        }
                    }
                }
                scm {
                    connection = "${publishedInfo.scm.connection}"
                    developerConnection = "${publishedInfo.scm.developerConnection}"
                    url = "${publishedInfo.scm.url}"
                }
            }
        }
    }
}

Migrating Gradle Versions

Gradle 3.x to 4.x

  • Upgrade to plug-in version 1.x

Gradle 4.x to 5.x

  • Upgrade to plug-in version 2.x

Recommended Usage

It is recommended projects apply the org.starchartlabs.flare.published-project to any modules which will be externally published to binary repositories - this plug-in contains all the behavior available in the other individual plug-ins

Plug-ins

org.starchartlabs.flare.published-project

Introduces standard behavior for Maven Publications via the individual plug-ins detailed below

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.pom-scope-correction

WARNING: org.starchartlabs.flare.pom-scope-correction is deprecated as of Gradle 5.0, as are the associated nebula plug-ins. It is recommended to switch to Gradle's built-in dependency contraint system

Introduces standard behavior for Maven Publications where compile configuration dependencies are assigned the compile scope in generate POM files

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.source-jars

Introduces standard behavior for generating "sources" and "javadoc" jars

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.published-info-base

Introduces a standard configuration extension publishedInfo for specifying published project values

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.pom-source-jar-artifacts

Introduces standard behavior for sources and JavaDoc artifacts in MavenPublications

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.pom-published-info

Introduces standard behavior for POM information MavenPublications

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.docker-base

Introduces a standard configuration extension containers for specifying docker container values

See the usage documentation for information and requirements for applying the plug-in

org.starchartlabs.flare.docker-build

Introduces a standard configuration of tasks for containers for building docker containers

See the usage documentation for information and requirements for applying the plug-in

Collaborators

Information for collaborators, including the release process, can be found in the collaborator documention