Example #1
0
 public function getVersionsToSync()
 {
     $versionsToSync = [];
     $currentVersions = $this->project->getRefs();
     $allowedVersionRange = new expression($this->setting('sync.sync.versions'));
     $tags = $this->github->repositories()->tags($this->setting('owner'), $this->setting('repository'));
     foreach ($tags as $tag) {
         try {
             $version = new version($tag['name']);
         } catch (SemVerException $e) {
             continue;
         }
         if ($version->satisfies($allowedVersionRange) === false or in_array($version->getVersion(), $currentVersions, true)) {
             continue;
         }
         $versionsToSync[] = $version;
     }
     return $versionsToSync;
 }