savannah-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Savannah-cvs] [141] Internals, DatabaseSchema: minor wiki style improve


From: Assaf Gordon
Subject: [Savannah-cvs] [141] Internals, DatabaseSchema: minor wiki style improvements
Date: Sun, 15 Feb 2015 23:24:24 +0000

Revision: 141
          
http://svn.sv.gnu.org/viewvc/?view=rev&root=administration&revision=141
Author:   agn
Date:     2015-02-15 23:24:18 +0000 (Sun, 15 Feb 2015)
Log Message:
-----------
Internals, DatabaseSchema: minor wiki style improvements

Wrap at 75 chars when possible,
use 4 space indentation instead of "```" for code blocks.

Modified Paths:
--------------
    trunk/sviki/SavannahDatabaseSchema.mdwn
    trunk/sviki/SavannahInternals.mdwn

Modified: trunk/sviki/SavannahDatabaseSchema.mdwn
===================================================================
--- trunk/sviki/SavannahDatabaseSchema.mdwn     2015-02-14 17:15:10 UTC (rev 
140)
+++ trunk/sviki/SavannahDatabaseSchema.mdwn     2015-02-15 23:24:18 UTC (rev 
141)
@@ -7,8 +7,8 @@
 
 ## Overview
 
-* The MySQL database server runs on `internal.sv.gnu.org`, and is accessible
-  from other VMs (e.g. `vcs`, `frontend`, `download`, etc.).
+* The MySQL database server runs on `internal.sv.gnu.org`, and is
+  accessible from other VMs (e.g. `vcs`, `frontend`, `download`, etc.).
 * file reference in on this page refer to the
   
[administration/savane.git](http://git.savannah.gnu.org/cgit/administration/savane.git)
   source code repository.
@@ -19,7 +19,8 @@
 
[/db/mysql](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql)
 directory. Each table as a corresponding `table_NAME.structure` and
 `table_NAME.initvalues` files. Example: The `groups` table (containing all
-projects on savannah) is defined in 
[/db/mysql/table_groups.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_groups.structure).
+projects on savannah) is defined in
+[/db/mysql/table_groups.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_groups.structure).
 
 ## groups(=projects) and users tables diagram
 
@@ -30,48 +31,45 @@
 ## `group_type` table
 
 
-Structure: 
[/db/mysql/table_group_type.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_group_type.structure).
+Structure:
+[/db/mysql/table_group_type.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_group_type.structure).
 
+    mysql> select type_id, name from group_type ;
+    +---------+------------------------------------+
+    | type_id | name                               |
+    +---------+------------------------------------+
+    |       1 | Official GNU software              |
+    |       2 | non-GNU software and documentation |
+    |       3 | www.gnu.org portions               |
+    |       4 | GUG                                |
+    |       6 | www.gnu.org translation teams      |
+    +---------+------------------------------------+
+    5 rows in set (0.00 sec)
 
-```
-mysql> select type_id, name from group_type ;
-+---------+------------------------------------+
-| type_id | name                               |
-+---------+------------------------------------+
-|       1 | Official GNU software              |
-|       2 | non-GNU software and documentation |
-|       3 | www.gnu.org portions               |
-|       4 | GUG                                |
-|       6 | www.gnu.org translation teams      |
-+---------+------------------------------------+
-5 rows in set (0.00 sec)
-```
-
 ## `groups` table
 
-Structure: 
[/db/mysql/table_groups.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_groups.structure).
+Structure:
+[/db/mysql/table_groups.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_groups.structure).
 
