FreedomBox/Debugging: Difference between revisions

From Wiki
(Add commad to run unit tests continuously)
(Minor edit)
Line 78: Line 78:


====Continuously run unit tests during development====
====Continuously run unit tests during development====
* Install the package *entr* from Debian.
* Install the package '''entr''' from Debian.
* Run this command in a module directory, such as ''plinth/modules/mediawiki/''
* Run this command in a module directory, such as ''plinth/modules/mediawiki/''
<pre>
<pre>
Line 87: Line 87:
====Clean all __pycache__ files====
====Clean all __pycache__ files====
<pre>
<pre>
find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf
find . | grep -E (__pycache__|\.pyc|\.pyo$) | xargs rm -rf
</pre>
</pre>



Revision as of 08:58, 2 October 2020

Development and Debugging

Starting from scratch

vagrant destroy -f;
vagrant box remove freedombox/plinth-dev;
vagrant up;
vagrant provision

Resetting the VM

vagrant destroy -f && vagrant up && vagrant reload && vagrant ssh


To uninstall diaspora

apt remove --purge diaspora diaspora-common && echo "delete from plinth_module where name='diaspora';" | sqlite3 /var/lib/plinth/plinth.sqlite3


To run in debug (autoreload) mode (doesn't work for files under actions/ folder)

sudo -u plinth /vagrant/run --develop 


To open a file in emacs as root@vagrant

mkdir /root/.ssh 
cp /home/vagrant/.ssh/authorized_keys /root/.ssh


Run only one test

./setup.py test -s plinth.modules.sso.tests.test_auth_pubtkt_util.TestAuthPubTKTUtil.test_create_key_pair

Using pytest

py.test-3 -q -s plinth/modules/backups/tests/test_ssh_remotes.py


Vagrant box download for plinth-dev

wget -O ~/FreedomBox/plinth-dev.box https://app.vagrantup.com/freedombox/boxes/plinth-dev/versions/<version>/providers/virtualbox.box


To use the local box instead of downloading from repo

vagrant box add --name freedombox/plinth-dev <box name>


Turning off mac address randomization in Network Manager

Add this line to all files in /etc/NetworkManager/system-connections under wifi or ethernet or whatever.

mac-address-randomization=0


Login into ttrss Postgresql database

sudo -n -u postgres /bin/bash postgres
psql -d ttrss -U ttrss -h localhost


Restart BuildBot server after making changes

This command should be run from the directory that contains the file master.cfg

buildbot checkconfig && (buildbot stop; buildbot upgrade-master; buildbot start)

Continuously run unit tests during development

  • Install the package entr from Debian.
  • Run this command in a module directory, such as plinth/modules/mediawiki/
find . -name '*.py' | entr -s 'py.test-3'


Clean all __pycache__ files

find . | grep -E (__pycache__|\.pyc|\.pyo$) | xargs rm -rf


Reload browser tab automatically

fd -e html -e css | entr reload-browser Firefox

Remove deleted loopback devices

dmsetup remove_all