dotnet-ci
dotnet-ci copied to clipboard
Create automated setup process for new CI instances
We should create an automated process for new CI instances. Here are the general steps. Some of this is already available:
- Create a new VM in Azure with correct cloud services, endpoints, etc. Endpoint scripting is already available in dotnet-ci-internal repo (management\master)
- Add disks to the VM for Jenkins data.
- Use Chef or some other automated way to install Jenkins upon the creation and boot up of the VM.
- Automate modification of the Jenkins setup (location of data, startup options etc.)
- Automate installation of the standard set of plugins (this could be restored from a backup, it is copyable)
- Start Jenkins
- Automate startup of basic settings, including security, setup of the azure cloud. etc.
Alternatively, it may be that key config files and directories could simply by identified, tarred up from the main installation and applied. For instance, if I took everything from the Jenkins directory except for the jobs and fingerprints, I believe I would have a full installation. It would slightly be tied to the server name, but that could be customized by editing afterwards.
Anyways, the really critical stuff here is:
- creds
- plugins
- main system config