RPM

Managing %config files: VCS, devops, or NoSQL

Registered by Jeff Johnson

The %config handling in RPM needs to be extended to
be able to merge local changes with distributed defaults.

There are several (at least) approaches:

1) Link in client libraries sufficient to be able to do checkin/checkout/merge/diff methods.
Subversion and libgit2 are the best (imho) candidates here.

2) Use embedded language interpreters in RPM to load existing per-language
bindings. This would permit, say, mercurial to be used equivalently to the C
libraries in subversion/libgit2.

3) Focus on "configuration management" tools like cfengine/puppet and "devops"
instead of VCS. The main difference (imho) in a "devops" approach is persistent patch
management rather than complete historical content tracking as provided by a VCS

4) Ignore using existing VCS/devops approaches and design a store-and-forward
content distribution from scratch using a distributed store. The gridfs portion
of the mongo-c-client is one approach to store-and-forward retrieval of file
content: locally customized content is handled by adding a prefix to the retrieval
path into a distributed store.

Blueprint information

Status:
Started
Approver:
Jeff Johnson
Priority:
Medium
Drafter:
Jeff Johnson
Direction:
Approved
Assignee:
Jeff Johnson
Definition:
Discussion
Series goal:
None
Implementation:
Slow progress
Milestone target:
None
Started by
Jeff Johnson

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.