معرفی شرکت ها


cfg-manager-1.1.6


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

git based config files manager and installer
ویژگی مقدار
سیستم عامل -
نام فایل cfg-manager-1.1.6
نام cfg-manager
نسخه کتابخانه 1.1.6
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Frédéric de ZORZI
ایمیل نویسنده f@idez.net
آدرس صفحه اصلی https://github.com/freddez/cfg
آدرس اینترنتی https://pypi.org/project/cfg-manager/
مجوز -
cfg : git based config files manager and installer ================================================== This command line tool helps you to keep your customized system configuration files in a git repository. Installation ------------ In addition of python3 and related modules, cfg depends of these binaries: - git - colordiff Latest release could be installed via:: pip3 install cfg-manager Or frome these sources:: sudo setup.py install Quickstart ---------- A *cfg* based project is basically composed of: - a *git* repository with a ``src`` directory where your customized configuration files are located, for example:: src/etc/aliases src/etc/apache2/ports.conf ... - a ``cfg_params.py`` file with at least the *TARGET* parameter set, for example:: TARGET = "/" Once *TARGET* parameter is configured, you can add existing config file with:: cfg add /etc/postfix/main.cf The previous command will create ``src/etc/postfix/main.cf`` file and commit it to the repository. Don't forget to ``git push`` your work. To see if your ``src`` and target directory differs, do a:: cfg check It will compare the two directories and eventually output differences:: checking content... /etc/aliases : 2a3 > root: f@idez.net And then:: cfg install Will install the modified files, producing the same output. Original dest files are backed up with ``.old`` extension. Template files -------------- For multiple environments usage (duplicated servers, sub-configurations), a pattern substitution system is provided: For example let's say you have in your ``cfg_params.py``: .. code-block:: python import socket import sys HOSTNAME = socket.gethostname() if HOSTNAME == "master-kf": TARGET = "/" HOST_IP = "5.223.34.110" PEER_IP = "5.68.252.23" elif HOSTNAME == "backup-kf": TARGET = "/" HOST_IP = "5.68.252.23" PEER_IP = "5.223.34.110" elif HOSTNAME == "bic": TARGET = "/home/fredz/tmp/dst_cfg" HOST_IP = "127.0.0.1" PEER_IP = "666.666.666.666" else: print("cfg_params.py : uknown host :", HOSTNAME) sys.exit(0) If you want to use these parameters in one of your config files, let's say ``/etc/keepalived/keepalived.conf``: 1. add it to your repo with ``cfg add``, 2. rename it to ``/etc/keepalived/cfg.keepalived.conf`` 3. use ``cfg[PATTERN]`` in your file: .. code-block:: squid vrrp_instance VI_1 { state BACKUP interface ens3 unicast_src_ip =cfg[HOST_IP] unicast_peer { =cfg[PEER_IP] } virtual_router_id 101 priority 101 advert_int 4 nopreempt virtual_ipaddress { 666.999.999.666 } notify /usr/local/bin/ovh_ip_up.py } Notes: - As shown in previous example, you can use python code to face various environment configurations. - **Only uppercase parameters names are exported**. Per-host files -------------- When configuration files are too different, you can provide host-dedicated versions of config files : simply prefix desired filenames with "cfg-[HOSTNAME]." where [HOSTNAME] is the target *hostname*. For example: src/etc/cfg-bic.aliases Permissions ----------- Because git repositories only handle executable flag permissions,target files permissions are preserved. It is the more simple and safe approach because most of the times, target files already exists. In a future release, I could had *in repository* permission management, but I have no simple approach yet. Internals --------- For safety and fast processing, src and target directories files contents are compared using git hashes: - pre-computed src git sha1 hashes for src - ``git hash-object --stdin-paths`` for src, in one system call.


نیازمندی

مقدار نام
- gitpython
- colorama
- termcolor


زبان مورد نیاز

مقدار نام
>=3.5.*, <4 Python


نحوه نصب


نصب پکیج whl cfg-manager-1.1.6:

    pip install cfg-manager-1.1.6.whl


نصب پکیج tar.gz cfg-manager-1.1.6:

    pip install cfg-manager-1.1.6.tar.gz