Project Infrastructure: Difference between revisions

From Octave
Jump to navigation Jump to search
(→‎octave.org: update sourceforge url)
mNo edit summary
 
(26 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The project sources, web pages, and related tools are spread over a number of different services.
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.


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, as of November 2022:


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


== 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 domain registration and dns records ===
== Digital Ocean ==


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


=== octave.org ===
Hosted sub domains:
* 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


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


RewriteRule ^doc/octave_toc.html https://www.gnu.org/software/octave/doc/interpreter/index.html [R=301,L]
Project:
 
* https://savannah.gnu.org/projects/octave  
RewriteRule ^hg/(.*) http://hg.savannah.gnu.org/hgweb/$1 [R=301,L]
* 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 ^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]
</nowiki>
 
=== packages.octave.org ===
 
* web site primarily so we can have a stable address for octave's <code>pkg -forge</code> command
* htaccess file:
<nowiki>
RewriteEngine on
 
RewriteRule ^download/(.*) https://downloads.sourceforge.net/octave/$1?download [R=307,L]
 
RewriteRule (.*) https://octave.sourceforge.io/$1 [R=307,L]
</nowiki>
 
=== planet.octave.org ===
 
* [http://www.planetplanet.org Planet blog aggregator]
 
=== wiki.octave.org ===
 
* [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] installation
* htaccess file:
 
<nowiki>
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$ http://wiki.octave.org/%1?
 
RewriteCond %{QUERY_STRING} ^title=(.*)$
RewriteRule ^/index\.php$ http://wiki.octave.org/%1?
 
 
RewriteCond %{REQUEST_URI} !^/w.*/
RewriteCond $1 !^(favicon.*)
RewriteRule ^(.*)$ /wiki/index.php?title=$1
</nowiki>
 
=== 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
* htaccess file:
<nowiki>
# Taken from http://www.pmwiki.org/wiki/Cookbook/CleanUrls#samedir
# Used at http://ggap.sf.net/hg/
Options +ExecCGI
RewriteEngine On
 
RewriteBase /
RewriteRule ^$ hgwebdir.cgi  [L]
RewriteRule ^repos/(.*) $1 [L,QSA]
# Send requests for files that exist to those files.
RewriteCond %{REQUEST_FILENAME} !-f
# Send requests for directories that exist to those directories.
RewriteCond %{REQUEST_FILENAME} !-d
# Send requests to hgwebdir.cgi, appending the rest of url.
RewriteRule (.*) hgwebdir.cgi/$1  [QSA,L]
</nowiki>
 
== Hosted on jwe's digitalocean.com account ==
 
* login accounts:  jwe jordigh
 
=== buildbot.octave.org ===
 
* master server for our [[Continuous_Build#Buildbot|Buildbot]] installation
 
=== 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
* htaccess file:   
<nowiki>
<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]
</nowiki>
=== 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 jbect, oheim, i7tiol]
Website:
* octave forge [https://sourceforge.net/p/octave/_list/hg hg] and [https://sourceforge.net/p/octave/_list/git git] repos
* https://www.gnu.org/software/octave/ redirects to https://octave.org


=== octave.sourceforge.io ===
Master hg repository for Octave
* https://hg.savannah.gnu.org/hgweb/octave/


* [https://octave.sourceforge.io Octave Forge web site] and [https://sourceforge.net/p/octave/project-web/ci/default/tree it's source]
Files and binaries:
* htaccess file:
* https://ftp.gnu.org/gnu/octave - Octave tarball sources
<nowiki>
* https://ftp.gnu.org/gnu/octave/windows - MS Windows binaries
<FilesMatch "\.svgz$">
Header set Content-Encoding gzip
</FilesMatch>


RewriteEngine on
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]


<FilesMatch "\.(php|css)$">
[[Category:Development]]
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header unset Expires
Header set Cache-Control "no-cache, must-revalidate"
</ifModule>
</FilesMatch>
</nowiki>

Latest revision as of 13:36, 10 November 2022

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.

Here is a summary of what we are currently using, as of November 2022:

jwe's DreamHost account[edit]

  • octave.org domain registration and DNS records. Managed through DreamHost web hosting control panel web app thing.

Digital Ocean[edit]

Hosted sub domains:

GNU Savannah[edit]

Project:

Tracker:

Website:

Master hg repository for Octave

Files and binaries: