Difference between revisions of "Documentation/Nightly/Developers/Factory"
Line 208: | Line 208: | ||
Remote access: Via Remote Desktop from Kitware internal network (10.171.2.245). | Remote access: Via Remote Desktop from Kitware internal network (10.171.2.245). | ||
+ | |||
+ | |||
+ | |||
+ | =Maintenance= | ||
+ | |||
+ | == Check Virtual Machines (factory-south-ubuntu and factory-south-win7) == | ||
+ | |||
+ | === When === | ||
+ | |||
+ | Every day (or as soon as issues are suspected) | ||
+ | |||
+ | === What === | ||
+ | |||
+ | * Try to: | ||
+ | ** SSH into factory-south-ubuntu | ||
+ | ** RDP into factory-south-win7 | ||
+ | |||
+ | * If failure: | ||
+ | ** Connect to <code>factory.south</code> and check the state of the virtual machines. | ||
+ | |||
+ | * Are the virtual machine unresponsive ? | ||
+ | |||
+ | * '''No''' -> No further action required | ||
+ | * '''Yes''' -> Read below | ||
+ | ** Kill both VMs | ||
+ | ** Restart the host (factory-south) | ||
+ | ** Manually start the virtual machines | ||
+ | ** If needed, manually restarts the nightly build (See below) | ||
+ | |||
+ | == Manually restart the night builds == | ||
+ | |||
+ | If the factory machines were restarted after the regular Nightly startup time, the nightly scripts will have to be explicitly started. | ||
+ | |||
+ | * Linux: Run <code>/home/kitware/Dashboards/DashboardScripts/factory-south-ubuntu.sh</code> | ||
+ | |||
+ | * MacOSX: Run <code>/Users/kitware/DashboardScripts/factory.sh</code> | ||
+ | |||
+ | * Windows: Open "Task Scheduled" -> slicer -> right click on "Nightly" -> Start | ||
+ | |||
+ | == Nightly Build startup times == | ||
+ | |||
+ | * Linux: 11:10pm | ||
+ | |||
+ | * MacOSx: 11:10pm | ||
+ | |||
+ | * Windows: Midnight |
Revision as of 14:55, 20 December 2016
Home < Documentation < Nightly < Developers < Factory
For the latest Slicer documentation, visit the read-the-docs. |
Overview
The Slicer factory machine is maintained by Kitware and produces dashboard builds of many software projects, including nightly, continuous, and packaged versions of Slicer and its approved extensions. See the Slicer4 dashboard.
These builds are generated every day on three different operating systems: Windows 7, Mac OS X, and Linux. Because it is not legal to run any version of Mac OS X on a virtual machine (unless its host also runs Mac OS X), the host OS is Mac OS X, and the Windows and Linux builds are run within this machine as virtual machines.
Required factory components
Host(s)
factory.kitware
Software
The factory machine runs Mac OS X v10.6.8, Snow Leopard.
- CMake version: 3.5.0-rc3 with this patch
- Compiler llvm-3.1. Note that the default compiled shipped with XCode 4.2 is not used. See here for more details.
- Tasks scheduled using cron
Remote access: Via SSH or VNC from Kitware internal network (192.168.113.230).
Hardware
- "Mac Pro (Mid 2010)" which has the 64-bit kernel enabled by default. See here for details.
Processor
- 2 x 2.93 GHz 6-Core Intel Xeon
Graphics Card
- Chipset Model: ATI Radeon HD 5770
- Type: GPU
- Bus PCIe
- VRAM (total): 1024MB
- EFI Driver Version: 01.00.436
Memory
- 8 x 4GB = 32GB
- Type: DDR3 ECC
- Speed: 1333 MHz
factory-south.kitware
Software
The factory machine runs Mac OS X 10.11.6 (15G31), El Capitan
- Tasks scheduled using cron
The virtual machines are run using the Parallels Desktop 11.
- Note that Parallels Desktop supports OpenGL 2.1 only (not higher)
Remote access: Via SSH or VNC from Kitware internal network (10.171.2.166).
Hardware
Processor
- 2 x 2.4 GHz 6-Core Intel Xeon
Graphics Card
- Chipset Model: ATI Radeon HD 5770
- Type: GPU
- Bus PCIe
- VRAM (total): 1024MB
- EFI Driver Version: 01.00.436
Memory
- 8 x 8GB = 64 GB
- Type: DDR3 ECC
- Speed: 1333 MHz
VM: Linux
factory-south-ubuntu.kitware
- Ubuntu 10.04
- CMake version: 3.5.0-rc3
- GCC version: Ubuntu 4.4.3-4ubuntu5.1
- Tasks scheduled using cron
- Processors: 5
- Memory: 10GB
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 10.04.4 LTS Release: 10.04 Codename: lucid
These two compilers are available:
gcc/g++ 4.4.3
/usr/bin/cpp-4.4 /usr/bin/g++-4.4 /usr/bin/gcc-4.4 /usr/bin/gcov-4.4 /usr/bin/x86_64-linux-gnu-cpp-4.4 /usr/bin/x86_64-linux-gnu-g++-4.4 /usr/bin/x86_64-linux-gnu-gcc-4.4
- In the PATH:
$ gcc --version gcc (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3 $ g++ --version g++ (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3
gcc/g++ 4.6.4
/usr/bin/cpp-4.6 /usr/bin/g++-4.6 /usr/bin/gcc-4.6 /usr/bin/gcov-4.6 /usr/bin/x86_64-linux-gnu-cpp-4.6 /usr/bin/x86_64-linux-gnu-g++-4.6 /usr/bin/x86_64-linux-gnu-gcc-4.6
Installed following these instructions:
- https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test?field.series_filter=lucid
- http://superuser.com/questions/310809/how-can-i-update-gcc-to-the-latest-version-in-ubuntu-10-04/394811#394811
sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get update sudo apt-get install gcc-4.6 sudo apt-get install g++-4.6
Remote access
Remote access: Via SSH or VNC from Kitware internal network (10.171.2.113).
VM: Windows 7
- Tasks are scheduled using the Windows Task Scheduler (Start->All Programs->Accessories->System Tools->Task Scheduler)
- On Windows, instead of bash, we use batch scripts comprised of commands to call ctest to run all the nightly scripts.
factory-south-win7.kitware
- Windows 7 Ultimate N - Service Pack 1 (Build 7601) on an x86 platform.
- CMake version: 3.5.0-rc3
- Compiler: VS2013 Community Edition
- Processors: 6
- Memory: 16GB
Also, keep in mind the Documentation/Nightly/Developers/Tutorials/DashboardSetup#Remarks remarks about building a dashboard on a Windows machine. These all apply here.
Remote access: Via Remote Desktop from Kitware internal network (10.171.2.245).
Maintenance
Check Virtual Machines (factory-south-ubuntu and factory-south-win7)
When
Every day (or as soon as issues are suspected)
What
- Try to:
- SSH into factory-south-ubuntu
- RDP into factory-south-win7
- If failure:
- Connect to
factory.south
and check the state of the virtual machines.
- Connect to
- Are the virtual machine unresponsive ?
- No -> No further action required
- Yes -> Read below
- Kill both VMs
- Restart the host (factory-south)
- Manually start the virtual machines
- If needed, manually restarts the nightly build (See below)
Manually restart the night builds
If the factory machines were restarted after the regular Nightly startup time, the nightly scripts will have to be explicitly started.
- Linux: Run
/home/kitware/Dashboards/DashboardScripts/factory-south-ubuntu.sh
- MacOSX: Run
/Users/kitware/DashboardScripts/factory.sh
- Windows: Open "Task Scheduled" -> slicer -> right click on "Nightly" -> Start
Nightly Build startup times
- Linux: 11:10pm
- MacOSx: 11:10pm
- Windows: Midnight