import Ġcom . jfrog . bin tray . gradle . Bin tray Extension Ċ import Ġcom . jfrog . bin tray . gradle . tasks . Bin tray Upload Task Ċ import Ġde . m alt se v . gradle . semantic release . Version Inference Ċ import Ġde . m alt se v . gradle . semantic release . semantic Release Ċ import Ġde . m alt se v . gradle . semantic release . has New Semantic Version Ċ import Ġorg . gradle . api . tasks . testing . logging . Test Exception Format Ċ import Ġorg . gradle . api . tasks . testing . logging . Test Log Event Ċ import Ġjava . util . Date Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġ` java - gradle - plugin ` ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġ` common - library ` ĊĠĠĠ Ġid (" com . gradle . plugin - publish ") ĊĠĠĠ Ġid (" com . jfrog . bin tray ") ĊĠĠĠ Ġid (" de . m alt se v . gradle . semantic release ") ĊĠĠĠ Ġid (" com . github . ben - man es . versions ") Ċ } Ċ Ċ group Ġ= Ġ" de . m alt se v " Ċ Ċ gradle Plugin Ġ{ ĊĠĠĠ Ġplugins Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate (" semantic Release Plugin ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" de . m alt se v . gradle . semantic release " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠdisplayName Ġ= Ġ" Gradle Ġsemantic Ġrelease Ġplugin " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" Autom ated Ġrelease Ġversion Ġevaluation Ġbased Ġon Ġcommit Ġmessages Ġfor ĠTravis Ġand ĠGitHub " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation Class Ġ= Ġ" de . m alt se v . gradle . semantic release . Semantic Release Plugin " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . test Ġ{ ĊĠĠĠ Ġuse JUnit Platform () ĊĠĠĠ Ġtest Logging Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġset Ġoptions Ġfor Ġlog Ġlevel ĠL IF EC Y CLE ĊĠĠĠĠĠĠĠ Ġevents Ġ= Ġset Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest Log Event . FAILED , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest Log Event . PAS SED , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest Log Event . SKIP PED , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTest Log Event . STANDARD _ OUT ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġexception Format Ġ= ĠTest Exception Format . FULL ĊĠĠĠĠĠĠĠ Ġshow Exceptions Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġshow Cause s Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġshow Stack Tr aces Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . validate Task Properties Ġ{ ĊĠĠĠ Ġenable Strict er Validation Ġ= Ġtrue Ċ } Ċ Ċ plugin Bundle Ġ{ ĊĠĠĠ Ġwebsite Ġ= Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin " ĊĠĠĠ Ġv cs Url Ġ= Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin " ĊĠĠĠ Ġdescription Ġ= Ġ" Gradle Ġsemantic Ġrelease Ġplugin " ĊĠĠĠ Ġtags Ġ= ĠlistOf (" kotlin ", Ġ" semantic - release ", Ġ" travis ", Ġ" github ") ĊĊĠĠĠ Ġ( plugins ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ" semantic Release Plugin " Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" de . m alt se v . gradle . semantic release " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠdisplayName Ġ= Ġ" Gradle Ġsemantic Ġrelease Ġplugin " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ // tasks . dok ka Ġ{ Ċ // ĠĠĠ Ġreport Un document ed Ġ= Ġfalse Ċ // ĠĠĠ Ġoutput Format Ġ= Ġ" javadoc " Ċ // ĠĠĠ Ġoutput Directory Ġ= Ġ"$ build Dir / javadoc " Ċ //} Ċ Ċ source Sets [" main "]. java . src Dir ("$ build Dir / generated / src ") Ċ Ċ val Ġsources Jar Ġby Ġtasks . creating ( Jar :: class ) Ġ{ ĊĠĠĠ Ġdepends On (" classes ") ĊĠĠĠ Ġarchive Classifier . set (" sources ") ĊĠĠĠ Ġfrom ( source Sets [" main "]. all Source ) Ċ } Ċ Ċ // val Ġjavadoc Jar Ġby Ġtasks . creating ( Jar :: class ) Ġ{ Ċ // ĠĠĠ Ġdepends On (" dok ka ") Ċ // ĠĠĠ Ġarchive Classifier . set (" javadoc ") Ċ // ĠĠĠ Ġfrom ( build Dir . resolve (" javadoc ")) Ċ //} Ċ Ċ artifacts Ġ{ ĊĠĠĠ Ġarch ives ( sources Jar ) Ċ // ĠĠĠ Ġarch ives ( javadoc Jar ) Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġpublications . create < Maven Publication >(" Semantic Release Publication ") Ġ{ ĊĠĠĠĠĠĠĠ Ġfrom ( components [" java "]) ĊĠĠĠĠĠĠĠ Ġartifact ( sources Jar ) Ċ // ĠĠĠĠĠĠĠ Ġartifact ( javadoc Jar ) ĊĠĠĠĠĠĠĠ ĠgroupId Ġ= Ġroot Project . group . toString () ĊĠĠĠĠĠĠĠ Ġartifact Id Ġ= Ġroot Project . name ĊĠĠĠĠĠĠĠ Ġversion Ġ= Ġroot Project . version . toString () ĊĠĠĠĠĠĠĠ Ġpom . with Xml Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġas Node (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Node (" description ", Ġ" Gradle Ġsemantic Ġrelease Ġplugin ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Node (" name ", Ġ" semantic release ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Node (" url ", Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlicense Ġ= Ġappend Node (" licenses "). append Node (" license ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicense . append Node (" name ", Ġ" MIT ĠLicense ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicense . append Node (" url ", Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin / blob / master / LICENSE ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlicense . append Node (" distribution ", Ġ" repo ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdeveloper Ġ= Ġappend Node (" developers "). append Node (" developer ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper . append Node (" id ", Ġ" Ev gen iy ĠM alt se v ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper . append Node (" name ", Ġ" Ev gen iy ĠM alt se v ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeveloper . append Node (" email ", Ġ" low 2 0 5 @ gmail . com ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Node (" scm "). append Node (" url ", Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ bin tray Ġ{ ĊĠĠĠ Ġuser Ġ= ĠSystem . getenv (" BIN TR AY _ USER ") Ġ?: Ġ"" ĊĠĠĠ Ġkey Ġ= ĠSystem . getenv (" BIN TR AY _ API _ KEY ") Ġ?: Ġ"" ĊĠĠĠ Ġset Public ations (" Semantic Release Publication ") ĊĠĠĠ Ġoverride Ġ= Ġtrue ĊĠĠĠ Ġpkg ( delegate Closure Of < Bin tray Extension . Package Config > Ġ{ ĊĠĠĠĠĠĠĠ Ġrepo Ġ= Ġ" gradle - plugins " ĊĠĠĠĠĠĠĠ Ġname Ġ= Ġ" gradle - semantic - release - plugin " ĊĠĠĠĠĠĠĠ Ġuser Org Ġ= Ġ" low 2 0 5 " ĊĠĠĠĠĠĠĠ Ġset License s (" MIT ") ĊĠĠĠĠĠĠĠ Ġv cs Url Ġ= Ġ" https :// github . com / low 2 0 5 / gradle - semantic - release - plugin " ĊĠĠĠĠĠĠĠ Ġversion ( delegate Closure Of < Bin tray Extension . Version Config > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġproject . version . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreleased Ġ= ĠDate (). toString () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġgpg ( delegate Closure Of < Bin tray Extension . G pg Config > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsign Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ}) Ċ } Ċ Ċ tasks Ġ{ ĊĠĠĠ Ġ" bin tray Upload "( Bin tray Upload Task :: class ) Ġ{ ĊĠĠĠĠĠĠĠ Ġonly If Ġ{ Ġhas New Semantic Version () Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġ" publish Plugins " Ġ{ ĊĠĠĠĠĠĠĠ Ġonly If Ġ{ Ġhas New Semantic Version () Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġj aco co Test Report Ġ{ ĊĠĠĠĠĠĠĠ Ġreports Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġxml . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhtml . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġ" check " Ġ{ ĊĠĠĠĠĠĠĠ Ġdepends On ( jac oco Test Report ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ semantic Release Ġ{ ĊĠĠĠ Ġinfer Version . set ( Version Inference . ONLY _ ON _ TARGET ) Ċ } ĊĊ