Handbook updates

This commit is contained in:
Philip Sargent
2022-02-27 22:17:18 +00:00
parent 32e9db4a2c
commit 1c0c2ebb3f
14 changed files with 129 additions and 84 deletions

View File

@@ -58,44 +58,24 @@ expoweb (repo)
<p>
See the live report on which urls resolve to which actual folders at <a href="/pathsreport">pathsreport</a>.
<h4 id="js">Javascript</a></h4>
There are javascript packages installed directly on the operating system on the server, i.e. in<br>
<code>/usr/share/javascript</code>
which are used by some <var>expoweb</var> pages:
<ul>
<li><var>CaveScript</var> for showing 3D views of cave centreline data,
<li><var>CodeMirror</var> for syntax-colouring survex files
<li><var>openlayers</var> for geographic mapping integration, for out slippy map showing paths and entrances at <a href="/map/map.html">/map/map.html</a>
<li><var>leaflets</var> and experimental mapping test (only on /map/index-leaflet.html )
</ul>
These javascript packages are not documented but some are mentioned in <a href="troglaptop.html">the soft dev laptop</a> configuration.
<p>Currently installed on the server (October 2021) are the following javascript packages which are <em>not used at all by troggle or any of the expo website</em>:
<ul>
<li>jquery
<li>jquery-ui
<li>mootools
<li>sphinxdoc
<li>underscore
</ul>
<p>Presumably these are used by something else hosted on the server ? Anyway, if you are setting up a new troggle sever you don't need them.
<h3 id="what">Server configuration: software</a></h3>
<ul>
<li>apache webserver *
<li>expofiles *
<li>MySQL/MariaDB database *
<li>packaged javascript
<li>cgit (live webpage showing git status of repos) - <a href="https://git.zx2c4.com/cgit/about/">qit.zx2c4.com/cgit</a>
<li>Makefile (obsolete?)
<li><b>apache webserver *</b>
<li><b>expofiles *</b>
<li><b>MySQL/MariaDB database *</b>
<li><a href="#xapian">xapian</a> (search function) - <a href="https://xapian.org/">xapian.org</a>. Wookey did this in 2020.
<li><a href="#kanboard">kanboard</a> (task planning) - <a href="https://kanboard.org/">kanboard.org</a>. Wookey did this in 2022.
<li><a href="#boe">boe</a> (bank of expo - not troggle)
<li><a href="#cgit">cgit</a> (live webpage showing git status of repos) - <a href="https://git.zx2c4.com/cgit/about/">qit.zx2c4.com/cgit</a>
<li>bins (used to regenerate the photo albums)
<li>packaged javascript
<li>cron
<li>xapian (search function) - <a href="https://xapian.org/">xapian.org</a>. Wookey did this in 2020.
<li>boe (bank of expo - not troggle)
<li>Makefile (obsolete?)
<li><a href="#runserver">Running a test Troggle server</a>
</ul>
* These are essential to make troggle work at all.
<b> * These are essential</b> to make troggle work at all.
<p>The server configuration scripts are in the file <var>troggle/debian/serversetup</var> and are also
documented with notes in <var>troggle/README.txt</var>. It is intended that the full documentation will
@@ -373,20 +353,71 @@ expofiles
├── 2019
└── 2021</textarea></code>
<h3>cron</h3>
<h3 id="js">Javascript</a></h3>
There are javascript packages installed directly on the operating system on the server, i.e. in<br>
<code>/usr/share/javascript</code>
which are used by some <var>expoweb</var> pages:
<ul>
<li><var>CaveScript</var> for showing 3D views of cave centreline data,
<li><var>CodeMirror</var> for syntax-colouring survex files
<li><var>openlayers</var> for geographic mapping integration, for out slippy map showing paths and entrances at <a href="/map/map.html">/map/map.html</a>
<li><var>leaflets</var> and experimental mapping test (only on /map/index-leaflet.html )
</ul>
These javascript packages are not documented but some are mentioned in <a href="troglaptop.html">the soft dev laptop</a> configuration.
<p>Currently installed on the server (October 2021) are the following javascript packages which are <em>not used at all by troggle or any of the expo website</em>:
<ul>
<li>jquery
<li>jquery-ui
<li>mootools
<li>sphinxdoc
<li>underscore
</ul>
<p>Presumably these are used by something else hosted on the server ? Anyway, if you are setting up a new troggle sever you don't need them.
<h3 id="xapian">Search: xapian</h3>
<p>Installed independently of troggle simply with <var>apt install xapian-omega</var> and
then configured into the troggle-generated menus in <var>css/main2.css</var>.
You can see it at the bottom of the top-left menu on this page and on nearly all pages of the handbook.
The function is
connected with an apache configuration
<code>ScriptAlias /search /usr/lib/cgi-bin/omega/omega</code> in <var>~expo/config/apache/expo.conf</var>.
Installed by Wookey in May 2020.
<h3 id="kanboard">Planning: kanboard</h3>
<p>This is installed on the server and accessed at <a href="/kanboard"><var>/kanboard</var></a> It is an open source
equivalent of the Trello kanban card task planning system. The 2022 expo uses
<a href="https://trello.com/b/WddB62HI/expo-jobs">Trello itself</a> (separate login required) but we intend to move to our own kanboard
from 2023.
<h3 id="boe">boe</h3>
<p>This is a perl script, and served by the webserver using the url apache configuration<pre><code>#bank of expo
#current expedition
ScriptAlias /boe /home/expo/boe/boc/boc.pl
&lt;Directory /home/expo/boe/boc&gt;
AddHandler cgi-script .pl
SetHandler cgi-script
Options +ExecCGI
Require all granted
&lt;/Directory&gt;</code></pre> in <var>~expo/config/apache/expo.conf</var>.
<p>Handbook documentation for its use is at <a href="../bankofexpo.html">The Bank of Expo</a>.
<h3 id="cgit">cgit - web interface to server git repos</h3>
<p>This is a compiled executable written in C which, like boe, is installed as an Apache CGI redirection.
The installation instructions are at <a href="https://git.zx2c4.com/cgit/tree/README">https://git.zx2c4.com/cgit/tree/README</a>
but we use the Debian package <a href="https://packages.debian.org/stable/cgit">https://packages.debian.org/stable/cgit</a>.
<h3>cron - automatically run tasks to schedule</h3>
<p>This is currently disabled in Feb. 2022. If you need anything that would be done frequently (e.g. bins) you currently have to run it manually.
<p>The server runs it's hourly, daily and weekly scripts using the anacron system. In
<var>~expo/config/cron/</var> on the server, there are <var>expo.hourly</var>
and <var>expo.daily</var> scripts and these are (or should be) launched at the appropriate times by
the server root from <var>/etc/crontab</var>. This is not obviously working on the server at present.
<h3>Search: xapian</h3>
<p>Installed independently of troggle simply with <var>apt install xapian-omega</var> and
then configured into the troggle-generated menus in <var>css/main2.css</var>. The function is
connected with an apache configuration
<code>ScriptAlias /search /usr/lib/cgi-bin/omega/omega</code> in <var>~expo/config/apache/expo.conf</var>.
Installed by Wookey in May 2020.
<h3>Running a test Troggle server</h3>
<h3 id="runserver">Running a test Troggle server</h3>
<p>
For high volume use, Troggle should be run using a web server like apache.
However, a quick way to get started is to use the development server built into Django.
@@ -405,16 +436,6 @@ gunicorn also works. This runs with 9 workers (suitable for a 4-core processor,
$ gunicorn --reload -w 9 -b :8000 wsgi
</code>
<h3>boe</h3>
<p>This is a perl script, and served by the webserver using the url apache configuration<code><pre>#bank of expo
#current expedition
ScriptAlias /boe /home/expo/boe/boc/boc.pl
&lt;Directory /home/expo/boe/boc&gt;
AddHandler cgi-script .pl
SetHandler cgi-script
Options +ExecCGI
Require all granted
&lt;/Directory&gt;</pre></code> in <var>~expo/config/apache/expo.conf</var>.
<hr />
Return to: <a href="trogdesign.html">Troggle design and future implementations</a><br />