UNPKG

iobroker.js-controller

Version:

Updated by reinstall.js on 2018-06-11T15:19:56.688Z

72 lines 2.42 kB
import type { Client as ObjectsClient } from '@iobroker/db-objects-redis'; import type { Client as StatesClient } from '@iobroker/db-states-redis'; import type { logger } from '@iobroker/js-controller-common'; interface AdapterAutoUpgradeOptions { /** The objects DB client */ objects: ObjectsClient; /** The states DB client */ states: StatesClient; /** Logger which needs to be prefixed */ logger: ReturnType<typeof logger>; /** Prefix for log messages */ logPrefix: string; } interface UpgradedAdapter { /** Name of the adapter */ name: string; /** Version before upgrade */ oldVersion: string; /** Newly installed version */ newVersion: string; } interface UpgradeAdaptersResult { /** Adapters which were successfully upgraded */ upgradedAdapters: UpgradedAdapter[]; /** Adapters which were failed to upgrade */ failedAdapters: UpgradedAdapter[]; } export declare class AdapterAutoUpgradeManager { private readonly objects; private readonly states; /** Mapping from semver range to range identifier */ private SEMVER_RANGE_MAPPING; /** Prefix for log messages */ private readonly logPrefix; /** Logger which needs to be prefixed */ private logger; constructor(options: AdapterAutoUpgradeOptions); /** * Checks if auto upgrade is enabled for the current configured repository */ isAutoUpgradeEnabled(): Promise<boolean>; /** * Checks the current `system.repositories` object and checks if one needs to be performed according to the adapter configuration */ upgradeAdapters(): Promise<UpgradeAdaptersResult>; /** * Upgrade specified adapter to given version * * @param options information of the adapter to install, e.g. version and name, sa well as active repo */ private upgradeAdapter; /** * Get the current active repository name */ private getConfiguredRepositoryName; /** * Get the repository information for the given repository * * @param name Name of the repository */ private getRepository; /** * Get the auto upgrade configuration of all adapters */ private getAutoUpdateConfiguration; /** * Get the default upgrade policy from the system config */ private getDefaultUpgradePolicy; } export {}; //# sourceMappingURL=adapterAutoUpgradeManager.d.ts.map