mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-31 02:27:18 -04:00 
			
		
		
		
	Merge pull request #11100 from crobibero/plugin-repo-10.9
Add migration for new plugin repo
This commit is contained in:
		
						commit
						83d2bc3f9f
					
				| @ -43,7 +43,8 @@ namespace Jellyfin.Server.Migrations | ||||
|             typeof(Routines.MigrateAuthenticationDb), | ||||
|             typeof(Routines.FixPlaylistOwner), | ||||
|             typeof(Routines.MigrateRatingLevels), | ||||
|             typeof(Routines.AddDefaultCastReceivers) | ||||
|             typeof(Routines.AddDefaultCastReceivers), | ||||
|             typeof(Routines.UpdateDefaultPluginRepository) | ||||
|         }; | ||||
| 
 | ||||
|         /// <summary> | ||||
|  | ||||
| @ -0,0 +1,52 @@ | ||||
| using System; | ||||
| using MediaBrowser.Controller.Configuration; | ||||
| 
 | ||||
| namespace Jellyfin.Server.Migrations.Routines; | ||||
| 
 | ||||
| /// <summary> | ||||
| /// Migration to update the default Jellyfin plugin repository. | ||||
| /// </summary> | ||||
| public class UpdateDefaultPluginRepository : IMigrationRoutine | ||||
| { | ||||
|     private const string NewRepositoryUrl = "https://repo.jellyfin.org/files/plugin/manifest.json"; | ||||
|     private const string OldRepositoryUrl = "https://repo.jellyfin.org/releases/plugin/manifest-stable.json"; | ||||
| 
 | ||||
|     private readonly IServerConfigurationManager _serverConfigurationManager; | ||||
| 
 | ||||
|     /// <summary> | ||||
|     /// Initializes a new instance of the <see cref="UpdateDefaultPluginRepository"/> class. | ||||
|     /// </summary> | ||||
|     /// <param name="serverConfigurationManager">Instance of the <see cref="IServerConfigurationManager"/> interface.</param> | ||||
|     public UpdateDefaultPluginRepository(IServerConfigurationManager serverConfigurationManager) | ||||
|     { | ||||
|         _serverConfigurationManager = serverConfigurationManager; | ||||
|     } | ||||
| 
 | ||||
|     /// <inheritdoc /> | ||||
|     public Guid Id => new("852816E0-2712-49A9-9240-C6FC5FCAD1A8"); | ||||
| 
 | ||||
|     /// <inheritdoc /> | ||||
|     public string Name => "UpdateDefaultPluginRepository10.9"; | ||||
| 
 | ||||
|     /// <inheritdoc /> | ||||
|     public bool PerformOnNewInstall => true; | ||||
| 
 | ||||
|     /// <inheritdoc /> | ||||
|     public void Perform() | ||||
|     { | ||||
|         var updated = false; | ||||
|         foreach (var repo in _serverConfigurationManager.Configuration.PluginRepositories) | ||||
|         { | ||||
|             if (string.Equals(repo.Url, OldRepositoryUrl, StringComparison.OrdinalIgnoreCase)) | ||||
|             { | ||||
|                 repo.Url = NewRepositoryUrl; | ||||
|                 updated = true; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         if (updated) | ||||
|         { | ||||
|             _serverConfigurationManager.SaveConfiguration(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -50,7 +50,7 @@ namespace Jellyfin.Server.Implementations.Tests.Updates | ||||
|         { | ||||
|             PackageInfo[] packages = await _installationManager.GetPackages( | ||||
|                 "Jellyfin Stable", | ||||
|                 "https://repo.jellyfin.org/releases/plugin/manifest-stable.json", | ||||
|                 "https://repo.jellyfin.org/files/plugin/manifest.json", | ||||
|                 false); | ||||
| 
 | ||||
|             Assert.Equal(25, packages.Length); | ||||
| @ -61,7 +61,7 @@ namespace Jellyfin.Server.Implementations.Tests.Updates | ||||
|         { | ||||
|             PackageInfo[] packages = await _installationManager.GetPackages( | ||||
|                 "Jellyfin Stable", | ||||
|                 "https://repo.jellyfin.org/releases/plugin/manifest-stable.json", | ||||
|                 "https://repo.jellyfin.org/files/plugin/manifest.json", | ||||
|                 false); | ||||
| 
 | ||||
|             packages = _installationManager.FilterPackages(packages, "Anime").ToArray(); | ||||
| @ -73,7 +73,7 @@ namespace Jellyfin.Server.Implementations.Tests.Updates | ||||
|         { | ||||
|             PackageInfo[] packages = await _installationManager.GetPackages( | ||||
|                 "Jellyfin Stable", | ||||
|                 "https://repo.jellyfin.org/releases/plugin/manifest-stable.json", | ||||
|                 "https://repo.jellyfin.org/files/plugin/manifest.json", | ||||
|                 false); | ||||
| 
 | ||||
|             packages = _installationManager.FilterPackages(packages, id: new Guid("a4df60c5-6ab4-412a-8f79-2cab93fb2bc5")).ToArray(); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user