-```
-mysql> select unix_group_name, group_name
-       from groups
-       where status="A" and is_public=1 and type=1
-+-----------------+---------------------+
-| unix_group_name | group_name          |
-+-----------------+---------------------+
-| aspell          | GNU Aspell          |
-| autoconf        | Autoconf            |
-| autogen         | autogen             |
-| automake        | Automake            |
-| bison           | bison               |
-| chess           | GNU Chess           |
-| cim             | GNU Cim             |
-| classpath       | classpath           |
-| commoncpp       | commoncpp           |
-| complexity      | Complexity Measure  |
-| coreutils       | GNU Core Utilities  |
-| cpio            | GNU cpio            |
-      (list truncated for brevity)
-```
+    mysql> select unix_group_name, group_name
+           from groups
+           where status="A" and is_public=1 and type=1
+    +-----------------+---------------------+
+    | unix_group_name | group_name          |
+    +-----------------+---------------------+
+    | aspell          | GNU Aspell          |
+    | autoconf        | Autoconf            |
+    | autogen         | autogen             |
+    | automake        | Automake            |
+    | bison           | bison               |
+    | chess           | GNU Chess           |
+    | cim             | GNU Cim             |
+    | classpath       | classpath           |
+    | commoncpp       | commoncpp           |
+    | complexity      | Complexity Measure  |
+    | coreutils       | GNU Core Utilities  |
+    | cpio            | GNU cpio            |
+          (list truncated for brevity)
 
 
 ## `user` table
@@ -79,47 +77,43 @@
 Public user information, same as shown at:
 <https://savannah.gnu.org/users/rms>.
 
-Structure: 
[/db/mysql/table_user.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_user.structure).
+Structure:
+[/db/mysql/table_user.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_user.structure).
 
-```
-mysql> select user_id, realname, from_unixtime(add_date) as 'member since'
-       from user where status="A" and user_name='rms' ;
-+---------+---------------------+-------------------------+
-| user_id | realname            | member since            |
-+---------+---------------------+-------------------------+
-|     144 | Richard M. Stallman | 2001-01-28 18:13:31     |
-+---------+---------------------+-------------------------+
-1 row in set (0.02 sec)
-```
+    mysql> select user_id, realname, from_unixtime(add_date) as 'member since'
+           from user where status="A" and user_name='rms' ;
+    +---------+---------------------+-------------------------+
+    | user_id | realname            | member since            |
+    +---------+---------------------+-------------------------+
+    |     144 | Richard M. Stallman | 2001-01-28 18:13:31     |
+    +---------+---------------------+-------------------------+
+    1 row in set (0.02 sec)
 
 ## `user_group` table
 
 Project membership of user `rms`, same as shown at
 <http://savannah.gnu.org/users/rms>.
 
-Structure: 
[/db/mysql/table_user_group.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_user_group.structure).
+Structure:
+[/db/mysql/table_user_group.structure](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/db/mysql/table_user_group.structure).
 
-```
-mysql> select groups.group_name
-       from groups, user, user_group
-       where user.user_name = 'rms' and
-             user_group.user_id = user.user_id and
-             user_group.group_id = groups.group_id and
-             groups.status="A" and groups.is_public=1;
-+----------------------------------+
-| group_name                       |
-+----------------------------------+
-| www.gnu.org                      |
-| Free Software Directory          |
-| emacs                            |
-| bison                            |
-| gnulib - GNU portability library |
-| GNU Coding Standards             |
-| Free Software History            |
-| GNU Press non-technical books    |
-+----------------------------------+
-8 rows in set (0.01 sec)
-```
+    mysql> select groups.group_name
+           from groups, user, user_group
+           where user.user_name = 'rms' and
+                 user_group.user_id = user.user_id and
+                 user_group.group_id = groups.group_id and
+                 groups.status="A" and groups.is_public=1;
+    +----------------------------------+
+    | group_name                       |
+    +----------------------------------+
+    | www.gnu.org                      |
+    | Free Software Directory          |
+    | emacs                            |
+    | bison                            |
+    | gnulib - GNU portability library |
+    | GNU Coding Standards             |
+    | Free Software History            |
+    | GNU Press non-technical books    |
+    +----------------------------------+
+    8 rows in set (0.01 sec)
 
-
-

Modified: trunk/sviki/SavannahInternals.mdwn
===================================================================
--- trunk/sviki/SavannahInternals.mdwn  2015-02-14 17:15:10 UTC (rev 140)
+++ trunk/sviki/SavannahInternals.mdwn  2015-02-15 23:24:18 UTC (rev 141)
@@ -6,9 +6,10 @@
 
 **Some terminology**
 
