Skip to content
Ethan Coon edited this page Aug 24, 2023 · 7 revisions

Watershed Workflow Wiki

This is for both users and developers...

FAQ

Q: When I run jupyter lab in the docker container, my tokens aren't recognized and I get prompted for a password or token.

A: For some reason, it seems that having jupyter lab servers open on the local system before starting the docker container can break the token processing. Try closing any jupyter lab/notebook servers on the local system before starting the docker container's jupyter lab.

Q: All of my downloads are failing with self-signed certificate errors.

A: First, try updating your certifi package via mamba update certifi. If that doesn't work, it is likely you are a lab employee and your lab is managing certificates for you. Frequently this does not play nicely with python-based packages, which don't detect the certificates. First you have to find the certificates, which is likely OS and tool specific. ORNL, for instance, uses Netskope, which places certificates in /Library/Application\ Support/Netskope/STAgent/data/nscacert.pem. When you find the relevant pem file, place it in the following environment variables:

export SSL_CERT_FILE=/Library/Application\ Support/Netskope/STAgent/data/nscacert.pem
export REQUESTS_CA_BUNDLE=/Library/Application\ Support/Netskope/STAgent/data/nscacert.pem

Hopefully this does the trick!

Developer Notes

How to Release

Note that tasks with the same number can be done simultaneously.

First, ensure environments are up to date:

  1. Rebuild documentation cd docs; make html

  2. Run scripts to get the environments: environments/create_linux_envs.sh and environments/create_osx_envs.sh

  3. Run tests to make sure new environments don't break the build.

    conda activate watershed_workflow_DEV-DATE
    pip install -r requirements.txt
    pytest watershed_workflow
    
  4. Push to master / do pull request on master.

  5. Check docs are properly updated on github

  6. Manually launch actions to build the CI-Env and User-Env docker containers, tagged as master.

Cut the branch:

  1. Create a new branch, vMAJOR.MINOR
  2. Commit and push the new branch.
  3. Manually launch actions to build the CI-Env and User-Env docker containers, tagged as vMAJOR.MINOR, on the new branch.
  4. Create new release and add tag watershed-workflow-MAJOR.MINOR.0 as release version.