File: __init__.py

package info (click to toggle)
cloud-init 25.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 12,412 kB
  • sloc: python: 135,894; sh: 3,883; makefile: 141; javascript: 30; xml: 22
file content (23 lines) | stat: -rw-r--r-- 899 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# This file is part of cloud-init. See LICENSE file for license information.

"""Common cloud-init devel command line utility functions."""

from cloudinit.helpers import Paths
from cloudinit.stages import Init


def read_cfg_paths(fetch_existing_datasource: str = "") -> Paths:
    """Return a Paths object based on the system configuration on disk.

    :param fetch_existing_datasource: String one of check or trust. Whether to
        load the pickled datasource before returning Paths. This is necessary
        when using instance paths via Paths.get_ipath method which are only
        known from the instance-id metadata in the detected datasource.

    :raises: DataSourceNotFoundException when no datasource cache exists.
    """
    init = Init(ds_deps=[])
    if fetch_existing_datasource:
        init.fetch(existing=fetch_existing_datasource)
    init.read_cfg()
    return init.paths