示例#1
0
        public async Task UninstallModule(IModuleManagerConfig config)
        {
            _logHandler.AttachTaskIdAndUpdateHandler(config.TaskId, config.UpdateCallback);

            await _logHandler.WriteCmd($"{nameof(ModuleManager)}.{nameof(UninstallModule)}", verboseLogging);

            // check if the deployment exists, if not just reply with a response.success seeing as the module uninstall can go through
            var result = await _kubectlHelper.GetDeployment(config.ModuleName);

            if (result == null)
            {
                await config.SuccessCallback(config.TaskId, _logHandler);

                return;
            }

            var response = await _kubectlHelper.UninstallModule(config.ModuleName);

            if (response.IsSuccessful)
            {
                await config.SuccessCallback(config.TaskId, _logHandler);
            }
            else
            {
                await _logHandler.WriteLine(response.Message);

                await config.FailureCallback(config.TaskId, _logHandler);
            }
        }
示例#2
0
        public async Task DeployModule(IModuleManagerConfig config)
        {
            _logHandler.AttachTaskIdAndUpdateHandler(config.TaskId, config.UpdateCallback);

            await _logHandler.WriteCmd($"{nameof(ModuleManager)}.{nameof(DeployModule)}", verboseLogging);

            var response = await _kubectlHelper.InstallModule(KubectlHelper.CreateModuleDeployment(
                                                                  config.ImageName,
                                                                  config.ModuleName,
                                                                  config.ModuleReplicas), config.LoadBalancerConfig);

            if (response.IsSuccessful)
            {
                await config.SuccessCallback(config.TaskId, _logHandler);
            }
            else
            {
                await _logHandler.WriteLine(response.Message);

                await config.FailureCallback(config.TaskId, _logHandler);
            }
        }