Skip to content
This repository has been archived by the owner on Mar 7, 2023. It is now read-only.
/ notifier Public archive

Gradle plugin that parses version updates and assigns them to groups of people.

License

Notifications You must be signed in to change notification settings

withplum/notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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>"

About

Gradle plugin that parses version updates and assigns them to groups of people.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Languages