Blame Manual/repository-html/repository_54.html

ee1f37
ee1f37
<html>
ee1f37
ee1f37
ee1f37
Permission is granted to copy, distribute and/or modify this document
ee1f37
under the terms of the GNU Free Documentation License, Version 1.2 or
ee1f37
any later version published by the Free Software Foundation; with no
ee1f37
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
ee1f37
copy of the license is included in the section entitled GNU Free
ee1f37
Documentation License.  
ee1f37
-->
406f69
ee1f37
ee1f37
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
ee1f37
            Karl Berry  <karl@freefriends.org>
ee1f37
            Olaf Bachmann <obachman@mathematik.uni-kl.de>
ee1f37
            and many others.
ee1f37
Maintained by: Many creative people <dev@texi2html.cvshome.org>
ee1f37
Send bugs and suggestions to <users@texi2html.cvshome.org>
ee1f37
ee1f37
-->
ee1f37
<head>
671838
<title>CentOS Artwork Repository: 2.50 The trunk/Scripts/Bash Directory</title>
ee1f37
671838
<meta name="description" content="CentOS Artwork Repository: 2.50 The trunk/Scripts/Bash Directory">
671838
<meta name="keywords" content="CentOS Artwork Repository: 2.50 The trunk/Scripts/Bash Directory">
ee1f37
<meta name="resource-type" content="document">
ee1f37
<meta name="distribution" content="global">
ee1f37
<meta name="Generator" content="texi2html 1.76">
ee1f37
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
ee1f37
<style type="text/css">
ee1f37
ee1f37
@import "/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/common.css";
ee1f37
ee1f37
a.summary-letter {text-decoration: none}
ee1f37
pre.display {font-family: serif}
ee1f37
pre.format {font-family: serif}
ee1f37
pre.menu-comment {font-family: serif}
ee1f37
pre.menu-preformatted {font-family: serif}
ee1f37
pre.smalldisplay {font-family: serif; font-size: smaller}
ee1f37
pre.smallexample {font-size: smaller}
ee1f37
pre.smallformat {font-family: serif; font-size: smaller}
ee1f37
pre.smalllisp {font-size: smaller}
ee1f37
span.sansserif {font-family:sans-serif; font-weight:normal;}
ee1f37
ul.toc {list-style: none}
ee1f37
-->
ee1f37
</style>
ee1f37
ee1f37
ee1f37
</head>
ee1f37
ee1f37
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
ee1f37
ee1f37
671838
[ < ]
671838
[ > ]
ee1f37
   
671838
[ << ]
671838
[ Up ]
671838
[ >> ]
ee1f37
   
ee1f37
   
ee1f37
   
ee1f37
   
56a476
[Top]
56a476
[Contents]
671838
[Index]
56a476
[ ? ]
ee1f37
671838
671838
671838

2.50 The <tt>`trunk/Scripts/Bash'</tt> Directory

063806
063806
671838
671838

2.50.1 Goals

063806
671838

The <tt>`trunk/Scripts/Bash'</tt> directory exists to organize the trunk

671838
development line of <tt>`centos-art.sh'</tt> automation script.  The
671838
<tt>`centos-art.sh'</tt> script standardizes frequent tasks inside your
671838
working copy of CentOS Artwork Repository.
063806

b9dbd3
671838
671838

2.50.2 Description

b9dbd3
671838

The best way to understand <tt>`centos-art.sh'</tt> automation script is

671838
studying its source code.  However, as start point, you may prefer to
671838
read an introductory resume before diving into the source code
671838
details.
671838

671838

The <tt>`centos-art.sh'</tt> script is written in Bash. Most tasks, inside

671838
<tt>`centos-art.sh'</tt> script, have been organized in many specific
671838
functionalities that you can invoke from the centos-art
671838
command-line interface.
671838

671838

When you type the centos-art command in your terminal, the

671838
operating system trys to execute that command. In order to execute the
671838
command, the operating system needs to know where it is, so the
671838
operating system uses the PATH environment variable to look for
671838
that command location. If your system was prepared to use CentOS
671838
Artwork Repository correctly (-- Removed(pxref:trunk Scripts Bash Functions
671838
Verify) --), you should have a symbolic link inside <tt>`~/bin/'</tt>
671838
directory that points to the <tt>`centos-art.sh'</tt> script file. As
671838
<tt>`~/bin/'</tt> directory is, by default, inside PATH environment
671838
variable, the execution of centos-art command runs the
671838
<tt>`centos-art.sh'</tt> script.
671838

671838

When <tt>`centos-art.sh'</tt> script is executed, the first it does is

671838
executing the <tt>`trunk/Scripts/Bash/initEnvironment.sh'</tt> script to
671838
initialize global variables (e.g., gettext variables) and
671838
global function scripts.  Global function scripts are located inside
671838
<tt>`trunk/Scripts/Bash/Functions'</tt> directory and their file names
671838
begin with <samp>`cli'</samp>. Global function scripts provide common
671838
functionalities that can be used anywhere inside <tt>`centos-art.sh'</tt>
671838
script execution environment.
671838

671838

Once global variables and function scripts have been loaded,

671838
<tt>`centos-art.sh'</tt> script executes the cli global function
671838
from <tt>`cli.sh'</tt> function script to retrive command-line arguments
671838
and define some default values that may be used later by specific
671838
function scripts (-- Removed(pxref:trunk Scripts Bash Functions) --).
671838

