This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
services:paddles [2021/10/05 13:53] djgalloway |
services:paddles [2026/07/07 20:28] (current) djgalloway |
||
|---|---|---|---|
| Line 3: | Line 3: | ||
| paddles is a very simple JSON-based API used to report teuthology test results. See https://github.com/ceph/paddles | paddles is a very simple JSON-based API used to report teuthology test results. See https://github.com/ceph/paddles | ||
| - | The service runs on a baremetal host, [[hardware:infrastructure#pulpitofrontsepiacephcom|pulpito.front.sepia.ceph.com]] from ''/home/ubuntu''. | + | The service runs on a baremetal host, [[hardware:infrastructure#pulpitofrontsepiacephcom|pulpito.front.sepia.ceph.com]], deployed via the ceph-cm-ansible role: https://github.com/ceph/ceph-cm-ansible/tree/main/roles/paddles |
| + | It is operated by ''docker service'': https://docs.docker.com/engine/reference/commandline/service/, utilizing replication, health checks, and automatic rollbacks. | ||
| ===== Backups ===== | ===== Backups ===== | ||
| The 'paddles' db is backed up daily by the [[services:backups#backupsh|backup.sh]] script on gitbuilder-archive. | The 'paddles' db is backed up daily by the [[services:backups#backupsh|backup.sh]] script on gitbuilder-archive. | ||
| Line 11: | Line 12: | ||
| ===== Admin Tasks ===== | ===== Admin Tasks ===== | ||
| - | ==== Starting/Restarting service ==== | ||
| - | <code> | ||
| - | ssh ubuntu@paddles.front.sepia.ceph.com | ||
| - | sudo supervisorctl stop|stop|restart paddles | ||
| - | </code> | ||
| ==== Updating/Fixing Zombie Jobs ==== | ==== Updating/Fixing Zombie Jobs ==== | ||
| Line 23: | Line 19: | ||
| <code> | <code> | ||
| - | ssh paddles.front.sepia.ceph.com | + | oc exec -n paddles $(oc get pods -n paddles -o name | grep -v build | head -1) -- pecan expire_jobs config.py -q 14 -r 30 |
| - | sudo docker exec -it $(docker ps | grep paddles | head -n 1 | awk '{ print $1 }') sh -c "pecan expire_jobs config.py -q 14 -r 30" | + | |
| </code> | </code> | ||
| ==== Adding testnodes to the inventory/DB ==== | ==== Adding testnodes to the inventory/DB ==== | ||
| - | From your workstation, | + | From your workstation or anywhere with a valid ''teuthology.yaml'', |
| <code> | <code> | ||
| Line 42: | Line 37: | ||
| ==== Upgrade Paddles ==== | ==== Upgrade Paddles ==== | ||
| - | <code> | + | The paddles API / Web UI services live in Openshift in the ''paddles'' namespace. There is a cronjob that checks quay.io/ceph/paddles for a new image every 5 minutes. The ImageStream will automatically deploy any new images. See https://github.com/ceph/sepia-openshift/tree/main/paddles |
| - | ssh pulpito.front.sepia.ceph.com | + | |
| - | sudo su - ubuntu | + | |
| - | sudo supervisorctl stop paddles | + | |
| - | cp -r paddles paddles.$(date -u +%F).backup | + | |
| - | cd paddles | + | |
| - | git pull | + | |
| - | source virtualenv/bin/activate | + | |
| - | python setup.py develop | + | |
| - | deactivate | + | |
| - | sudo supervisorctl start paddles | + | |
| - | </code> | + | |