{"id":20364091,"url":"https://github.com/ekino/gradle-quality-plugin","last_synced_at":"2025-04-12T04:33:33.331Z","repository":{"id":34630947,"uuid":"180962294","full_name":"ekino/gradle-quality-plugin","owner":"ekino","description":"Quality plugin applying some configuration for your builds (checkstyle, jacoco, sonarqube)","archived":false,"fork":false,"pushed_at":"2024-01-08T20:10:37.000Z","size":341,"stargazers_count":5,"open_issues_count":4,"forks_count":1,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-03-26T00:04:46.301Z","etag":null,"topics":["checkstyle","gradle","jacoco","java","quality","sonarqube"],"latest_commit_sha":null,"homepage":"https://plugins.gradle.org/plugin/com.ekino.oss.gradle.plugin.quality","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ekino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-12T08:14:45.000Z","updated_at":"2023-05-26T21:46:20.000Z","dependencies_parsed_at":"2022-07-21T04:34:13.555Z","dependency_job_id":null,"html_url":"https://github.com/ekino/gradle-quality-plugin","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fgradle-quality-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fgradle-quality-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fgradle-quality-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekino%2Fgradle-quality-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekino","download_url":"https://codeload.github.com/ekino/gradle-quality-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248517461,"owners_count":21117461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["checkstyle","gradle","jacoco","java","quality","sonarqube"],"created_at":"2024-11-15T00:09:45.238Z","updated_at":"2025-04-12T04:33:33.310Z","avatar_url":"https://github.com/ekino.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"#  gradle quality plugin\n\nQuality gradle plugin for ekino projects\n\n[![GitHub (pre-)release](https://img.shields.io/github/release/ekino/gradle-quality-plugin.svg)](https://github.com/ekino/gradle-quality-plugin/releases)\n[![GitHub license](https://img.shields.io/github/license/ekino/gradle-quality-plugin.svg)](https://github.com/ekino/gradle-quality-plugin/blob/master/LICENSE.md)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=ekino_gradle-quality-plugin\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=ekino_gradle-quality-plugin)\n\n## Overview\n\nThis plugin configures:\n\n* Check style (via [checkstyle](http://checkstyle.sourceforge.net/))\n* Code coverage (via [Jacoco](http://www.jacoco.org/))\n* Continuous code quality (via [SonarQube](https://www.sonarqube.org/))\n\n## Requirements\n\nGradle 7.6.1 and JDK 11 are required.\n\n## Checkstyle configuration\n\nThis plugin checks that import had 3 groups in the below order:\n\n* com\n* java\n* javax\n\nand after that a latest group with static import\n\nBe careful to configure your IDE code style with the same configuration to avoid errors.\n\nYou can override checkstyle version using a dedicated configuration.\n\nNote: The default checkstyle.xml is compatible with 8.24 or later \n\n```kotlin\ncheckstyle {\n    toolVersion = \"8.41.1\"\n    configFile = file(\"${project.rootDir}/config/checkstyle.xml\")\n}\n```\n\n## Sonar Configuration\n\nThese values can be set in project properties:\n\n* **SONARQUBE_URL**: Sonarqube server URL. Ex : `http://localhost:9000`\n* **SONARQUBE_TOKEN**: login or authentication token of a SonarQube user with Execute Analysis permission on the project\n* **sonarCoverageExclusions**: source files to exclude from code coverage (java extension, wildcard allowed, comma separator). Ex : `**/*Properties.java, **/*Constants.java`\n* **sonarExclusions**: source files to exclude from analysis (java extension, wildcard allowed, comma separator). Ex : `**/*Properties.java, **/*Constants.java`\n\nOr you can set it in manuel mode on your CI pipeline (because you don't want that each developer publish to sonar)\n\n## Usage\n\nAdd the plugin in your Gradle build script:\n\nGroovy\n```groovy\nplugins {\n    id \"com.ekino.oss.gradle.plugin.quality\" version \"2.1.0\"\n}\n```\n\nKotlin\n```kotlin\nplugins {\n    id(\"com.ekino.oss.gradle.plugin.quality\") version \"2.1.0\"\n}\n```\n\n## For contributors\n\n### Build\n\nThis will create the JAR and run the tests\n\n    ./gradlew build\n\n### Test on a local project \n\nAdd to your local project in the settings.gradle as described in [Gradle doc](https://docs.gradle.org/nightly/userguide/testing_gradle_plugins.html#verify-url-cmd-output)\nincludeBuild '[path/to/the/gradle/plugin]'\n\n### Publish\n\nThis will upload the plugin to Nexus repository\n\n    ./gradlew build publish\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekino%2Fgradle-quality-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fekino%2Fgradle-quality-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekino%2Fgradle-quality-plugin/lists"}