public static async Task RunKubectl()

in src/Cli/func/Kubernetes/KubectlHelper.cs [58:90]


        public static async Task<(string Output, string Error, int ExitCode)> RunKubectl(string cmd, bool ignoreError = false, bool showOutput = false, string stdIn = null, TimeSpan? timeout = null)
        {
            var kubectl = new Executable("kubectl", cmd);
            var sbError = new StringBuilder();
            var sbOutput = new StringBuilder();

            var exitCode = await kubectl.RunAsync(l => Output(l), e => Error(e), stdIn: stdIn, timeout: timeout);

            if (exitCode != 0 && !ignoreError)
            {
                throw new CliException($"Error running {kubectl.Command}.\n" +
                    $"output: {sbOutput.ToString()}\n{sbError.ToString()}");
            }

            return (sbOutput.ToString().Trim(), sbError.ToString().Trim(), exitCode);
            void Output(string line)
            {
                sbOutput.AppendLine(line);
                if (showOutput && line != null && !string.IsNullOrWhiteSpace(line.Trim()))
                {
                    ColoredConsole.WriteLine(line.Trim());
                }
            }

            void Error(string line)
            {
                sbOutput.AppendLine(line);
                if (showOutput && line != null && !string.IsNullOrWhiteSpace(line.Trim()))
                {
                    ColoredConsole.Error.WriteLine(line);
                }
            }
        }