[Kwant-devel] new website

Joseph Weston joseph.weston08 at gmail.com
Thu Sep 10 12:37:57 UTC 2015

Hi all,

As some of you may know there has been talk recently of changing the
Kwant website. The two main changes that were proposed were:

+ adding a wiki where anyone can contribute. This would be useful for
  examples, links to Jupyter notebooks / publications that use Kwant.

+ better web interface to the canonical Git repository, in addition to a
  proper bug tracker and continuous integration (CI) so that Kwant builds
  can be checked against all supported platforms.

There are now two questions: what technology stack to use, and where to
host everything. I'll consider the technology stack first, as this will
place constraints on where we can host

Technology Stack

The wiki engine needs to meet the following requirements:

1. version controlled (preferably using Git)
2. rich formatting (markdown, restructured text...)
3. web interface for editing

Git web interface
We need the following requirements:

1. self-hosted
2. bug tracker
3. CI support
4. email interaction

Naturally we could implement the above features by linking together
separate tools (e.g. redmine for bugs, buildbot for CI), using git
hooks, however from a maintainability point of view it makes sense to
have a solution that integrates everything already.

The big player in this space is Github, however as this is a
closed-source solution it violates requirement 1. The current thinking
is that [Gitlab](https://gitlab.com/) will be the most sane solution.
The community edition is under active development and it can be
easily integrated with many external services. It also has a tightly
integrated CI, bugtracker and, as of version 8, will have integration
with email-based workflows.

Currently the Kwant website is hosted on Webfaction. Webfaction is
shared hosting, so common infrastructure like front-end webservers
and database servers are actively maintained/configured.
Unfortunately there is not a wealth of information about running
Gitlab instances on Webfaction, and most instructions appear to
be very outdated. The following hosting solutions seem to have
reasonable support for Gitlab, as well as the other parts of
the Kwant website (static pages + wiki).

Digital Ocean: https://www.digitalocean.com/
VPS solution. They have pre-configured 1-click-install snapshots for
Gitlab and LEMP stack based on Ubuntu 14.04. You have SSH access to the
server, so can then tune / configure without having to get tricky things
like Nginx setup right from scratch. $10 / month for 1GB memory, 30GB
SSD and 2TB transfer (this is the minimum for the Gitlab install).

Linode: https://www.linode.com/
VPS solution. Simple install via "StackScripts", but these appear to
be user-provided scripts, rather than officially maintained
functionality, like with Digital Ocean. $10 / month for the same
deal (nearly) as Digital Ocean.

GitHost: https://githost.io/
Dedicated Gitlab hosting. Unfortunately this would mean having the
Gitlab infrastructure hosted separately from the website and wiki.
In addition the whole thing is a complete black box.

I think that Digital Ocean appears to be the best option, the only
downside is that it requires manually keeping everything up to date.
It seems likely that this would just be a periodic apt-get
update/upgrade, however.

Hopefully we can use the above as a base to discuss the best solution.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <https://mailman-mail5.webfaction.com/pipermail/kwant-devel/attachments/20150910/2268caa6/attachment.bin>

More information about the Kwant-devel mailing list