Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deployment 2021-1.0 checklist #13

Open
15 of 22 tasks
cryos opened this issue Jan 12, 2021 · 2 comments
Open
15 of 22 tasks

Deployment 2021-1.0 checklist #13

cryos opened this issue Jan 12, 2021 · 2 comments
Assignees

Comments

@cryos
Copy link

cryos commented Jan 12, 2021

Current workstations

  • xf18id-ws1 # ?
  • xf18id-ws2 # Collection machine
  • xf18id-ws3 # ?
  • xf18id-ws4 # ?

Previsit

  • Make sure that the current latest environments are pushed to all the bl machines
  • Skim the IPython startup files in profile_collection
    • Check if it's safe to start bsui remotely (does it touch any hardware?) - use git grep .put or git grep caput
  • Check for outstanding PRs and issues on beamline repos
  • Branch https://github.com/NSLS-II/playbooks for the purpose of updating the FXI current_env_tag in the production file

Housekeeping

  • Update conda
    $ su - <your-controls-account>
    $ sudo su -
    # conda activate base  # should be activated by default, but just in case.
    # conda install conda -c https://repo.anaconda.com/pkgs/main/
    
  • Add BL staff to the BL GitHub organization as owners
  • Work with BL staff to commit any un-committed changes to their profiles
  • Tag the profile_collection repository as-found as 2020C2.1
    $ git tag -a 2020C2.1
    Enter a message such as Before 2021C1.0 deployment.
  • Discuss with BL staff which conda envs they want to keep/delete and perform the cleanup
  • Check/update the beamline's workstation inventory with the BL staff (in https://github.com/NSLS-II/playbooks/blob/master/production)
  • In ~/.bashrc, if necessary, update the logging environment variables to use directory /var/log/bluesky/... and add umask 0002.
    umask u=rwx,g=rwx,o=rx  # 0002
    export BLUESKY_LOG_FILE=/var/log/bluesky/bluesky.log
    export BLUESKY_IPYTHON_LOG_FILE=/var/log/bluesky/bluesky_ipython.log
    
    and (if needed) create that directory with the following permissions and ownership:
    sudo mkdir /var/log/bluesky
    sudo chown -Rv xf18id:xf18id /var/log/bluesky
    sudo chmod -Rv g+rws /var/log/bluesky
    
    Remember to source ~/.bashrc.
  • Remove explicit setting of ophyd logging level from the first startup script
  • Double-check that if there is an open PR removing handlers, it is merged (and tested).
  • Update vendored copy of PersistentDict to bug-fixed version (see the updated gist snippet: https://gist.github.com/jklynch/a4366b8900ec0c03883403455ae711b2).
  • Make sure all repos have the BSD-3-Clause licenses (see Add a BSD-3-Clause license NSLS-II-SRX/profile_collection#16 as an example)

Test deployment

  • Run profile against new environment
 $ BS_ENV=collection-2021-1.0 bsui

It may be necessary to disable jedi in ipython. Add this to the ipython command line arguments inbsui:

--IPCompleter.use_jedi=False
  • Update the profile as needed to run
  • Test databroker v2
    from databroker import catalog
    cat = catalog['fxi']
    cat[-1].primary.read()
    
  • Run acceptance tests (if any) and run a representative set of scans for the beamline

Finish

@cryos
Copy link
Author

cryos commented Jan 15, 2021

Unable to run acceptance tests due to detectors etc being unavailable. Leaving with updated environment, but default to the old environment. We will change the environment default after tests have been run.

@mrakitin
Copy link
Member

CI is enabled and updated via #14.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants