This file is indexed.

/usr/lib/python2.7/dist-packages/os_apply_config-0.1.14.egg-info/PKG-INFO is in python-os-apply-config 0.1.14-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
Metadata-Version: 1.1
Name: os-apply-config
Version: 0.1.14
Summary: Config files from cloud metadata
Home-page: http://git.openstack.org/cgit/openstack/os-apply-config
Author: OpenStack
Author-email: openstack-dev@lists.openstack.org
License: UNKNOWN
Description: ===============
        os-apply-config
        ===============
        
        -----------------------------------------------
        Apply configuration from cloud metadata (JSON)
        -----------------------------------------------
        
        What does it do?
        ================
        
        It turns metadata from one or more JSON files like this::
        
            {"keystone": {"database": {"host": "127.0.0.1", "user": "keystone", "password": "foobar"}}}
        
        into service config files like this::
        
            [sql]
            connection = mysql://keystone:foobar@127.0.0.1/keystone
            ...other settings...
        
        Usage
        =====
        
        Just pass it the path to a directory tree of templates::
        
            sudo os-apply-config -t /home/me/my_templates
        
        By default it will read config files according to the contents of
        the file `/var/lib/os-collect-config/os_config_files.json`. In
        order to remain backward compatible it will also fall back to
        /var/run/os-collect-config/os_config_files.json, but the fallback
        path is deprecated and will be removed in a later release. The main
        path can be changed with the command line switch `--os-config-files`,
        or the environment variable `OS_CONFIG_FILES_PATH`. The list can
        also be overridden with the environment variable `OS_CONFIG_FILES`.
        If overriding with `OS_CONFIG_FILES`, the paths are expected to be colon,
        ":", separated. Each json file referred to must have a mapping as their
        root structure. Keys in files mentioned later in the list will override
        keys in earlier files from this list. For example::
        
            OS_CONFIG_FILES=/tmp/ec2.json:/tmp/cfn.json os-apply-config
        
        This will read `ec2.json` and `cfn.json`, and if they have any
        overlapping keys, the value from `cfn.json` will be used. That will
        populate the tree for any templates found in the template path. See
        https://git.openstack.org/cgit/openstack/os-collect-config for a
        program that will automatically collect data and populate this list.
        
        You can also override `OS_CONFIG_FILES` with the `--metadata` command
        line option, specifying it multiple times instead of colon separating
        the list.
        
        `os-apply-config` will also always try to read metadata in the old
        legacy paths first to populate the tree. These paths can be changed
        with `--fallback-metadata`.
        
        Templates
        =========
        
        The template directory structure should mimic a root filesystem, and
        contain templates for only those files you want configured. For
        example::
        
           ~/my_templates$ tree
           .
           └── etc
               ├── keystone
               │    └── keystone.conf
               └── mysql
                     └── mysql.conf
        
        An example tree can be found `here <http://git.openstack.org/cgit/openstack/tripleo-image-elements/tree/elements/keystone/os-apply-config>`_.
        
        If a template is executable it will be treated as an *executable
        template*.  Otherwise, it will be treated as a *mustache template*.
        
        Mustache Templates
        ------------------
        
        If you don't need any logic, just some string substitution, use a
        mustache template.
        
        Metadata settings are accessed with dot ('.') notation::
        
          [sql]
          connection = mysql://{{keystone.database.user}}:{{keystone.database.password}}@{{keystone.database.host}}/keystone
        
        Executable Templates
        --------------------
        
        Configuration requiring logic is expressed in executable templates.
        
        An executable template is a script which accepts configuration as a
        JSON string on standard in, and writes a config file to standard out.
        
        The script should exit non-zero if it encounters a problem, so that
        os-apply-config knows what's up.
        
        The output of the script will be written to the path corresponding to
        the executable template's path in the template tree::
        
          #!/usr/bin/env ruby
          require 'json'
          params = JSON.parse STDIN.read
          puts "connection = mysql://#{c['keystone']['database']['user']}:#{c['keystone']['database']['password']}@#{c['keystone']['database']['host']}/keystone"
        
        You could even embed mustache in a heredoc, and use that::
        
          #!/usr/bin/env ruby
          require 'json'
          require 'mustache'
          params = JSON.parse STDIN.read
        
          template = <<-eos
          [sql]
          connection = mysql://{{keystone.database.user}}:{{keystone.database.password}}@{{keystone.database.host}}/keystone
        
          [log]
          ...
          eos
        
          # tweak params here...
        
          puts Mustache.render(template, params)
        
        
        Quick Start
        ===========
        ::
        
           # install it
           sudo pip install -U git+git://git.openstack.org/openstack/os-apply-config.git
        
           # grab example templates
           git clone git://git.openstack.org/openstack/tripleo-image-elements /tmp/config
        
           # run it
           os-apply-config -t /tmp/config/elements/nova/os-apply-config/ -m /tmp/config/elements/seed-stack-config/config.json -o /tmp/config_output
        
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: OpenStack
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python