From Fedora Project Wiki

Contact Information:


  • Name: Ankit Yadav
  • Time Zone: UTC + 5:30
  • Email: ankitwrk AT gmail DOT com
  • IRC Nick: ankity10, ankity10_
  • Mob: +91 8087850104
  • Mentor: William Brown (firstyear)

Abstract:


  • Administration of 389-ds-server is a complex task. Currently there are some perl scripts that are installed with 389-ds-server instance which administer specific parts of server. But the server cannot be managed from these perl scripts alone. To simplify this complex Directory Server management, new tools are being developed.
  • lib389 is a python library that uses LDAP to communicate with 389-ds-server. This library exposes its functionality with the help of two command line tools dsconf and dsctl (earlier it was “dsadm”, renamed due to naming conflict with “dsidm” ). In lib389 most of the base classes that communicate with 389-ds-server are already written.
  • This project aims to add new modules in lib389 to replace the legacy tools (perl scripts, java console application) and extend command line python tool “dsconf” to support its enabling / disabling / configuration.

Benefits to Community:


  • Successful completion of this project will help administrators to manage 389-ds-server in effortless way and “dsconf” will be the one stop solution for all the configuration related tasks.


Tasks:


  • Add two new modules to extend the command line tool “dsconf” that will inherit the core base classes DSLdapObjects and DSLdapObject which are in file lib389/_mapped_object.py.
  • Write pytest tests for the above modules.
  • Adding new command line module for two newly added modules in lib389/cli_conf/ so that “dsconf” can be used to call module specific functionality.
  • Write pytest tests for above command line modules in folder lib389/tests/cli/.


Implementation Details:

Timeline:


Date Tasks Deliverable
May 4 - May 16 Understand the codebase and ask questions to clarify concepts. -