コード例 #1
0
        // Деплоим инстанс и всего host  ОПРЕДЕЛЯЕТСя ПО ВКЛАКДКЕ DEPLOYMENT
        public void DeployInstance(IInstance inst, bool cascade)
        {
            if (inst == null)
            {
                throw new InstanceNullReferenceException();
            }
            IInstance host = GetInstance(inst.Host);

            if (host != null)
            {
                DeployInstance(host, cascade);
            }
            if (inst.DeploymentStatus != EDeploymentStatus.deployed)
            {
                inst.Deploy(EActionForCurrentlyDeployedObjects.redeployOriginal,
                            ESkipIfCurrentlyUndeployed.dontSkipIfCurrentlyUndeployed,
                            EDeployOnScan.doDeployOnScan, EForceOffScan.doForceOffScan,
                            cascade ? ECascade.doCascade : ECascade.dontCascade,
                            true);
            }
            if (!inst.CommandResult.Successful)
            {
                throw new GalaxyObjectDeployException(inst.Tagname, inst.CommandResult);
            }
        }
コード例 #2
0
        // Деплоим экземпляр асинхронно
        public async static Task DeployAsync(this IInstance inst)
        {
            if (inst == null)
            {
                throw new ArgumentNullException(nameof(inst));
            }
            await Task.Run(() =>
            {
                inst.Deploy(
                    EActionForCurrentlyDeployedObjects.redeployOriginal,
                    ESkipIfCurrentlyUndeployed.dontSkipIfCurrentlyUndeployed,
                    EDeployOnScan.doDeployOnScan,
                    EForceOffScan.doForceOffScan,
                    ECascade.dontCascade);
            });

            if (!inst.CommandResult.Successful)
            {
                InstanceException.ThrowIfNoSuccess(inst.CommandResult);
            }
        }