- 
                Notifications
    
You must be signed in to change notification settings  - Fork 2
 
Deploy script workflow
        Isaac Hill edited this page Sep 6, 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' directory, 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 directories | 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 | 
| Verify 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 password | 
| 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 |