-
Notifications
You must be signed in to change notification settings - Fork 2
Deploy script workflow
Isaac Hill edited this page Sep 4, 2023
·
16 revisions
Scripts needed are in: \\isis\shares\ISIS_Experiment_Controls_Public\ibex_utils\installation_and_upgrade
some instruments it might want instead if not default on cclrc.ac.uk
\\isis.cclrc.ac.uk\shares\ISIS_Experiment_Controls_Public\ibex_utils\installation_and_upgrade
- Remote desktop in:NDXinstrumentName
- Open git-bash
- cd into
C:\Instrument\Apps\EPICS - Run
git status - Run
git diff - Ask senior team member if any of the deleted/new/modified files are of note and record the ones that are, to deal with later.
- cd into
- Run deploy script in the tools' dir, instrument_deploy.bat, double click.
| Config step (in order of script) | Instruction (y/n) | Comment |
|---|---|---|
| Confirm new version | y if correct | N/A |
| Record LabView VIs | y | Take screenshots of blocks and relevant information such as motors in some cases. (for future reference) |
| Save motor parameters | y | Saves into csv file at C:\Instrument\var\deployment_pv_backups\motors\
|
| Save block params | y | Saves into csv file at C:\Instrument\var\deployment_pv_backups\
|
| Save block server to file | y | It'll now save existing installation |
| Update Git | y | It will need an admin account password for the instrument |
| Update Java | y | This will be manual: go to \\isis\shares\ISIS_Experiment_Controls_Public\third_party_installers\ and install the latest version of Java. You can find some more info here: https://github.com/ISISComputingGroup/ibex_developers_manual/wiki/Upgrade-Java
|
| Backup dirs | y | This might take a long time. Close any window that have it open. The dir. Find size of epics i apps dir and then find size of backup in data and then old to find out its stage |
| Manually check Python installation | y |
Python will not exist but Python3 will, which the script will realise and back up |
| Verfy backup | y | N/A |
| Backup database | y | N/A |
| Truncate database | y | N/A |
| Start ibex server install | y | N/A |
| Keep old Galil driver | y/n | If you have a the file ioc\master\GALIL\GALIL_OLD.txt then YES if not ask a team member |
| Update ICP | y | N/A |
| Upgrade ICP found in LabView | y | Needs admin passowrd |
| Install genie_python | y | N/A |
| Install MySQL | y | N/A |
| Install ibex client with built-in python | y | N/A |
| Update instrument config | y | N/A |
| Automatic config merge | y | N/A |
| Update calibration repo | y | N/A |
| Apply release notes | y | N/A |
| Update release notes | y | N/A |
| Reapply hotfixes | yes if any to reapply | See "Reapply Hotfixes" section |
| Update script generator script definitions | y | N/A |
| Start ibex GUI | y | N/A |
| Restart vis | yes | N/A |
| Client release test | y | N/A |
| Check version | y | Navigate to Help - > About |
| Confirm genie python works | y | In scripting tab run g.cshow() correctly and run as well in C:\Instrument\Apps\Python 3\genie_python.bat
|
| Confirm config is consistent | y | N/A |
| Check web links work | y | N/A |
| Switch instrument to one correct one without NDX prefix | y | N/A |
| Verify the server is up | y | May need to refresh the PVs |
| Client release tests | n | N/A |
| Server release tests | y | N/A |
| Confirm blocks logging as expected | y | Navigate to C:\Data\[RUN NUMBER]
|
| Confirm correct branch | y | Open git bash and cd to EPICS |
| Check web dashboard | y | N/A |
| Run config checker | y | N/A |
| Save motor params if applicable | y/n | N/A |
| Save block params | y | N/A |
| Set username & password | n | N/A |
| Set autostart script | n | N/A |
| Inform scientists | n | You can if you want but generally done in release messages |
- Open git bash.
- For each file you noted in the pre-script hotfixes instruction
- Run
git diffbetween the file in the NEW EPICS dir and theC:\Data\Old\dir - Use the outcome and response table to evaluate the file
- Run
| Outcome for each file of note | Response |
|---|---|
| Returns nothing | Must be part of release so nothing to do |
Different but you have checked the repo and found a forgotten pull request that matches (you curl [URL] the url of the raw file in the PR and run git diff between old and this PR file) |
Merge the pull request. Update submodule (pull latest with merge completed), go to EPICS dir and git add .and push this version of EPICS with the updated submodule version |
| Different but no open PR | Ask team member whether okay to leave or if it needs to be copied to new install and a PR (and potentially a ticket) to be made |
| Config step | Instruction (y/n) | Comment |
|---|---|---|
| Stop ibex server | y | N/A |
Run truncate_database.db
|
y | In \\isis\shares\ISIS_Experiment_Controls_Public\ibex_utils\installation_and_upgrade\
|
| Truncate db | y | The previous step was just the backup |