/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 1 ĠR ick ĠBus ar ow Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ import Ġmodule check . builds . VERSION _ NAME Ċ Ċ plugins Ġ{ ĊĠ Ġid (" mc build ") ĊĠ Ġid (" com . gradle . plugin - publish ") Ġversion Ġ" 0 . 1 9 . 0 " ĊĠ Ġid (" java - gradle - plugin ") ĊĠ Ġ` kotlin - dsl ` Ċ } Ċ Ċ mc build Ġ{ ĊĠ Ġ// Ġthis Ġis Ġjust Ġused Ġfor Ġ` publish To Maven Local ` ĊĠ Ġartifact Id Ġ= Ġ" com . rick bus ar ow . module - check " ĊĠ Ġdagger Ġ= Ġtrue Ċ } Ċ Ċ dependencies Ġ{ ĊĊĠ Ġapi ( libs . javax . inject ) ĊĠ Ġapi ( libs . kotlin . compiler ) ĊĠ Ġapi ( libs . kotlin x . coroutines . core ) ĊĠ Ġapi ( libs . kotlin x . coroutines . jvm ) ĊĠ Ġapi ( libs . rick Bus ar ow . dispatch . core ) ĊĊĠ Ġapi ( project ( path Ġ= Ġ": module check - api ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - core ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - d agger ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - parsing : android ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - parsing : gradle ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - parsing : source ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - parsing : w iring ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - project : api ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - project : impl ")) ĊĠ Ġapi ( project ( path Ġ= Ġ": module check - runtime ")) ĊĊĠ Ġcompile Only ( gradle Api ()) ĊĊĠ Ġimplementation ( libs . ag p ) ĊĠ Ġimplementation ( libs . kotlin . gradle . plug ) ĊĠ Ġimplementation ( libs . kotlin . gradle . plugin . api ) ĊĠ Ġimplementation ( libs . kotlin . reflect ) ĊĠ Ġimplementation ( libs . sem Ver ) ĊĠ Ġimplementation ( libs . square . an vil . gradle ) ĊĊĠ Ġtest Implementation ( libs . bundles . her mit ) ĊĠ Ġtest Implementation ( libs . bundles . j Unit ) ĊĠ Ġtest Implementation ( libs . bundles . kot est ) ĊĠ Ġtest Implementation ( libs . kotlin Po et ) ĊĊĠ Ġtest Implementation ( project ( path Ġ= Ġ": module check - specs ")) ĊĠ Ġtest Implementation ( project ( path Ġ= Ġ": module check - utils ")) ĊĊĠ Ġtest Implementation ( test Fixtures ( project ( path Ġ= Ġ": module check - api "))) ĊĠ Ġtest Implementation ( test Fixtures ( project ( path Ġ= Ġ": module check - project : api "))) Ċ } Ċ Ċ gradle Plugin Ġ{ ĊĠ Ġplugins Ġ{ ĊĠĠĠ Ġcreate (" module Check ") Ġ{ ĊĠĠĠĠĠ Ġid Ġ= Ġ" com . rick bus ar ow . module - check " ĊĠĠĠĠĠ Ġgroup Ġ= Ġ" com . rick bus ar ow . module check " ĊĠĠĠĠĠ Ġimplementation Class Ġ= Ġ" module check . gradle . Module Check Plugin " ĊĠĠĠĠĠ Ġversion Ġ= ĠVERSION _ NAME ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ Ċ // ĠConfiguration ĠBlock Ġfor Ġthe ĠPlugin ĠMarker Ġartifact Ġon ĠPlugin ĠCentral Ċ plugin Bundle Ġ{ ĊĠ Ġwebsite Ġ= Ġ" https :// github . com / R Bus ar ow / Module Check " ĊĠ Ġv cs Url Ġ= Ġ" https :// github . com / R Bus ar ow / Module Check " ĊĠ Ġdescription Ġ= Ġ" Fast Ġdependency Ġgraph Ġvalidation Ġfor Ġgradle " ĊĠ Ġtags Ġ= ĠlistOf (" kotlin ", Ġ" dependencies ", Ġ" android ", Ġ" gradle - plugin ", Ġ" kotlin - compiler - plugin ") ĊĊĠ Ġplugins Ġ{ ĊĠĠĠ Ġget ByName (" module Check ") Ġ{ ĊĠĠĠĠĠ ĠdisplayName Ġ= Ġ" Fast Ġdependency Ġgraph Ġvalidation Ġfor Ġgradle " ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ Ċ tasks . create (" setup Plugin Upload From Environment ") Ġ{ ĊĠ Ġdo Last Ġ{ ĊĠĠĠ Ġval Ġkey Ġ= ĠSystem . getenv (" GRAD LE _ PUBL ISH _ KEY ") ĊĠĠĠ Ġval Ġsecret Ġ= ĠSystem . getenv (" GRAD LE _ PUBL ISH _ SECRET ") ĊĊĠĠĠ Ġif Ġ( key Ġ== Ġnull Ġ|| Ġsecret Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġthrow ĠGradle Exception ( ĊĠĠĠĠĠĠĠ Ġ" gradle Publish Key Ġand / or Ġgradle Publish Secret Ġare Ġnot Ġdefined Ġenvironment Ġvariables " ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠSystem . setProperty (" gradle . publish . key ", Ġkey ) ĊĠĠĠ ĠSystem . setProperty (" gradle . publish . secret ", Ġsecret ) ĊĠ Ġ} Ċ } Ċ