-* '*GNU Savannah*' (or just '*Savannah*') is the name of the entire platform,
-  encompassing the various hosts (see [[SavannahArchitecture]]), services (see
-  [[SavannahServices]]), people (see [[SavannahTeam]]) and other odds and ends.
+* '*GNU Savannah*' (or just '*Savannah*') is the name of the entire
+  platform, encompassing the various hosts (see [[SavannahArchitecture]]),
+  services (see [[SavannahServices]]), people (see [[SavannahTeam]]) and
+  other odds and ends.
 
 * '*Savane*' (French for 'savannah') is the code name for the source code
   which runs many parts of the savannah platform (most notably: the web
@@ -17,17 +18,17 @@
 While usually these are distinguished, they are sometimes used
 interchangeably, and should be appropriately understood by the context.
 
-* '*groups*' - in the savane code, projects are referred to as "groups" (and
-  in a few cases, these are conceptually groups rather than programming
-  projects, e.g., the [Free Software Free Society
+* '*groups*' - in the savane code, projects are referred to as "groups"
+  (and in a few cases, these are conceptually groups rather than
+  programming projects, e.g., the [Free Software Free Society
   Portuguese](https://savannah.gnu.org/projects/fsfs) and the [GNU
   Spanish Translation Team](https://savannah.gnu.org/projects/www-es)).
   The database table is named `groups`, and several php files are named
   `groupXXX.php` while referring to projects. `group_id=N` in urls
   refer to the project internal ID.
 
-* *Savannah Administrators* are volunteers with special access permissions on
-  the savannah frontend website (see 'becoming super-user' below), and
+* *Savannah Administrators* are volunteers with special access permissions
+  on the savannah frontend website (see 'becoming super-user' below), and
   administrator ssh access to the savannah hosts.
   See [[SavannahTeam]] and
   [List of current 
administrators](https://savannah.gnu.org/project/memberlist.php?group=administration).
@@ -75,8 +76,8 @@
 3. The PHP code on `frontend` updates the MySQL database, and optionally
    runs one-time project creation scripts.
 4. On `vcs` and `download`, cron jobs regularly query the database for
-   updates, and make the necessary changes (e.g., create a new git repository
-   for a new project).
+   updates, and make the necessary changes (e.g., create a new git
+   repository for a new project).
 5. The `cvsweb` repositories hold the html files which are the source for
    a project's web pages. When these are updated, a special hook
    calls a cgi script on `www.gnu.org` to request a website update.
@@ -89,8 +90,8 @@
 8. Publishing a new tarball release for GNU packages is performed by an
    automated process, explained in the
    [GNU Maintainer's 
guide](https://www.gnu.org/prep/maintain/maintain.html#Automated-FTP-Uploads).
-   It is not managed by Savannah administrators, and only mentioned here for
-   completeness.
+   It is not managed by Savannah administrators, and only mentioned here
+   for completeness.
 9. GNU Bug Tracker (<http://debbugs.gnu.org>) is based on Debian's
    [Bug Tracking System](https://www.debian.org/Bugs/). It is not managed
    by Savannah administrators. Packages hosted on
@@ -137,14 +138,16 @@
 <http://www.gnu.org/help/evaluation.html>).
 
 * Public URL: <https://savannah.gnu.org/register/>
-* Source code: 
[/frontend/php/register/index.php](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/register/index.php)
 (and see all files in
-  
[/frontend/php/register/](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/register/)
 ).
+* Source code: 
[/frontend/php/register/index.php](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/register/index.php)
+  (and see all files in
+  
[/frontend/php/register/](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/register/)
+  ).
 * After form submission, The php `confirmation.php` file in `register/`:
     * updates the database record in the `groups` table, with `STATUS='P'`.
     * sends a notification email to address@hidden
     * Creates a new task in the task tracker (FIXME: how?)
-    * FIXME: the source code mentions something about `cookbook` and `recipes`
-      database tables?
+    * FIXME: the source code mentions something about `cookbook` and
+      `recipes` database tables?
 * The project is in `pending` state until approved by Savannah administrators.
 
 ### Project approval, creation (frontend)
@@ -154,7 +157,8 @@
 review for GNU projects is done by the GNU evaluation volunteers, not
 savannah admins).
 
-* Public URL: <https://savannah.nongnu.org/siteadmin/groupedit.php?group_id=N>
+* Public URL:
+  <https://savannah.nongnu.org/siteadmin/groupedit.php?group_id=N>
   (only available to savannah admins in superuser mode).
 * The URL is display as 'group administration' link when viewing a
   [pending project 
ticket](https://savannah.gnu.org/task/?group=administration&category_id=1&status_id=1&set=custom#results).
@@ -181,13 +185,13 @@
       using cvs repository, using task,support,bugs trackers, using news,
       etc.). This are fields such as `use_homepage=1` in the `groups` table.  
       The items set by default are hard-coded in `triggercreation.php`.
-      (this is one reason that by default, all new projects on savannah start
-      with a cvs repository).
+      (this is one reason that by default, all new projects on savannah
+      start with a cvs repository).
       This settings can later be changed by the project administrators.
-    * Sends an email to the project administrator (based on the savannah user
-      who submitted/registered the project).
-* FIXME: `triggercreation.php` mentions `"site-specific triggers executed"` -
-  which ones are these and where are they executed?
+    * Sends an email to the project administrator (based on the savannah
+      user who submitted/registered the project).
+* FIXME: `triggercreation.php` mentions `"site-specific triggers executed"`
+  - which ones are these and where are they executed?
 
 ### Project administration - general information (frontend)
 
@@ -210,7 +214,7 @@
     * Source code: 
[/frontend/php/project/admin/squadadmin.php](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/project/admin/squadadmin.php).
 * Permissions
     * per-user permissions for website features (e.g., tracker management)
-    * Public URL: 
<https://savannah.nongnu.org/project/admin/userperms.php?group=XXN>
+    * Public URL: 
<https://savannah.nongnu.org/project/admin/userperms.php?group=N>
     * Source code: 
[/frontend/php/project/admin/userperms.php](http://git.savannah.gnu.org/cgit/administration/savane.git/tree/frontend/php/project/admin/userperms.php).
 * Jobs
     * "jobs" are postings which appear in the
@@ -306,19 +310,17 @@
 
 Stored in `vcs:/etc/cron.d/sv`:
 
-```
-# remake user list for outgoing mail.
-*/10 * * * *    root    nice -n 11 sv_aliases --cron && sed -e '/# Savannah 
include start/,/# Savannah include end/s/\([^:]\+\): .*/\1: address@hidden/' 
/etc/email-addresses -e 's,This is /etc/email-addresses,DO NOT EDIT - GENERATED 
FROM email-addresses.,' > /etc/email-addresses_SENDER
+    # remake user list for outgoing mail.
+    */10 * * * *    root    nice -n 11 sv_aliases --cron && sed -e '/# 
Savannah include start/,/# Savannah include end/s/\([^:]\+\): .*/\1: 
address@hidden/' /etc/email-addresses -e 's,This is /etc/email-addresses,DO NOT 
EDIT - GENERATED FROM email-addresses.,' > /etc/email-addresses_SENDER
 
-# remake list of git repositories in each project.
-*/15 * * * *   root    nice -n 11 /usr/src/infra/git/refresh-project-list.sh 
&& /usr/src/infra/git/sv_cgit.pl
+    # remake list of git repositories in each project.
+    */15 * * * *       root    nice -n 11 
/usr/src/infra/git/refresh-project-list.sh && /usr/src/infra/git/sv_cgit.pl
 
-# remake CVSROOT/{commit,log}/info (for cvs commit email?).
-31 * * * *     root    nice -n 11 /usr/src/infra/cvs/generate_log_accum.pl
+    # remake CVSROOT/{commit,log}/info (for cvs commit email?).
+    31 * * * * root    nice -n 11 /usr/src/infra/cvs/generate_log_accum.pl
 
-# remake list of groups for the vcs.
-35,05 * * * *  root    nice -n 11 sv_groups --cron --only-cvs --only-homepage 
--only-svn --only-git --only-hg --only-bzr
-```
+    # remake list of groups for the vcs.
+    35,05 * * * *      root    nice -n 11 sv_groups --cron --only-cvs 
--only-homepage --only-svn --only-git --only-hg --only-bzr
 
 ### Cron jobs on download
 
@@ -326,9 +328,7 @@
 
 stored in `download:/etc/cron.d/sv`:
 
-```
-*/30 * * * *   root    sv_groups --cron --only-download --only-arch
-```
+    */30 * * * *       root    sv_groups --cron --only-download --only-arch
 
 ### Cron jobs on frontend
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]