Esempio n. 1
0
        public void GetCloudName_Returns_RightCloud(string cloudNameSetting, CloudName cloudName)
        {
            var testEnvironment = new TestEnvironment();

            testEnvironment.SetEnvironmentVariable(EnvironmentSettingNames.CloudName, cloudNameSetting);
            Assert.Equal(cloudName, testEnvironment.GetCloudName());
        }
        public void RestoreTaskCompleted(string accountName, string snapshotId, string restoreId, ContainerType type, CloudName name)
        {
            // State:
            var entity = _containerRestores.GetContainerRestoreEntity(restoreId, type, name.LiveName).Value;
            entity.Value.IsCompleted = true;
            _containerRestores.Update(entity);

            // Denormalization:
            if (!_containerRestores.Get(restoreId).Any(task => !task.Value.IsCompleted))
            {
                RestoreCompleted(accountName, snapshotId, restoreId);
            }
        }
        public void RestoreTaskFailed(string accountName, string snapshotId, string restoreId, ContainerType type, CloudName name, Exception exception)
        {
            // State:
            var entity = _containerRestores.GetContainerRestoreEntity(restoreId, type, name.LiveName).Value;
            entity.Value.IsFailed = true;
            _containerRestores.Update(entity);

            // Reports:
            _messages.Insert(BuildReport.Message(
                string.Format("Restore {0} for snapshot {1} of account {2} of {3} {4} failed: {5}", restoreId, snapshotId, accountName, type, name.LiveName, exception.Message),
                string.Format("restore status fault {0} ", exception.GetType().Name),
                exception.ToString()));

            _indicators.Upsert(BuildReport.Indicator(string.Format("/restores/{0}/{1}/Status", accountName, restoreId), "restore status fault", "failed"));
        }
        public void SnapshotTaskFailed(string accountName, string snapshotId, ContainerType type, CloudName name, Exception exception)
        {
            // State:
            var containerEntity = _containers.GetContainerEntity(accountName, snapshotId, name.SnapshotName).Value;
            containerEntity.Value.IsFailed = true;
            _containers.Update(containerEntity);

            // Reports:
            _messages.Insert(BuildReport.Message(
                string.Format("Snapshot {0} for account {1} of {2} {3} failed: {4}", snapshotId, accountName, type, name.LiveName, exception.Message),
                string.Format("fault snapshot {0}", exception.GetType().Name),
                exception.ToString()));

            _indicators.Upsert(new[]
                {
                    BuildReport.Indicator(string.Format("/snapshots/{0}/{1}/Status", accountName, snapshotId), "snapshot detail status fault", "failed"),
                    BuildReport.Indicator(string.Format("/snapshots/{0}/Last/Status", accountName), "snapshot last status fault", "failed")
                });
        }
        public void SnapshotTaskCompleted(string accountName, string snapshotId, ContainerType type, CloudName name)
        {
            // State:
            var containerEntity = _containers.GetContainerEntity(accountName, snapshotId, name.SnapshotName).Value;
            containerEntity.Value.IsCompleted = true;
            _containers.Update(containerEntity);

            if(_containers.ListContainerEntities(accountName, snapshotId).All(container => container.Value.IsCompleted))
            {
                SnapshotCompleted(accountName, snapshotId);
            }
        }