I'm looking for a part-time remote job.

Hire me


I'm the author of:

Mastering Redmine is a comprehensive guide with tips, tricks and best practices, and an easy-to-learn structure.

Check the book's project or

Buy the book

Social pages of the book:

By buying this book you also donate to Redmine (see this page).


Follow me:

Enhancement #1600

Change configuration file format

Added by Andriy Lesyuk almost 9 years ago. Updated over 8 years ago.

Status:
Open
Priority:
Minor
Assignee:
Category:
Core
Target version:
Start date:
01 Feb 2011
Due date:
% Done:

0%


Description

Current configuration file format is too simple and too limited. I believe Orangutan configuration should be flexible and extendable. So change of configuration file format is needed.

What is the problem? There were an idea to allow changing weight of contexts using configuration file. With current format it would look like this:

contexts.weight          = Issue:-10
contexts.request_weight  = Issue:-10
contexts.response_weight = Issue:undef

This looks odd...

So the idea is to change to something like:

Context Issue {
  Weight {
    Request  -10
    Response undef
  }
}

The current file will look like this:

Changelog Changelog
DisplayName "%f %s" 

Admin user@localhost
Manager user@localhost

UsersDirectory Users
UsersData Data
ContextsDirectory Contexts
MonkeysDirectory Monkeys

Contexts {
  Policy Exclude
  Include Issue
  Include Task
  ...
}

Monkeys {
  RedMonkey redmonkey@localhost
}

Jabber {
  Hostname localhost
  Port 5222
  ...
}

Context Issue {
  Field SomeField Value
  Option SomeOption Value
}

Include weights.conf

Note: The format is subject to change.

It would be also great if functions to access configuration values would look like this:

$main::config::Monkeys::RedMonkey;


Related issues

Related to Orangutan - Enhancement #1081: Disabling contexts + maybe changing weight from config file Closed 01 Nov 2010 01 Feb 2011
Precedes Orangutan - Enhancement #1601: Configuring contexts weights Incomplete 02 Feb 2011 02 Feb 2011

History

#1 Updated by Andriy Lesyuk almost 9 years ago

As a part of this issue default values should be implemented!.. That is if currently we do:

$main::config->Get('section', 'parameter');

In new version there should be supported an additional optional argument:
$main::config->Get('section', 'parameter', 'default_value');

Of course, the syntax will change etc...

#2 Updated by Andriy Lesyuk almost 9 years ago

  • Category changed from Configuration to Core

#3 Updated by Andriy Lesyuk almost 9 years ago

  • Target version set to 2.00

#4 Updated by Andriy Lesyuk almost 9 years ago

  • Tracker changed from Improvement to Enhancement

#5 Updated by Andriy Lesyuk almost 9 years ago

Today one user (Sandeep) asked me how to specify MySQL socket file path... Currently it’s not possible! With new configuration it can be done like:

MySQL {
  Option mysql_socket <path>
}

#6 Updated by Andriy Lesyuk over 8 years ago

New configuration file format can also be used for quick disabling/enabling contexts.

For example contexts can be virtually grouped:

Group TimeTracking {
  Issue
  Task
  ...
}

Then just disabled:

Exclude TimeTracking

Also available in: Atom PDF

Terms of use | Privacy policy