671838

As convenction, the <tt>`centos-art.sh'</tt> command-line arguments have

671838
the following format:
671838

671838
centos-art arg1 --arg2=val2 --arg3=val3
671838
671838

In the above example, <samp>`centos-art'</samp> is the command you use to

671838
invoke <tt>`centos-art.sh'</tt> script. The <samp>`arg1'</samp> is required and
671838
represents the functionality you want to perform (e.g.,
671838
<samp>`verify'</samp>, <samp>`render'</samp>, <samp>`locale'</samp>, <samp>`manual'</samp>,
671838
etc.). The remaining arguments are modifiers to <samp>`arg1'</samp>. The
671838
<samp>`--arg2'</samp> definition is required and represets, specifically,
671838
the action inside the functionality you want to perform.  The
671838
<samp>`--arg3'</samp> and on, are optional.
671838

671838

Once command-line arguments have been retrived, the

671838
<tt>`centos-art.sh'</tt> script loads specific functionalities using the
671838
<tt>`cli_getFunctions.sh'</tt> function script. Only one specific
671838
functionality can be loaded at one script execution I.e., you run
671838
centos-art.sh script to run just one functionality.
671838

671838
671838
+----------------------------------------------------------------------+
671838
| [centos@host]$ centos-art function --action='value' --option='value' |
671838
+----------------------------------------------------------------------+
671838
| ~/bin/centos-art --> ~/artwork/trunk/Scripts/Bash/centos-art.sh      |
671838
+---v-----------------------------------------v------------------------+
671838
    | centos-art.sh                           |
671838
    +---v---------------------------------v---+
671838
    .   | initEnvironment.sh              |   .
671838
    .   +---------------------------------+   .
671838
    .   | cli $@                          |   .
671838
    .   +---v-------------------------v---+   .
671838
    .   .   | cli_getFunctions        |   .   .
671838
    .   .   +---v-----------------v---+   .   .
671838
    .   .   .   | function1       |   .   .   .
671838
    .   .   .   | function2       |   .   .   .
671838
    .   .   .   | function3       |   .   .   .
671838
    .   .   .   +-----------------+   .   .   .
671838
    .   .   ...........................   .   .
671838
    .   ...................................   .
671838
    ...........................................
671838
671838

Figure 2.1: The functionalities initialization environment.

671838
671838

671838

Functionalities are implemented by means of actions. Once the

671838
functionality has been initiazalized, actions initialization take
671838
place for that functionality. Actions initialization model is very
671838
similar to functions initialization model. But with the difference,
671838
that actions are loaded inside function environment, and so, share
671838
variables and functions defined inside function environment.
671838

671838
671838
+--------------------------------------+
671838
| cli_getFunctions                     |
671838
+---v------------------------------v---+
671838
.   | function1                    |   .
671838
.   +---v----------------------v---+   .
671838
.   .   | function1_getActions |   .   .
671838
.   .   +---v--------------v---+   .   .
671838
.   .   .   | action 1     |   .   .   .
671838
.   .   .   | action 2     |   .   .   .
671838
.   .   .   | action n     |   .   .   .
671838
.   .   .   +--------------+   .   .   .
671838
.   .   ........................   .   .
671838
.   ................................   .
671838
.   +------------------------------+   .
671838
.   | function2                    |   .
671838
.   +---v----------------------v---+   .
671838
.   .   | function2_getActions |   .   .
671838
.   .   +---v--------------v---+   .   .
671838
.   .   .   | action 1     |   .   .   .
671838
.   .   .   | action 2     |   .   .   .
671838
.   .   .   | action n     |   .   .   .
671838
.   .   .   +--------------+   .   .   .
671838
.   .   ........................   .   .
671838
.   ................................   .
671838
.   +------------------------------+   .
671838
.   | function3                    |   .
671838
.   +---v----------------------v---+   .
671838
.   .   | function3_getActions |   .   .
671838
.   .   +---v--------------v---+   .   .
671838
.   .   .   | action 1     |   .   .   .
671838
.   .   .   | action 2     |   .   .   .
671838
.   .   .   | action n     |   .   .   .
671838
.   .   .   +--------------+   .   .   .
671838
.   .   ........................   .   .
671838
.   ................................   .
671838
........................................
671838
671838

Figure 2.2: The actions initialization environment.

671838
671838

b9dbd3
671838
671838

2.50.3 Usage

f66721
671838

The <tt>`centos-art.sh'</tt> script usage information is described inside

671838
each specific function documentation (-- Removed(pxref:trunk Scripts Bash
671838
Functions) --).
671838

f66721
671838
671838

2.50.4 See also

ee1f37
671838
671838
2.49 The <tt>`trunk/Scripts'</tt> Directory  
671838
671838
ee1f37
ee1f37
ee1f37
671838
[ < ]
671838
[ > ]
ee1f37
   
671838
[ << ]
671838
[ Up ]
671838
[ >> ]
ee1f37
ee1f37

ee1f37
 <font size="-1">
406f69
  This document was generated on March, 1 2011 using texi2html 1.76.
ee1f37
 </font>
ee1f37
 
ee1f37
ee1f37

ee1f37
</body>
ee1f37
</html>