Project Infrastructure: Difference between revisions

From Octave
Jump to navigation Jump to search
m (Use File template.)
(Move SourceForge information away.)
(8 intermediate revisions by the same user not shown)
Line 13: Line 13:
=== octave.org ===
=== octave.org ===


* main project web site address ([http://octave.org http://octave.org] → https://www.gnu.org/software/octave)
* main project web site address ([https://octave.org https://octave.org] → https://www.gnu.org/software/octave)
* email forwarding
* email forwarding
* [[Doxygen]] pages hosted here
* [[Doxygen]] pages hosted here
Line 66: Line 66:


* [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] installation
* [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] installation
** Additional skins installed:
*** https://www.mediawiki.org/wiki/Skin:Minerva_Neue (Mobile skin)
** Additional extensions installed:
*** https://www.mediawiki.org/wiki/Extension:Math
*** https://www.mediawiki.org/wiki/Extension:MobileFrontend
*** https://www.mediawiki.org/wiki/Extension:PageNotice


{{File|.htaccess|<pre>
{{File|.htaccess|<pre>
# https://help.dreamhost.com/hc/en-us/articles/214895317-How-do-I-change-the-PHP-version-of-my-site- (2019-02-26)
AddHandler fcgid-script .php
FCGIWrapper "/dh/cgi-system/php72.cgi" .php
RewriteEngine on
RewriteEngine on


Line 73: Line 84:
## http://www.octave.org/wiki/index.php?title=OctConf_2012
## http://www.octave.org/wiki/index.php?title=OctConf_2012
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^/wiki/index\.php$ http://wiki.octave.org/%1?  
RewriteRule ^/wiki/index\.php$ https://wiki.octave.org/%1?  


RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^/index\.php$ http://wiki.octave.org/%1?  
RewriteRule ^/index\.php$ https://wiki.octave.org/%1?  




Line 83: Line 94:
RewriteRule ^(.*)$ /wiki/index.php?title=$1
RewriteRule ^(.*)$ /wiki/index.php?title=$1
</pre>}}
</pre>}}
==== Known wiki issues ====
* While parsing non-cached <syntaxhighlight inline><math></math></syntaxhighlight> sections, the following error message occurs <syntaxhighlight inline>Failed to parse (PNG conversion failed; check for correct installation of latex and dvipng (or dvips + gs + convert)): ...</syntaxhighlight>
** '''Solution:''' On the server copy the missing LaTeX style to the [https://www.mediawiki.org/wiki/Texvc texvc] build directory. <code>cp -t /tmp ~/local/share/tex/cancel.sty</code>


== Hosted on jwe's digitalocean.com account ==
== Hosted on jwe's digitalocean.com account ==
Line 159: Line 165:
* [https://ftp.gnu.org/gnu/octave octave tarball sources]
* [https://ftp.gnu.org/gnu/octave octave tarball sources]
* [https://ftp.gnu.org/gnu/octave/windows windows binaries]
* [https://ftp.gnu.org/gnu/octave/windows windows binaries]
== Hosted on SourceForge ==
* admin accounts: [https://sourceforge.net/p/octave/_members oheim, i7tiol]
* octave forge [https://sourceforge.net/p/octave/_list/hg hg] and [https://sourceforge.net/p/octave/_list/git git] repos
=== octave.sourceforge.io ===
* [https://octave.sourceforge.io Octave Forge web site] and [https://sourceforge.net/p/octave/project-web/ci/default/tree it's source]
{{File|.htaccess|<pre>
<FilesMatch "\.svgz$">
Header set Content-Encoding gzip
</FilesMatch>
RewriteEngine on
# use PHP files in root directory
RewriteRule ^archive\.html$ /archive.php [PT]
RewriteRule ^bugs\.html$ /bugs.php [PT]
RewriteRule ^code\.html$ /code.php [PT]
RewriteRule ^developers\.html$ /developers.php [PT]
RewriteRule ^docs\.html$ /docs.php [PT]
RewriteRule ^FAQ\.html$ /FAQ.php [PT]
RewriteRule ^function_list\.html$ /function_list.php [PT]
RewriteRule ^index\.html$ /index.php [PT]
RewriteRule ^links\.html$ /links.php [PT]
RewriteRule ^NEWS\.html$ /NEWS.php [PT]
RewriteRule ^packages\.html$ /packages.php [PT]
# root directory of files for download
RewriteRule ^released-packages/$ https://sourceforge.net/projects/octave/files/ [R=307,L]
# a particular packages repository
RewriteRule ^pkg-repository/(.*)/$ https://sourceforge.net/p/octave/$1/ [R=307,L]
# don't rewrite paths in the following directories
RewriteRule ^templates(/|$)(.*) - [L]
RewriteRule ^pkg_icon(/|$)(.*) - [L]
RewriteRule ^java(/|$)(.*) - [L]
RewriteRule ^doxygen32(/|$)(.*) - [L]
RewriteRule ^doxygen34(/|$)(.*) - [L]
RewriteRule ^doxygen36(/|$)(.*) - [L]
RewriteRule ^doxygen38(/|$)(.*) - [L]
RewriteRule ^doxygen40(/|$)(.*) - [L]
RewriteRule ^doxygen41(/|$)(.*) - [L]
RewriteRule ^coda(/|$)(.*) - [L]
RewriteRule ^octave(/|$)(.*) - [L]
RewriteRule ^octave\.old(/|$)(.*) - [L]
RewriteRule ^old_packages(/|$)(.*) - [L]
# webserver of sourceforge doesn't understand END rewrite rule flag,
# so we have to check for looping instead if necessary
# forbid direct access to packages directory
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^packages(/|$)(.*) - [F]
# paths in all other sudirectories are rewritten to be under directory
# "packages"
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^(.+/.*) /packages/$1 [L]
# FIXME: Trailing slash is not appended for (non-existing, to be
# re-written) package directories at top level. This should be cured
# in a better way than with the following.
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+) /packages/$1/ [L]
<FilesMatch "\.(php|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header unset Expires
Header set Cache-Control "no-cache, must-revalidate"
</ifModule>
</FilesMatch>
</pre>}}


[[Category:Development]]
[[Category:Development]]

Revision as of 03:36, 27 October 2021

The project sources, web pages, and related tools are spread over a number of different services.

As discussed at OctConf 2017, we would like to consolidate and update some of these resources so that they are easier to keep track of and manage.

Here is a summary of what we are currently using:

Hosted on jwe's dreamhost.com account

octave.org domain registration and dns records

Managed through dreamhost web hosting control panel web app thing.

octave.org

File: .htaccess
RewriteEngine on

RewriteRule ^doc/octave_toc.html https://www.gnu.org/software/octave/doc/interpreter/index.html [R=301,L]

RewriteRule ^hg/(.*) http://hg.savannah.gnu.org/hgweb/$1 [R=301,L]

RewriteRule ^testfailure/(.*) https://savannah.gnu.org/bugs/$1 [R=301,L]

RewriteRule ^bugs/(.*) http://bugs.octave.org/bugs/$1 [R=301,L]

RewriteRule ^docs.html https://www.gnu.org/software/octave/support.html [R=301,L]

RewriteRule ^packages.html https://octave.sourceforge.io [R=301,L]

RewriteCond $1 !^(doxygen|gnulib-git-mapfile|old-list-archives|stats|wiki|octave-wiki|w)
RewriteRule (.*) https://www.gnu.org/software/octave/$1 [R=301,L]

Options +FollowSymLinks

## Manipulate query string to preserve old URLs like 
## http://www.octave.org/wiki/index.php?title=OctConf_2012
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^wiki/index\.php$ http://wiki.octave.org/%1? [R=301]

RewriteRule ^wiki/(.*)$ http://wiki.octave.org/$1 [R=301]
RewriteRule ^wiki$ http://wiki.octave.org/ [R=301]

packages.octave.org

  • web site primarily so we can have a stable address for octave's pkg -forge command
File: .htaccess
RewriteEngine on

RewriteRule ^download/(.*) https://downloads.sourceforge.net/octave/$1?download [R=307,L]

RewriteRule (.*) https://octave.sourceforge.io/$1 [R=307,L]

planet.octave.org

wiki.octave.org


File: .htaccess
# https://help.dreamhost.com/hc/en-us/articles/214895317-How-do-I-change-the-PHP-version-of-my-site- (2019-02-26)
AddHandler fcgid-script .php
FCGIWrapper "/dh/cgi-system/php72.cgi" .php

RewriteEngine on

## Manipulate query string to preserve old URLs like 
## http://www.octave.org/wiki/index.php?title=OctConf_2012
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^/wiki/index\.php$ https://wiki.octave.org/%1? 

RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^/index\.php$ https://wiki.octave.org/%1? 


RewriteCond %{REQUEST_URI} !^/w.*/
RewriteCond $1 !^(favicon.*)
RewriteRule ^(.*)$ /wiki/index.php?title=$1

Hosted on jwe's digitalocean.com account

  • login accounts: jwe jordigh

buildbot.octave.org

  • master server for our Buildbot installation

hg.octave.org

This site hosts mercurial repos.

agora.octave.org

  • what remains of the agora web site

Hosted on GNU project systems

Savannah admin accounts: jwe, rik, jordigh, mtmiller

www.gnu.org/software/octave

File: .htaccess
<FilesMatch "\.(in|m4)$">
  Order allow,deny
  Deny from all
</FilesMatch>

<FilesMatch "Makefile$">
  Order allow,deny
  Deny from all
</FilesMatch>

<FilesMatch "CVS">
  Order allow,deny
  Deny from all
</FilesMatch>

RewriteEngine on

RewriteBase /software/octave/

RewriteRule ^octave.pdf doc/octave-4.2.0.pdf [L]
RewriteRule ^NEWS.html NEWS-4.2.html [L]
RewriteRule ^contribute.html get-involved.html [L]
RewriteRule ^img/screenshot.png img/screenshot-octave-4-2.png [L]

RewriteRule ^doc/interpreter$ doc/interpreter/ [R,L]
RewriteRule ^doc/interpreter/(.*) doc/v4.2.0/$1 [L]

ftp.gnu.org