I have read the documentation on packaging applications using OctoPack and have a few questions related to some of the MSBuild parameters.
In the examples given, the parameters are supplied via command line. My team (small web application developers) does not typically compile via command line; instead, we simply use the built-in Visual Studio Build Solution (F6) and Rebuild Solution functionality. In order to supply a parameter, such as “RunOctoPack=true”, I manually unloaded the project from the solution, edited the .csproj file to include “true”, and then reloaded the project.
Is there an easier way to supply parameters without using the command line or manually unloading, editing, reloading the project?
Secondly, I am interested in passing parameters so OctoPack automatically pushes the packages directly to the built-in Octopus repository. I originally added “http://MyDeploymentServer/OctopusDeploy/nuget/packages” to the .csproj file and attempted to build, but I received an error stating I need to supply an API Key. I then added “API-MyKey” to the .csproj file, rebuilt, and the package was successfully pushed to the repository.
While everything worked as I had hoped, the API key I used is now visible and any of my team members would be able to see/use it to impersonate me.
What is the proper way to take advantage of this feature without risking exposure of my API key? Is the command line really my only option?
Additional info: my team uses Team Foundation Server 2013, but primarily as a source code repository; we do not have a dedicated build server or use Team Build.