public async Task <int> RunAsync(PackingParameters parameters, CancellationToken cancellationToken) { PackingParameters = parameters; PrepareEnvironment(); var codeFactory = new CodeFactory(new ITemplateCodeProvider[] { new NSwagTemplateCodeProvider(), new UrsaTemplateCodeProvider() }, parameters); var code = await codeFactory.CreateCodeAsync(cancellationToken); await new DotnetProjectBuilder(code) .BuildAsync(cancellationToken); var nugetWorker = new NugetPackageWorker(); await nugetWorker.PackAsync(cancellationToken); await nugetWorker.PushAsync(cancellationToken); return(0); }