Skip to content

Commit be4e24a

Browse files
committed
Implement mirror_vcs_repositories configuration option
1 parent 7d5b38e commit be4e24a

2 files changed

Lines changed: 8 additions & 2 deletions

File tree

src/Controller/ApiController.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
use CodedMonkey\Dirigent\Package\PackageMetadataResolver;
1414
use CodedMonkey\Dirigent\Package\PackageProviderManager;
1515
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
16+
use Symfony\Component\DependencyInjection\Attribute\Autowire;
1617
use Symfony\Component\HttpFoundation\BinaryFileResponse;
1718
use Symfony\Component\HttpFoundation\JsonResponse;
1819
use Symfony\Component\HttpFoundation\Request;
@@ -34,6 +35,8 @@ public function __construct(
3435
private readonly PackageDistributionResolver $distributionResolver,
3536
private readonly PackageProviderManager $providerManager,
3637
private readonly MessageBusInterface $messenger,
38+
#[Autowire(param: 'dirigent.metadata.mirror_vcs_repositories')]
39+
private readonly bool $mirrorVcsRepositories = false,
3740
) {
3841
}
3942

@@ -171,7 +174,7 @@ private function findPackage(string $packageName): ?Package
171174
$package = new Package();
172175
$package->setName($packageName);
173176
$package->setMirrorRegistry($registry);
174-
$package->setFetchStrategy(PackageFetchStrategy::Mirror);
177+
$package->setFetchStrategy($this->mirrorVcsRepositories ? PackageFetchStrategy::Vcs : PackageFetchStrategy::Mirror);
175178

176179
$this->packageRepository->save($package, true);
177180

src/Controller/Dashboard/DashboardPackagesController.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use CodedMonkey\Dirigent\Package\PackageMetadataResolver;
1515
use Doctrine\ORM\EntityManagerInterface;
1616
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
17+
use Symfony\Component\DependencyInjection\Attribute\Autowire;
1718
use Symfony\Component\HttpFoundation\Request;
1819
use Symfony\Component\HttpFoundation\Response;
1920
use Symfony\Component\Messenger\MessageBusInterface;
@@ -27,6 +28,8 @@ public function __construct(
2728
private readonly PackageRepository $packageRepository,
2829
private readonly PackageMetadataResolver $metadataResolver,
2930
private readonly MessageBusInterface $messenger,
31+
#[Autowire(param: 'dirigent.metadata.mirror_vcs_repositories')]
32+
private readonly bool $mirrorVcsRepositories = false,
3033
) {
3134
}
3235

@@ -104,7 +107,7 @@ public function addMirroring(Request $request): Response
104107
$package = new Package();
105108
$package->setName($packageName);
106109
$package->setMirrorRegistry($registry);
107-
$package->setFetchStrategy(PackageFetchStrategy::Mirror);
110+
$package->setFetchStrategy($this->mirrorVcsRepositories ? PackageFetchStrategy::Vcs : PackageFetchStrategy::Mirror);
108111

109112
$this->packageRepository->save($package, true);
110113

0 commit comments

Comments
 (0)