|
Alain Reguera Delgado |
0de111 |
centos-art.sh(1)
|
|
Alain Reguera Delgado |
0de111 |
================
|
|
Alain Reguera Delgado |
0de111 |
|
|
Alain Reguera Delgado |
954d94 |
Name
|
|
Alain Reguera Delgado |
0de111 |
----
|
|
Alain Reguera Delgado |
0de111 |
centos-art.sh - The CentOS artwork repository automation tool
|
|
Alain Reguera Delgado |
0de111 |
|
|
Alain Reguera Delgado |
954d94 |
Synopsis
|
|
Alain Reguera Delgado |
0de111 |
--------
|
|
Alain Reguera Delgado |
954d94 |
*centos-art.sh* [*--help*|*--version*]::
|
|
Alain Reguera Delgado |
954d94 |
This command provides information about the script itself.
|
|
Alain Reguera Delgado |
0de111 |
|
|
Alain Reguera Delgado |
954d94 |
*centos-art.sh* *MODULE* [*--help|--version*]::
|
|
Alain Reguera Delgado |
954d94 |
This command provides information about the specified module. See
|
|
Alain Reguera Delgado |
954d94 |
the xref:Modules[] section below to see which modules are
|
|
Alain Reguera Delgado |
954d94 |
available.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*centos-art.sh* *MODULE* [*OPTIONS*]::
|
|
Alain Reguera Delgado |
954d94 |
This command executes the specified module. Options here are
|
|
Alain Reguera Delgado |
954d94 |
module-specific. See the xref:Modules[] section below to see which
|
|
Alain Reguera Delgado |
954d94 |
modules are available.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Description
|
|
Alain Reguera Delgado |
0de111 |
-----------
|
|
Alain Reguera Delgado |
954d94 |
*centos-art.sh* exists to standardize frequent tasks inside the CentOS
|
|
Alain Reguera Delgado |
954d94 |
repository.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
When you execute the *centos-art.sh* script in a terminal, it will
|
|
Alain Reguera Delgado |
954d94 |
request the absolute path where you stored your working copy of CentOS
|
|
Alain Reguera Delgado |
954d94 |
artwork repository. To avoid the absolute path request every time you
|
|
Alain Reguera Delgado |
954d94 |
execute the script, you can edit the +~/.bash_profile+ file and set
|
|
Alain Reguera Delgado |
954d94 |
the absolute path to your working copy there, as value to
|
|
Alain Reguera Delgado |
954d94 |
TCAR_BASEDIR variable.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Once *centos-art.sh* script knows what is the absolute path to your
|
|
Alain Reguera Delgado |
954d94 |
working copy, it executes the file *centos-art.conf* to load default
|
|
Alain Reguera Delgado |
954d94 |
values to configuration variables into its execution environment.
|
|
Alain Reguera Delgado |
954d94 |
After configuration variables have been loaded in the execution
|
|
Alain Reguera Delgado |
954d94 |
environment, the script looks whether or not any option was passed as
|
|
Alain Reguera Delgado |
954d94 |
first argument to *centos-art.sh* script. If no option was passed, it
|
|
Alain Reguera Delgado |
954d94 |
gives control to *cli* module. At this point, the *centos-art.sh*
|
|
Alain Reguera Delgado |
954d94 |
script waits for modules to conclude their job and exit the script
|
|
Alain Reguera Delgado |
954d94 |
execution as described in the xref:exit[] section.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
anchor:exit[Exit Status]
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Exit Status
|
|
Alain Reguera Delgado |
954d94 |
-----------
|
|
Alain Reguera Delgado |
954d94 |
* 0 -- Exit successfully without errors.
|
|
Alain Reguera Delgado |
954d94 |
* 1 -- Exit with errors.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
anchor:Modules[Modules]
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Modules
|
|
Alain Reguera Delgado |
954d94 |
-------
|
|
Alain Reguera Delgado |
954d94 |
From version 0.5 on, *centos-art.sh* script introduces the idea of
|
|
Alain Reguera Delgado |
954d94 |
modules to its base design. Modules are individual execution
|
|
Alain Reguera Delgado |
954d94 |
environments that may nest themselves one inside another to achieve
|
|
Alain Reguera Delgado |
954d94 |
high levels of code maintainability. Modules make it possible to
|
|
Alain Reguera Delgado |
954d94 |
divide a big task into smaller tasks that can be easier to debug,
|
|
Alain Reguera Delgado |
954d94 |
maintain and share with other modules.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
The following modules are available for *centos-art.sh* script:
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*cli*::
|
|
Alain Reguera Delgado |
954d94 |
This modules initializes common and specific functions inside
|
|
Alain Reguera Delgado |
954d94 |
*centos-art.sh* script execution environment. This module is
|
|
Alain Reguera Delgado |
954d94 |
loaded internally when you execute the *centos-art.sh* script in a
|
|
Alain Reguera Delgado |
954d94 |
terminal and you probably don't need to execute it in a terminal
|
|
Alain Reguera Delgado |
954d94 |
unless you want to see help or version information about it. This
|
|
Alain Reguera Delgado |
954d94 |
module interprets arguments passed to *centos-art.sh* command-line
|
|
Alain Reguera Delgado |
954d94 |
to execute the associated module (a.k.a., specific functions).
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*prepare*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes configuration tasks needed by your
|
|
Alain Reguera Delgado |
954d94 |
working copy (e.g., creation of links, images and documentations).
|
|
Alain Reguera Delgado |
954d94 |
This is the first task you should run in your workstation, just
|
|
Alain Reguera Delgado |
954d94 |
after downloading a fresh working copy of CentOS artwork
|
|
Alain Reguera Delgado |
954d94 |
repository.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*render*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes the way content is produced inside the
|
|
Alain Reguera Delgado |
954d94 |
repository. Whenever you need to produce images, documentation or
|
|
Alain Reguera Delgado |
954d94 |
localized content this is the module you'll need to use.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*locale*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes the way translatable strings are
|
|
Alain Reguera Delgado |
954d94 |
retrieved from source files and put into portable objects for you
|
|
Alain Reguera Delgado |
954d94 |
to edit. Portable objects produced by this module are used by
|
|
Alain Reguera Delgado |
954d94 |
*render* module to produce localized content. Whenever you need
|
|
Alain Reguera Delgado |
954d94 |
to produce the intermediate files holding the translatable strings
|
|
Alain Reguera Delgado |
954d94 |
required to produce localized content, use this module.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*help*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes the way documentation is produced inside
|
|
Alain Reguera Delgado |
954d94 |
the repository. Whenever you need to manage documentation source
|
|
Alain Reguera Delgado |
954d94 |
files inside the repository, use this module.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*tuneup*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes maintenance tasks frequently run inside
|
|
Alain Reguera Delgado |
954d94 |
the repository.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*vcs*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes the way version control tasks are
|
|
Alain Reguera Delgado |
954d94 |
performed inside the repository. This module is used internally
|
|
Alain Reguera Delgado |
954d94 |
and you probably don't need to use it from the command line. This
|
|
Alain Reguera Delgado |
954d94 |
module is the interface that let us support different version
|
|
Alain Reguera Delgado |
954d94 |
control systems inside *centos-art.sh* script.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*pack*::
|
|
Alain Reguera Delgado |
954d94 |
This module standardizes the way RPM packages are produced from
|
|
Alain Reguera Delgado |
954d94 |
content available in the repository. When ever you need to produce
|
|
Alain Reguera Delgado |
954d94 |
RPM packages with information available in the repository, use
|
|
Alain Reguera Delgado |
954d94 |
this module.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Directory Structure
|
|
Alain Reguera Delgado |
954d94 |
~~~~~~~~~~~~~~~~~~~
|
|
Alain Reguera Delgado |
954d94 |
Inside the repository, modules related to *centos-art.sh* script are
|
|
Alain Reguera Delgado |
954d94 |
stored in the directory +Automation/Modules+.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*Modules/*::
|
|
Alain Reguera Delgado |
954d94 |
This directory contains module's modules.
|
|
Alain Reguera Delgado |
954d94 |
*Manuals/*::
|
|
Alain Reguera Delgado |
954d94 |
This directory contains module's documentation in manpage format.
|
|
Alain Reguera Delgado |
954d94 |
The structure of this directory is as follows:
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
Manuals/
|
|
Alain Reguera Delgado |
954d94 |
|-- ${LANG}/
|
|
Alain Reguera Delgado |
954d94 |
| |-- man${SECTION_NUMBER}
|
|
Alain Reguera Delgado |
954d94 |
| `-- ${MODULE_NAME}.${SECTION_NUMBER}
|
|
Alain Reguera Delgado |
954d94 |
`-- man${SECTION_NUMBER}
|
|
Alain Reguera Delgado |
954d94 |
`-- ${MODULE_NAME}.${SECTION_NUMBER}
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*Locales/*::
|
|
Alain Reguera Delgado |
954d94 |
This directory contains module's translations using GNU gettext
|
|
Alain Reguera Delgado |
954d94 |
standards. The structure of this directory is as follows:
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
Locales/
|
|
Alain Reguera Delgado |
954d94 |
`-- ${LANG}/
|
|
Alain Reguera Delgado |
954d94 |
|-- LC_MESSAGES
|
|
Alain Reguera Delgado |
954d94 |
| `-- ${MODULE_NAME}.sh.mo
|
|
Alain Reguera Delgado |
954d94 |
|-- ${MODULE_NAME}.sh.po
|
|
Alain Reguera Delgado |
954d94 |
|-- ${MODULE_NAME}.sh.pot
|
|
Alain Reguera Delgado |
954d94 |
|-- ${MODULE_NAME}.xml.po
|
|
Alain Reguera Delgado |
954d94 |
`-- ${MODULE_NAME}.xml.pot
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*Scripts/*::
|
|
Alain Reguera Delgado |
954d94 |
This directory contains module's function scripts. Here is where
|
|
Alain Reguera Delgado |
954d94 |
all the tasks the module is useful to are written and organized.
|
|
Alain Reguera Delgado |
954d94 |
As convention the following structure is used:
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
Scripts/
|
|
Alain Reguera Delgado |
954d94 |
`-- ${MODULE_NAME}_${FUNCTION_NAME}.sh
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
{asccidoc-br}
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
Inside each function script, there is a top comment where you should
|
|
Alain Reguera Delgado |
954d94 |
put the name of the function script, a brief description about what it
|
|
Alain Reguera Delgado |
954d94 |
does, as well as author and copying information. After the top comment
|
|
Alain Reguera Delgado |
954d94 |
and separated by one white line, you should define the function
|
|
Alain Reguera Delgado |
954d94 |
sentence using the long format.
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
#!/bin/bash
|
|
Alain Reguera Delgado |
954d94 |
########################################################################
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# ${MODULE_NAME}_${FUNCTION_NAME}.sh -- ${FUNCTION_DESCRIPTION}
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# Written by:
|
|
Alain Reguera Delgado |
954d94 |
# * ${AUTHOR_NAME} <${AUTHOR_EMAIL}>, ${YEARS}
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# Copyright (C) ${YEAR} The CentOS Project
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# This program is free software; you can redistribute it and/or modify
|
|
Alain Reguera Delgado |
954d94 |
# it under the terms of the GNU General Public License as published by
|
|
Alain Reguera Delgado |
954d94 |
# the Free Software Foundation; either version 2 of the License, or (at
|
|
Alain Reguera Delgado |
954d94 |
# your option) any later version.
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# This program is distributed in the hope that it will be useful, but
|
|
Alain Reguera Delgado |
954d94 |
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Alain Reguera Delgado |
954d94 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Alain Reguera Delgado |
954d94 |
# General Public License for more details.
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
# You should have received a copy of the GNU General Public License
|
|
Alain Reguera Delgado |
954d94 |
# along with this program; if not, write to the Free Software
|
|
Alain Reguera Delgado |
954d94 |
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
Alain Reguera Delgado |
954d94 |
#
|
|
Alain Reguera Delgado |
954d94 |
########################################################################
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
function ${MODULE_NAME}_${FUNCTION_NAME} {
|
|
Alain Reguera Delgado |
954d94 |
...
|
|
Alain Reguera Delgado |
954d94 |
}
|
|
Alain Reguera Delgado |
954d94 |
-------------------------------------
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
[NOTE]
|
|
Alain Reguera Delgado |
954d94 |
If your are planning to contribute a new module to *centos-art.sh*
|
|
Alain Reguera Delgado |
954d94 |
script, please, consider using the layout described above for all your
|
|
Alain Reguera Delgado |
954d94 |
function scripts, consistently.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*$\{MODULE_NAME}.asciidoc*::
|
|
Alain Reguera Delgado |
954d94 |
This file contains the module's documentation source. From this
|
|
Alain Reguera Delgado |
954d94 |
file it is possible to produce the same documentation in other
|
|
Alain Reguera Delgado |
954d94 |
formats including manpage, html and pdf. Whenever you need to
|
|
Alain Reguera Delgado |
954d94 |
improve the module's documentation, edit this file.
|
|
Alain Reguera Delgado |
954d94 |
*$\{MODULE_NAME}.conf*::
|
|
Alain Reguera Delgado |
954d94 |
This file contains the module's configuration variables. These
|
|
Alain Reguera Delgado |
954d94 |
variables are exported to the environment and remain there as long
|
|
Alain Reguera Delgado |
954d94 |
as the script execution environment is alive. Some variables are
|
|
Alain Reguera Delgado |
954d94 |
read-only others not.
|
|
Alain Reguera Delgado |
954d94 |
+
|
|
Alain Reguera Delgado |
954d94 |
The configuration file provides explanation about each environment
|
|
Alain Reguera Delgado |
954d94 |
variable it exports. If you want to know more about what these
|
|
Alain Reguera Delgado |
954d94 |
variables are, open this file and read the comments near each
|
|
Alain Reguera Delgado |
954d94 |
variable.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*$\{MODULE_NAME}.sh*::
|
|
Alain Reguera Delgado |
954d94 |
This is the module's initialization script. The first file
|
|
Alain Reguera Delgado |
954d94 |
executed when the module called from the command-line. This file
|
|
Alain Reguera Delgado |
954d94 |
provides access to argument parsing and controls how
|
|
Alain Reguera Delgado |
954d94 |
module-specific function scripts are called. This is the starting
|
|
Alain Reguera Delgado |
954d94 |
point for writing modules. You can write a complete module using
|
|
Alain Reguera Delgado |
954d94 |
this file only but, frequently, it is convenient as the module
|
|
Alain Reguera Delgado |
954d94 |
complexity grows to divide it in smaller pieces (function scripts)
|
|
Alain Reguera Delgado |
954d94 |
to improve maintainability and error findings.
|
|
Alain Reguera Delgado |
954d94 |
*$\{MODULE_NAME}.xml*::
|
|
Alain Reguera Delgado |
954d94 |
This file is produced from *$\{MODULE_NAME}.asciidoc* and is used as
|
|
Alain Reguera Delgado |
954d94 |
source to retrieve translatable strings. Translatable strings
|
|
Alain Reguera Delgado |
954d94 |
retrieved from this file are stored in the module's *Locales/*
|
|
Alain Reguera Delgado |
954d94 |
directory and used to produce localized mapages inside module's
|
|
Alain Reguera Delgado |
954d94 |
*Manuals/$\{LANG}/man$\{SECTION_NUMBER}/* directory.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Options
|
|
Alain Reguera Delgado |
954d94 |
-------
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*--help*::
|
|
Alain Reguera Delgado |
954d94 |
Display program's help (this page).
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
*--version*::
|
|
Alain Reguera Delgado |
954d94 |
Display program's name and version.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Reporting Bugs
|
|
Alain Reguera Delgado |
954d94 |
--------------
|
|
Alain Reguera Delgado |
954d94 |
Report bugs on the *automation* category of *centos-artwork* project
|
|
Alain Reguera Delgado |
954d94 |
at the https://centos.org.cu/bugs/[The CentOS Bugs] website.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Author
|
|
Alain Reguera Delgado |
954d94 |
------
|
|
Alain Reguera Delgado |
954d94 |
Written by mailto:al@centos.org.cu[Alain Reguera Delgado]
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
Copyright
|
|
Alain Reguera Delgado |
954d94 |
---------
|
|
Alain Reguera Delgado |
954d94 |
Copyright (C) 2013 The CentOS Project
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
This program is free software; you can redistribute it and/or modify
|
|
Alain Reguera Delgado |
954d94 |
it under the terms of the GNU General Public License as published by
|
|
Alain Reguera Delgado |
954d94 |
the Free Software Foundation; either version 2 of the License, or (at
|
|
Alain Reguera Delgado |
954d94 |
your option) any later version.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
This program is distributed in the hope that it will be useful, but
|
|
Alain Reguera Delgado |
954d94 |
WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Alain Reguera Delgado |
954d94 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Alain Reguera Delgado |
954d94 |
General Public License for more details.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
You should have received a copy of the GNU General Public License
|
|
Alain Reguera Delgado |
954d94 |
along with this program; if not, write to the Free Software
|
|
Alain Reguera Delgado |
954d94 |
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
Alain Reguera Delgado |
954d94 |
|
|
Alain Reguera Delgado |
954d94 |
// vim: set syntax=asciidoc:
|