Blame Manuals/Repository/repository-html/repository_16.html

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

3.13 trunk/Identity/Models/Tpl/Promo/Web

4c79b5
4c79b5
bf28e1
4c79b5

3.13.1 Goals

4c79b5
bf28e1

Organize scalable vector graphics (svg) to help describe the CentOS

bf28e1
web environment.
bf28e1

bf28e1
bf28e1
bf28e1

3.13.2 The CentOS web environment

bf28e1
bf28e1

Inside CentOS corporate identity, the CentOS web environment is

bf28e1
considered a promotion component. The CentOS web environment is formed
bf28e1
by a central web application --to cover base needs (e.g., per-major
bf28e1
release information like release notes, lifetime, downloads,
bf28e1
documentation, support, security advisories, bugs, etc.)-- and many
bf28e1
different free web applications --to cover specific needs (e.g.,
bf28e1
wiki, mailing lists, etc.)--. 
bf28e1

bf28e1

The CentOS web environment is addressed to solve the following issues:

bf28e1

5fb024
    bf28e1
  • One unique name and one unique visual style to all web
  • bf28e1
    applications used inside the web environment.
    bf28e1
    bf28e1
  • One-step navigation to web applications inside the environment.
  • bf28e1
    bf28e1
  • High degree of customization to change the visual style of all
  • bf28e1
    web applications with few changes (e.g, updating just two or three
    bf28e1
    images plus common style sheet [CSS] definitions).
    5fb024
    5fb024
    bf28e1

    The CentOS project is attached to a monolithic corporate visual

    bf28e1
    identity (see section trunk/Identity), where all visual manifestations
    bf28e1
    have one unique name and one unique visual style. This way, the CentOS
    bf28e1
    web environment has one unique name (the CentOS brand) and one unique
    bf28e1
    visual style (the CentOS default theme) for all its visual
    bf28e1
    manifestations, the web applications in this case.
    bf28e1

    bf28e1

    Since a maintainance point of view, achiving the one unique visual

    bf28e1
    style inside CentOS web environment is not a simple task. The CentOS
    bf28e1
    web environment is built upon many different web applications which
    bf28e1
    have different visual styles and different internal ways to customize
    bf28e1
    their own visual styles. For example: MoinMoin, the web application
    bf28e1
    used to support the CentOS wiki (http://wiki.centos.org/) is
    bf28e1
    highly customizable but Mailman (in its 2.x.x serie), the web
    bf28e1
    application used to support the CentOS mailing list, doesn't
    bf28e1
    support(1) a customization system that separates
    bf28e1
    presentation from logic, similar to that used by MoinMoin.
    bf28e1

    bf28e1

    This visual style diversity complicates our goal of one unique visual

    bf28e1
    style for all web applications. So, if we want one unique visual style
    bf28e1
    for all web applications used, it is innevitable to modify the web
    bf28e1
    applications in order to implement the CentOS one unique visual style
    bf28e1
    customization in them. Direct modification of upstream applications is
    bf28e1
    not convenient because upstream applications come with their one
    bf28e1
    visual style and administrators take the risk of loosing all
    bf28e1
    customization changes the next time the application be updated (since
    bf28e1
    not all upstream web applications, used in CentOS web environment,
    bf28e1
    separate presentation from logic).
    bf28e1

    bf28e1

    To solve the "one unique visual style" issue, installation and

    bf28e1
    actualization of web applications --used inside CentOS web
    bf28e1
    environment-- need to be independent from upstream web applications
    bf28e1
    development line; in a way that CentOS web environment administrators
    bf28e1
    can install and update web applications freely without risk of loosing
    bf28e1
    the one unique visual style customization changes. 
    bf28e1

    bf28e1

    At the surface of this issue we can see the need of one specific yum

    bf28e1
    repository to store CentOS web environment customized web applications.
    bf28e1

    7fa1fb
    bf28e1
    bf28e1

    3.13.2.1 Design model (without ads)

    c2a1bc
    7fa1fb
    bf28e1
    bf28e1

    3.13.2.2 Design model (with ads)

    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.3 HTML definitions

    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.4 Controlling visual style

    bf28e1
    bf28e1

    Inside CentOS web environment, the visual style is controlled by the

    bf28e1
    following compenents:
    bf28e1

    bf28e1
    bf28e1
    Webenv header background
    bf28e1
    trunk/Identity/Themes/Motifs/$THEME/Backgrounds/Img/1024x250.png
    bf28e1
    bf28e1
    bf28e1
    CSS definitions
    bf28e1
    trunk/Identity/Themes/Models/Default/Promo/Web/CSS/stylesheet.css
    bf28e1
    bf28e1
    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.5 Producing visual style

    bf28e1
    bf28e1

    The visual style of CentOS web environment is defined in the following

    bf28e1
    files:
    bf28e1

    bf28e1
    trunk/Identity/Themes/Motifs/$THEME/Backgrounds/Xcf/1024x250.xcf
    bf28e1
    trunk/Identity/Themes/Motifs/$THEME/Backgrounds/Img/1024x250.png
    bf28e1
    trunk/Identity/Themes/Motifs/$THEME/Backgrounds/Img/1024x250-bg.png
    bf28e1
    trunk/Identity/Themes/Motifs/$THEME/Backgrounds/Tpl/1024x250.svg
    bf28e1
    bf28e1

    As graphic designer you use <tt>`1024x250.xcf'</tt> file to produce

    bf28e1
    <tt>`1024x250-bg.png'</tt> file. Later, inside <tt>`1024x250.svg'</tt> file,
    bf28e1
    you use the <tt>`1024x250-bg.png'</tt> file as background layer to draw
    bf28e1
    your vectorial design. When you consider you artwork ready, use the
    bf28e1
    centos-art.sh script, as described below, to produce the
    bf28e1
    visual style controller images of CentOS web environment.
    bf28e1

    bf28e1
    centos-art render --entry=trunk/Identity/Themes/Motifs/$THEME/Backgrounds --filter='1024x250'
    bf28e1
    bf28e1

    Once you have rendered required image files, changing the visual style

    bf28e1
    of CentOS web environment is a matter of replacing old image files
    bf28e1
    with new ones, inside webenv repository file system structure. The
    bf28e1
    visual style changes will take effect the next time customization line
    bf28e1
    of CentOS web applications be packaged, uploded, and installed from
    bf28e1
    [webenv] or [webenv-test] repositories.
    bf28e1

    bf28e1
    bf28e1
    bf28e1

    3.13.2.6 Navigation

    bf28e1
    bf28e1

    Inside CentOS web environment, the one-step navegation between web

    bf28e1
    applications is addressed using the web environment navigation bar.
    bf28e1
    The web environment navigation bar contains links to main applications
    bf28e1
    and is always visible no matter where you are inside the web
    bf28e1
    environment.
    bf28e1

    bf28e1
    bf28e1
    bf28e1

    3.13.2.7 Development and release cycle

    bf28e1
    bf28e1

    The CentOS web environment development and relase cycle is described

    bf28e1
    below: 
    bf28e1

    bf28e1
    bf28e1
    Download
    bf28e1
    bf28e1

    The first action is download the source code of web applications we

    bf28e1
    want to use inside CentOS web environment.
    bf28e1

    bf28e1
    Important

    Important

    The source location from which web application are

    bf28e1
    downloaded is very important. Use SRPMs from CentOS [base]
    bf28e1
    and [updates] repositories as first choise, and third party
    bf28e1
    repositories (e.g. RPMForge, EPEL, etc.) as last resource.
    bf28e1

    bf28e1
    bf28e1
    bf28e1
    Prepare
    bf28e1
    bf28e1

    Once web application source code has been downloaded, our duty is

    bf28e1
    organize its files inside <samp>`webenv'</samp> version controlled repository.
    bf28e1

    bf28e1

    When preparing the structure keep in mind that different web

    bf28e1
    applications have different visual styles, and also different ways to
    bf28e1
    implement it. A convenient way to organize the file system structure
    bf28e1
    would be create one development line for each web application we use
    bf28e1
    inside CentOS web environment. For example, consider the following
    bf28e1
    file system structure:
    bf28e1

    bf28e1
    https://projects.centos.org/svn/webenv/trunk/
    bf28e1
    |-- WebApp1/
    bf28e1
    |   |-- Sources/
    bf28e1
    |   |   `-- webapp1-0.0.1/
    bf28e1
    |   |-- Rpms/
    bf28e1
    |   |   `-- webapp1-0.0.1.rpm
    bf28e1
    |   |-- Srpms/
    bf28e1
    |   |   `-- webapp1-0.0.1.srpm
    bf28e1
    |   `-- Specs/
    bf28e1
    |       `-- webapp1-0.0.1.spec
    bf28e1
    |-- WebApp2/
    bf28e1
    `-- WebAppN/
    bf28e1
    bf28e1
    bf28e1
    Customize
    bf28e1
    bf28e1

    Once web applications have been organized inside the version

    bf28e1
    controlled repository file system, use subversion to create the CentOS
    bf28e1
    customization development line of web applications source code.  For
    bf28e1
    example, using the above file system structure, you can create the
    bf28e1
    customization development line of <tt>`webapp1-0.0.1/'</tt> with the
    bf28e1
    following command:
    bf28e1

    bf28e1
    svn cp trunk/WebApp1/Sources/webapp1-0.0.1 trunk/WebApp1/Sources/webapp1-0.0.1-webenv
    bf28e1
    bf28e1

    The command above creates the following structure:

    bf28e1

    bf28e1
    https://projects.centos.org/svn/webenv/trunk/
    bf28e1
    |-- WebApp1/
    bf28e1
    |   |-- Sources/
    bf28e1
    |   |   |-- webapp1-0.0.1/
    bf28e1
    |   |   `-- webapp1-0.0.1-webenv/
    bf28e1
    |   |-- Rpms/
    bf28e1
    |   |   `-- webapp1-0.0.1.rpm
    bf28e1
    |   |-- Srpms/
    bf28e1
    |   |   `-- webapp1-0.0.1.srpm
    bf28e1
    |   `-- Specs/
    bf28e1
    |       `-- webapp1-0.0.1.spec
    bf28e1
    |-- WebApp2/
    bf28e1
    `-- WebAppN/
    bf28e1
    bf28e1

    In the above structure, the <tt>`webapp1-0.0.1-webenv/'</tt> directory is

    bf28e1
    the place where you customize the visual style of
    bf28e1
    <tt>`webapp1-0.0.1/'</tt> web application. 
    bf28e1

    bf28e1
    Info

    Tip

    Use the diff command of Subversion between

    bf28e1
    CentOS customization and upstream development lines to know what you
    bf28e1
    are changing exactly.
    bf28e1

    bf28e1
    bf28e1
    bf28e1
    Build packages
    bf28e1
    bf28e1

    When web application has been customized, build the web application

    bf28e1
    RPM and SRPM using the source location with <samp>`-webenv'</samp> prefix. 
    bf28e1

    bf28e1
    https://projects.centos.org/svn/webenv/trunk/
    bf28e1
    |-- WebApp1/
    bf28e1
    |   |-- Sources/
    bf28e1
    |   |   |-- webapp1-0.0.1/
    bf28e1
    |   |   `-- webapp1-0.0.1-webenv/
    bf28e1
    |   |-- Rpms/
    bf28e1
    |   |   |-- webapp1-0.0.1.rpm
    bf28e1
    |   |   `-- webapp1-0.0.1-webenv.rpm
    bf28e1
    |   |-- Srpms/
    bf28e1
    |   |   |-- webapp1-0.0.1.srpm
    bf28e1
    |   |   `-- webapp1-0.0.1-webenv.srpm
    bf28e1
    |   `-- Specs/
    bf28e1
    |       |-- webapp1-0.0.1.spec
    bf28e1
    |       `-- webapp1-0.0.1-webenv.spec
    bf28e1
    |-- WebApp2/
    bf28e1
    `-- WebAppN/
    bf28e1
    bf28e1
    bf28e1
    Release for testing
    bf28e1
    bf28e1

    When the customized web application has been packaged, make packages

    bf28e1
    available for testing and quality assurance. This can be achives using
    bf28e1
    a [webenv-test] yum repository. 
    bf28e1

    bf28e1
    info

    Note

    The [webenv-test] repository is not shipped inside

    bf28e1
    CentOS distribution default yum configuraiton. In order to use
    bf28e1
    [webenv-test] repository you need to configure it first.
    bf28e1

    bf28e1
    bf28e1

    If some problem is found to install/update/use the customized version

    bf28e1
    of web application, the problem is notified somewhere (a bugtracker
    bf28e1
    maybe) and the customization face is repated in order to fix the
    bf28e1
    problem. To release the new package add a number after <samp>`-webenv'</samp>
    bf28e1
    prefix. For example, if some problem is found in
    bf28e1
    <tt>`webapp1-0.0.1-webenv.rpm'</tt>, when it be fixed the new package will
    bf28e1
    be named <tt>`webapp1-0.0.1-webenv-1.rpm'</tt>. If a problem is found in
    bf28e1
    <tt>`webapp1-0.0.1-webenv-1.rpm'</tt>, when it be fixed the new package
    bf28e1
    will be named <tt>`webapp1-0.0.1-webenv-2.rpm'</tt>, and so on.
    bf28e1

    bf28e1

    The "customization -- release for testing" process is repeated

    bf28e1
    until CentOS quality assurance team considers the package is ready for
    bf28e1
    production.
    bf28e1

    bf28e1
    bf28e1
    Release for production
    bf28e1
    bf28e1

    When customized web application packages are considered ready for

    bf28e1
    production they are moved from [webenv-test] to [webenv] repository.
    bf28e1
    This action is commited by CentOS quality assurance team.
    bf28e1

    bf28e1
    info

    Note

    The [webenv] repository is not shipped inside CentOS

    bf28e1
    distribution default yum configuraiton. In order to use [webenv]
    bf28e1
    repository you need to configure it first.
    bf28e1

    bf28e1
    bf28e1
    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.8 The [webenv-test] repository

    bf28e1
    bf28e1
    /etc/yum.repos.d/CentOS-Webenv-test.repo
    bf28e1
    bf28e1
    [webenv-test]
    bf28e1
    name=CentOS-$releasever - Webenv-test
    bf28e1
    mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=webenv-test
    bf28e1
    #baseurl=http://mirror.centos.org/centos/$releasever/webenv-test/$basearch/
    bf28e1
    gpgcheck=1
    bf28e1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-$releasever
    bf28e1
    enabled=1
    bf28e1
    priority=10
    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.9 The [webenv] repository

    bf28e1
    bf28e1
    /etc/yum.repos.d/CentOS-Webenv.repo
    bf28e1
    bf28e1
    [webenv]
    bf28e1
    name=CentOS-$releasever - Webenv
    bf28e1
    mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=webenv
    bf28e1
    #baseurl=http://mirror.centos.org/centos/$releasever/webenv/$basearch/
    bf28e1
    gpgcheck=1
    bf28e1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-$releasever
    bf28e1
    enabled=1
    bf28e1
    priority=10
    bf28e1
    bf28e1
    bf28e1
    bf28e1

    3.13.2.10 Priority configuration

    bf28e1
    bf28e1

    Both [webenv] and [webenv-test] repositories update packages inside

    bf28e1
    CentOS [base] and CentOS [updates] repositories.
    bf28e1

    4c79b5
    5cee2c
    4c79b5

    3.13.3 Usage

    4c79b5
    2dc146
      2dc146
    • ...
    • 2dc146
      2dc146
      4c79b5
      5cee2c
      4c79b5

      3.13.4 See also

      4c79b5
      bf28e1
      bf28e1
      3.11 trunk/Identity/Models/Img/Promo/Web  
      bf28e1
      bf28e1
      4c79b5
      4c79b5
      4c79b5
      5cee2c
      [ < ]
      5cee2c
      [ > ]
      4c79b5
         
      4c79b5
      [ << ]
      bf28e1
      [ Up ]
      bf28e1
      [ >> ]
      4c79b5
      4c79b5

      4c79b5
       <font size="-1">
      bf28e1
        This document was generated on February, 27 2011 using texi2html 1.76.
      4c79b5
       </font>
      4c79b5
       
      4c79b5
      4c79b5

      4c79b5
      </body>
      4c79b5
      </html>