The fossil-scm is both simple and complicated at the same time. By itself it is a very good stand alone SCM. It does lack some features like syntax enabled code editor which I endlessly waited for gitlab to deploy I still never use it. Fossil itself does not offer a ci/cd solution but there are simple workarounds.
simple steps
mkdir -p ~/mnt/fossil
sudo mount -t nfs nas.local:/volume1/fossil $HOME/mnt/fossil
mkdir ~/fossil
fossil clone $HOME/mnt/fossil/vctools.fossil $HOME/fossil/vctools.fossil
mkdir -p ~/src/vctools
cd ~/src/vctools/
fossil open ~/fossil/vctools.fossil
ls
... do some work...
fossil commit -m "a note to self"
Fossil does have a web UI and does support http and https. There are some quirks for password
management and while I have deployed the ui server I am losing interest. I only need the CLI but
from time to time I want to see the timeline or read some markdown. fossil ui is supposed to launch
the local browser.
Normally you would cd to the project directory and then run fossil ui. However, in my case,
most of my development takes place on a remote machine. In that case I need to launch it this way.
Keep in mind that it’s http and if your local network is vulnerable then you might want to use ssh
with some port forwarding.
$ fossil ui -P 0.0.0.0:8080 --nobrowser
Listening for HTTP requests on TCP port 8080
http://0.0.0.0:8080/timeline?c=current
CI/CD
Export the code to a git repository with CI/CD enabled.