Cloud and/or Software Update Notes

This page is to log various infrastructure and/or software updates requested by BCH or us over time.

2024-11-04 (November 04, 2024)

1. Update swap space on both gic01 and gic02

By default, the GIC VMs didn't have any swap space allocated. This is what Alvin and Niel did with Luke of the BCH:

size=$(awk '/MemTotal/ {print int($2 / 1024 / 1024 / 2)}' /proc/meminfo)
sudo fallocate -l "${size}G" /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

Afterwards,

# free -h
              total        used        free      shared  buff/cache   available
Mem:           31Gi        15Gi       6.2Gi       1.0Gi       9.8Gi        14Gi
Swap:          14Gi          0B        14Gi

2. Fix GIC Biosample Portal Bug

CCHMC (Cincinnati Children's Hospital Medical Center) noticed a bug with the Biosample counts on the common area portal. Only BCH has sample counts. All the other institutions had a sample count of zero. This fix is to address that.

  1. Run the PIC-SURE Database Migrations job in Jenkins,
  2. and then restart psama (docker restart psama).

3. Update Jenkins to 2.5.1

This update is to address a recent security bug fix in Jenkins.

  1. cd /home/azureuser/pic-sure-all-in-one
  2. Save any configurations: git stash
  3. Check out the new update: git fetch --tags && git checkout -b v2.5.1 tags/v2.5.1
  4. Restore your configurations: git stash pop
  5. Rebuild Jenkins: ./update-jenkins.sh --rebuild
  6. Run through the initial Jenkins configuration in the UI, click to restart jenkins
  7. Restart Jenkins on the terminal: docker start jenkins

2024-08-07

An update done with Lucas (Luke) Sikina of Boston Children's Hospital (BCH) / Harvard:

This update pulls our authentication logic out of Wildfly and into a separate docker container.

  1. Rebuild Jenkins
    • cd to the pic-sure-all-in-one
    • stash any changes you may have made
    • git fetch --tags
    • git checkout v2.5.0
    • pop and reconcile changes
    • run ./update-jenkins.sh --rebuild
    • walk through the usual Jenkins setup in your browser
  2. Update config file
    • I attached a config file for you to edit on your local computer. all of the values you need to add can be found in /usr/local/docker-config/wildfly/standalone.xml
  3. Update wildfly
    • edit /usr/local/docker-config/wildfly/standalone.xml
    • change the value for global/token_introspection_url to http://psama:8090/auth/token/inspect
  4. Configure $DOCKER_CONFIG_DIR
    • Historically, we've stored configurations in /usr/local/docker-config/. This isn't changing for legacy installs, but we are turning that path into a config var. This allows us to accomidate stuff like developer installs on Macbooks. We need you to set this variable in two places:
      • ~/.bashrc:
        export DOCKER_CONFIG_DIR=/usr/local/picsure/config/ (make sure to source this)
      • Jenkins:
        update the DOCKER_CONFIG_DIR var in http://localhost:8080/manage/configure
  5. Upload config file
    • mkdir $DOCKER_CONFIG_DIR/psama/
    • In Jenkins, run "Upload PSAMA Configuration", attaching the auth.properties you edited in step 2
  6. Check for updates
    • Run "Check for Updates" in Jenkins
  7. Start PIC-SURE
  8. Fix the permissions on the banner config json
    • chmod 755 $DOCKER_CONFIG_DIR/httpd/banner_config.json

Updated on August 7, 2025