diff --git a/src/Dev/BuildTask.php b/src/Dev/BuildTask.php index 6f6423ccd..42f5567e3 100644 --- a/src/Dev/BuildTask.php +++ b/src/Dev/BuildTask.php @@ -6,6 +6,7 @@ use SilverStripe\Control\HTTPRequest; use SilverStripe\Core\Config\Configurable; use SilverStripe\Core\Extensible; use SilverStripe\Core\Injector\Injectable; +use SilverStripe\Control\Director; /** * Interface for a generic build task. Does not support dependencies. This will simply @@ -82,4 +83,16 @@ abstract class BuildTask { return $this->description; } + + /** + * @return string e.g. /dev/tasks/MyTask-In-Full + */ + public function Link() : string + { + $link = $this->Config()->get('segment'); + if (! $link) { + $link = str_replace('\\', '-', static::class); + } + return Director::absoluteUrl('dev/tasks/') . $link; + } }