Editing Project Infrastructure

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
The project sources, web pages, and related tools are spread over a number of different services. Many of these services have been consolidated over the years to make management easier.
The project sources, web pages, and related tools are spread over a number of different services.


Here is a summary of what we are currently using, as of November 2022:
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.


== jwe's DreamHost account ==
Here is a summary of what we are currently using:


* octave.org domain registration and DNS records. Managed through DreamHost web hosting control panel web app thing.
== Hosted on jwe's dreamhost.com account ==


== Digital Ocean ==
=== octave.org domain registration and dns records ===


* https://github.com/gnu-octave/doc/blob/main/digital-ocean.md - Setup documentation
Managed through dreamhost web hosting control panel web app thing.


Hosted sub domains:
=== octave.org ===
* https://bugs.octave.org
** Redirects to https://savannah.gnu.org/bugs/?group=octave
* https://buildbot.octave.org
** [[Continuous Build | Buildbot]] installation
* docs.octave.org
** Octave manual and [[Doxygen]]
* https://ftp.octave.org
** Redirects to https://ftp.gnu.org/
* https://hg.octave.org
** https://hg.octave.org/octave - mirror of Savannah master hg archive
** https://hg.octave.org/mxe-octave - [[MXE]] main repository
** various octave clones
* https://mxe-pkg-src.octave.org
** Fallback source packages for [[MXE]]
* https://packages.octave.org
** <code>pkg install -forge</code>
* https://wiki.octave.org
** This wiki
* https://www.octave.org
** Project main website
** website repository: https://github.com/gnu-octave/gnu-octave.github.io


== GNU Savannah ==
* main project web site address ([http://octave.org http://octave.org] &rarr; https://www.gnu.org/software/octave)
* email forwarding
* [[Doxygen]] pages hosted here
* other pages redirect elsewhere (gnu.org/software/octave, octave.sourceforge.io)


Project:
{{File|.htaccess|<pre>
* https://savannah.gnu.org/projects/octave  
RewriteEngine on
* admin accounts: [https://savannah.gnu.org/users/jwe jwe], [https://savannah.gnu.org/users/rik5 rik], [https://savannah.gnu.org/users/jordigh jordigh], [https://savannah.gnu.org/users/mtmiller mtmiller]
 
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]
</pre>}}
 
=== packages.octave.org ===
 
* web site primarily so we can have a stable address for octave's <code>pkg -forge</code> command
 
{{File|.htaccess|<pre>
RewriteEngine on
 
RewriteRule ^download/(.*) https://downloads.sourceforge.net/octave/$1?download [R=307,L]
 
RewriteRule (.*) https://octave.sourceforge.io/$1 [R=307,L]
</pre>}}
 
=== planet.octave.org ===
 
* [http://www.planetplanet.org Planet blog aggregator]
 
=== wiki.octave.org ===
 
* [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] installation
 
{{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
 
## 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
</pre>}}
 
== Hosted on jwe's digitalocean.com account ==
 
* login accounts:  jwe jordigh
 
=== buildbot.octave.org ===
 
* master server for our [[Continuous_Build#Buildbot|Buildbot]] installation
 
=== hg.octave.org ===
 
This site hosts [http://hg.octave.org mercurial repos].
 
* [http://hg.octave.org/web-octave web-octave] (Alex and Kai's new web pages)
* [http://hg.octave.org/octave/gnulib-hg gnulib]
* mirror of master hg archive for [http://hg.octave.org/octave octave]
* [http://hg.octave.org/mxe-octave mxe-octave] (see [[MXE]])
* various octave clones
 
=== agora.octave.org ===
 
* what remains of the agora web site
 
== Hosted on GNU project systems ==
 
[https://savannah.gnu.org/projects/octave Savannah] admin accounts: [https://savannah.gnu.org/users/jwe jwe], [https://savannah.gnu.org/users/rik5 rik], [https://savannah.gnu.org/users/jordigh jordigh], [https://savannah.gnu.org/users/mtmiller mtmiller]
 
=== www.gnu.org/software/octave ===


Tracker:
* [https://savannah.gnu.org/bugs/?group=octave bug tracker]
* [https://savannah.gnu.org/bugs/?group=octave bug tracker]
* [https://savannah.gnu.org/patch/?group=octave patch tracker]
* [https://savannah.gnu.org/patch/?group=octave patch tracker]
* [https://savannah.gnu.org/task/?group=octave task tracker]
* [https://savannah.gnu.org/task/?group=octave task tracker]
* [https://savannah.gnu.org/mail/?group=octave mailing lists]
* [https://savannah.gnu.org/mail/?group=octave mailing lists]
* main [https://www.gnu.org/software/octave/ octave project web page]
* [https://hg.savannah.gnu.org/hgweb/octave/ master hg archive] for octave
* limited to using [https://web.cvs.savannah.gnu.org/viewvc/octave CVS] to upload web pages
* doxygen, octave forge (other?) pages hosted elsewhere
{{File|.htaccess|<pre>
<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]
</pre>}}
=== ftp.gnu.org ===
* [https://ftp.gnu.org/gnu/octave octave tarball sources]
* [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]


Website:
# paths in all other sudirectories are rewritten to be under directory
* https://www.gnu.org/software/octave/ redirects to https://octave.org
# "packages"
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^(.+/.*) /packages/$1 [L]


Master hg repository for Octave
# FIXME: Trailing slash is not appended for (non-existing, to be
* https://hg.savannah.gnu.org/hgweb/octave/
# 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]


Files and binaries:
* https://ftp.gnu.org/gnu/octave - Octave tarball sources
* https://ftp.gnu.org/gnu/octave/windows - MS Windows binaries


<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]]
Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)