-
Notifications
You must be signed in to change notification settings - Fork 14
/
monorepo-builder.php
47 lines (41 loc) · 1.94 KB
/
monorepo-builder.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
declare(strict_types=1);
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
use EonX\EasyMonorepo\Helper\GitHelper;
use EonX\EasyMonorepo\ReleaseWorker\PackagesListInReadmeReleaseWorker;
use EonX\EasyMonorepo\ReleaseWorker\PushNextDevReleaseWorker;
use EonX\EasyMonorepo\ReleaseWorker\TagVersionReleaseWorker;
use EonX\EasyMonorepo\ReleaseWorker\UpdateTagInGithubWorkflowReleaseWorker;
use GuzzleHttp\Client;
use GuzzleHttp\ClientInterface;
use Symplify\MonorepoBuilder\Config\MBConfig;
use Symplify\MonorepoBuilder\Release\ReleaseWorker\AddTagToChangelogReleaseWorker;
use Symplify\MonorepoBuilder\Release\ReleaseWorker\SetCurrentMutualDependenciesReleaseWorker;
use Symplify\MonorepoBuilder\Release\ReleaseWorker\SetNextMutualDependenciesReleaseWorker;
use Symplify\MonorepoBuilder\Release\ReleaseWorker\UpdateBranchAliasReleaseWorker;
use Symplify\SmartFileSystem\Finder\FinderSanitizer;
use Symplify\SmartFileSystem\SmartFileSystem;
require_once __DIR__ . '/vendor/autoload.php';
return static function (MBConfig $monorepoBuilderConfig): void {
$monorepoBuilderConfig->packageDirectories([__DIR__ . '/packages']);
$monorepoBuilderConfig->packageDirectoriesExcludes([]);
$monorepoBuilderConfig->workers([
AddTagToChangelogReleaseWorker::class,
UpdateTagInGithubWorkflowReleaseWorker::class,
PackagesListInReadmeReleaseWorker::class,
SetCurrentMutualDependenciesReleaseWorker::class,
TagVersionReleaseWorker::class,
SetNextMutualDependenciesReleaseWorker::class,
UpdateBranchAliasReleaseWorker::class,
PushNextDevReleaseWorker::class,
]);
$services = $monorepoBuilderConfig->services();
$services->defaults()
->autoconfigure()
->autowire()
->public();
$services->set(ClientInterface::class, Client::class);
$services->set(FinderSanitizer::class);
$services->set(GitHelper::class);
$services->set(SmartFileSystem::class);
};