Skip to content
graciani edited this page Dec 2, 2011 · 31 revisions

DIRAC v6r0 (work in Progress)

With version v6r0 DIRAC finalizes the migration from CERN SVN repository to GitHub git repository. With the excuse of this change, the distribution tools and the way different user communities control the DIRAC dependence of their extensions has been updated. At the same time, a number of new features have been added with respect to the previous production version (v5r13), mostly in the framework, and some precautions need to be taken into account when updating your installations.

What's new?

For a full list of the changes, look at the release notes. This is just a selection of highlights that should be taken into account when updating your DIRAC installation.

  • The DISET protocol for client-server communication has been updated to the new OpenSSL version () and new functionality has been added. The new DISET functionality will allow to produce a new type of DIRAC components, the executors. Some features of this new version are no longer backwards compatible. They are disable by default in v6r0 to make it compatible with v5r13. They will be enable in v6r1.
  • dirac-proxy-init is now the only tool to create proxies, adding VOMS extensions and delegating a long-living proxy to the ProxyManager to be used by DIRAC. Several Configuration options allow to define the default behavior in each installation. When certificate is close to expiration, notifications to affected users will be sent out.
  • dirac-distribution and dirac-install have been greatly modified. Installation and Project defaults can be defined at external locations. In this way each community can have full control of the versions, extensions, repository and download servers used for their distributions.

How to update?

When updating from v5r13 to v6r0 there are few things that need to be taken into account. The most important one is that v5r13 dirac-install script is not able to install the new version. Thus a migration version, currently v5r14p1, needs to be used. The new version of OpenSSL requires a new environment variable to work properly. Thus, bashrc file needs to be updated. This file does not get overwritten when doing new installations, therefore you need to remove it before doing the installation of v6r0 (make a backup if you have some customizations in this this file).

  • Client update, retrieve new dirac-install script:

    $ wget --no-check-certificate -O dirac-install 'https://github.com/DIRACGrid/DIRAC/raw/integration/Core/scripts/dirac-install.py'
    $ mv bashrc bashrc.bak
    $ python dirac-install -V "Name of your installation"
    
  • Server update, using the CLI (first update the client to v6r0):

    $ dirac-proxy-init -g dirac_admin
    $ dirac-admin-sysadmin-cli -H "Host name of server"
    > update v5r14p1              # or a version of your project based on that DIRAC version
    > restart Framework SystemAdministrator
    > set project DIRAC           # or Name of your project
    > exec rm /opt/dirac/bashrc   #
    > update v6r0                 # or a version of your project based on this DIRAC version
    > restart * *                 # to get all components restarted
    
  • FileCatalogDB, needs an schema update. Ask for support if you are using the DIRAC FC in v5r13.

  • Update the Configuration to take advantage of the new features of dirac-proxy-init, the following Options can be defined for any user group:

    - SafeCertificateLifeTime (default = 2592000, 1 month): send mail to the user if the certificate will expire
      in less than this time.
    - AutoUploadProxy (default = False): Delegate a proxy to DIRAC ProxyManager as long as the certificate is
      valid when a proxy for that group is created.
    - AutoUploadPilotProxy (default = False): Delegate a proxy for any Pilot group to which the user belong.
    - AutoAddVOMS (default = False): Attempt to add VOMS extension to the proxy if the group has one.
    

Extensions can make their own releases

Each DIRAC extension can make a release. To do so, follow the documentation at http://diracgrid.org/files/docs/DeveloperGuide/ReleaseProcedure/index.html

Other changes

  • The log level for Scripts is set to NOTICE and the timestamp printout is disabled in the new defaults. The command line option "-d" (that can be used several times) allows to increase the verbosity.
  • New Helpers to access /Registry and /Operations information. Direct access to those Configuration sections should be removed from the code.
  • DIRAC File Catalog, allow up to 15 levels of directories.
  • The logic of the Stager has been extensively reviewed and updated.
  • Allow Modules (in the Workflow mechanism) to define Input and Output parameters.
Clone this wiki locally