I am working on a distributed solution (written in .NET) that includes WCF services, Windows-managed services, and has dependencies on other proprietary and managed solutions. The main goal of the project is to conduct various tests of another distributed system.
The design is deployed with one click in TeamCity. The binary files of the test harness and the distributed system under test go to the shared folder. To deploy it, I have several .bat and powershell scripts that are also in the public folder. I am constantly working on scripts and they are being updated, so I want to save them in the original control.
What are the possible locations for storing deployment scripts?
Now I have a dedicated folder in the solution, but I'm not too sure that this is a good approach. I did not understand how to deploy scripts to a shared folder in each TeamCity assembly.
/ solution
/ app [test harness code]
/ test [unit, functional, integration, capacity tests]
/ deployment
/ scripts [.bat and .ps1 scripts only]
/ TeamCity [copy binaries to share folder on TeamCity]
/ VM [scripts for installation of test harness and unit under test]
UPDATE
The deployment scripts that I'm talking about should be stored in a shared folder on the Team City machine. In test scripts, several virtual machines copy these scripts to local folders and then run them. Depending on the purpose of the script and VM, different copies are executed in the virtual machine and different settings are performed. Scripts are usually <100 lines, but are very different from component to component and are constantly updated.
I store scripts in the folder with Visual Studio solutions without a .csproj file, and therefore they are not copied when Team City checks the code from the repository, and therefore I can not copy them to the shared folder.
source share