Notifier Gradle Plugin

This gradle plugin serves the need of automating how dependencies are handles in a project.

More specifically, it functions using the output of Refresh Versions plugin.
By parsing the versions.properites file, in conjunction with pre-determined list of dependency assignments, it will
output a report detailing who has to update what.

Reporting

At its current state, the plugin can output reports to:

  • Standard output
  • GitHub issue: It requires a GitHub App to be created and installed in the repository. This is done because for the plugin
    to function, it needs to be authenticated and thus act on behalf of that GitHub App. It will also require a jwt token.
    More information can be found in GitHub’s documentation

Usage

Apply the plugin

plugins {
    id("com.withplum.notifier") version "0.1.0"
}

Configure

configure<com.withplum.notifier.extensions.NotifierExtension> {
    stdOutEnabled.value(true) // For reporting to the standard output
    githubEnabled.value(false) // For reporting to a github issue
    versionsFilePath.set(rootDir.path + File.separator + "versions.properties") // the file from which to read
    githubInstallationId.set("numeric_id") // The GitHub App's installation id
    githubRepository.set("<repository>") // Your repository, e.g.: notifier
    githubRepositorySlug.set("/repos/<org-name>/<repository>") // e.g. /repos/withplum/app-android
    githubIssueId.set("<issue-id>") // The id of a GitHub issue that you'd like to post reports to
    githubDependencyAssignments.set( // A map of github usernames (or anything else you'd like) with assigned dependencies
        mapOf(
            "spiderMan" to listOf("junit"),
            "wonderWoman" to listOf("kotlin", "koin")
        )
    )
}

Execute

Reminder: In order to post updates to GitHub issue, a jwt token has to first be generated.

./gradlew notifyDependencies --jwtToken="<the token you generated from the pem file>"

GitHub

View Github