Example #1
0
        /// <summary>
        /// Executes the task.
        /// </summary>
        /// <param name="runtimeContext">The runtime context.</param>
        /// <param name="taskContext">The task execution context.</param>
        /// <returns>The async <see cref="Task"/>.</returns>
        public async Task Execute(RuntimeContext runtimeContext, TaskContext taskContext)
        {
            if (ResourceLog.CaasId != null)
            {
                var deployer    = new ResourceDeployer(runtimeContext, ResourceLog.ResourceId, ResourceLog.ResourceType);
                var resourceLog = await deployer.DeleteAndWait(ResourceLog.CaasId);

                taskContext.Log.Resources.Add(resourceLog);

                if (resourceLog.DeploymentStatus == ResourceLogStatus.Failed)
                {
                    taskContext.Log.Status = DeploymentLogStatus.Failed;
                }
            }
        }
Example #2
0
        /// <summary>
        /// Executes the task.
        /// </summary>
        /// <param name="runtimeContext">The runtime context.</param>
        /// <param name="taskContext">The task execution context.</param>
        /// <returns>The async <see cref="Task"/>.</returns>
        public async Task Execute(RuntimeContext runtimeContext, TaskContext taskContext)
        {
            await Macro.SubstituteTokensInJObject(runtimeContext, taskContext, Resource.ResourceDefinition);

            var deployer    = new ResourceDeployer(runtimeContext, Resource.ResourceId, Resource.ResourceType);
            var resourceLog = await deployer.DeployAndWait(Resource.ResourceDefinition);

            taskContext.Log.Resources.Add(resourceLog);
            taskContext.ResourcesProperties.Add(resourceLog.ResourceId, resourceLog.Details);

            if (resourceLog.DeploymentStatus == ResourceLogStatus.Failed)
            {
                taskContext.Log.Status = DeploymentLogStatus.Failed;
            }
        }
Example #3
0
        /// <summary>
        /// Executes the task.
        /// </summary>
        /// <param name="runtimeContext">The runtime context.</param>
        /// <param name="taskContext">The task execution context.</param>
        /// <returns>The async <see cref="Task"/>.</returns>
        public async Task Execute(RuntimeContext runtimeContext, TaskContext taskContext)
        {
            if (ExistingResources == null)
            {
                return;
            }

            foreach (var existingResource in ExistingResources)
            {
                existingResource.ExistingCaasId = await Macro.SubstituteTokensInString(runtimeContext, taskContext, existingResource.ExistingCaasId);

                var deployer = new ResourceDeployer(runtimeContext, existingResource.ResourceId, existingResource.ResourceType);
                var resource = await deployer.Get(existingResource.ExistingCaasId);

                taskContext.ResourcesProperties.Add(existingResource.ResourceId, resource);
            }
        }