Esempio n. 1
0
 def __init__(self, namespace=None):
     self.cache_dir = os.path.join(get_project_cache_dir(), namespace
                                   or "content")
     self._db_path = os.path.join(self.cache_dir, "db.data")
     self._lockfile = None
     if not os.path.isdir(self.cache_dir):
         os.makedirs(self.cache_dir)
Esempio n. 2
0
    def __init__(self, cache_dir=None):
        self.cache_dir = None
        self._db_path = None
        self._lockfile = None

        self.cache_dir = cache_dir or get_project_cache_dir()
        self._db_path = join(self.cache_dir, "db.data")
Esempio n. 3
0
    def __init__(self, project_dir, args, debug_options, env_options):
        self.project_dir = project_dir
        self.args = list(args)
        self.debug_options = debug_options
        self.env_options = env_options

        self._debug_server = DebugServer(debug_options, env_options)
        self._session_id = None

        if not isdir(get_project_cache_dir()):
            os.makedirs(get_project_cache_dir())
        self._gdbsrc_dir = mkdtemp(dir=get_project_cache_dir(),
                                   prefix=".piodebug-")

        self._target_is_run = False
        self._last_server_activity = 0
        self._auto_continue_timer = None
Esempio n. 4
0
    def __init__(self, project_dir, args, debug_options, env_options):
        super(GDBClient, self).__init__()
        self.project_dir = project_dir
        self.args = list(args)
        self.debug_options = debug_options
        self.env_options = env_options

        self._debug_server = DebugServer(debug_options, env_options)
        self._session_id = None

        if not isdir(get_project_cache_dir()):
            os.makedirs(get_project_cache_dir())
        self._gdbsrc_dir = mkdtemp(dir=get_project_cache_dir(), prefix=".piodebug-")

        self._target_is_run = False
        self._auto_continue_timer = None
        self._errors_buffer = b""
Esempio n. 5
0
def system_prune(force):
    click.secho("WARNING! This will remove:", fg="yellow")
    click.echo(" - cached API requests")
    click.echo(" - cached package downloads")
    click.echo(" - temporary data")
    if not force:
        click.confirm("Do you want to continue?", abort=True)

    reclaimed_total = 0
    cache_dir = get_project_cache_dir()
    if os.path.isdir(cache_dir):
        reclaimed_total += fs.calculate_folder_size(cache_dir)
        fs.rmtree(cache_dir)

    click.secho("Total reclaimed space: %s" %
                fs.humanize_file_size(reclaimed_total),
                fg="green")
Esempio n. 6
0
def prune_cached_data(force=False, dry_run=False, silent=False):
    reclaimed_space = 0
    if not silent:
        click.secho("Prune cached data:", bold=True)
        click.echo(" - cached API requests")
        click.echo(" - cached package downloads")
        click.echo(" - temporary data")
    cache_dir = get_project_cache_dir()
    if os.path.isdir(cache_dir):
        reclaimed_space += fs.calculate_folder_size(cache_dir)
        if not dry_run:
            if not force:
                click.confirm("Do you want to continue?", abort=True)
            fs.rmtree(cache_dir)
    if not silent:
        click.secho("Space on disk: %s" %
                    fs.humanize_file_size(reclaimed_space))
    return reclaimed_space
Esempio n. 7
0
def get_pip_package(to_develop):
    if not to_develop:
        return "platformio"
    dl_url = "https://github.com/platformio/platformio-core/archive/develop.zip"
    cache_dir = get_project_cache_dir()
    if not os.path.isdir(cache_dir):
        os.makedirs(cache_dir)
    pkg_name = os.path.join(cache_dir, "piocoredevelop.zip")
    try:
        with open(pkg_name, "w") as fp:
            r = exec_command(["curl", "-fsSL", dl_url],
                             stdout=fp,
                             universal_newlines=True)
            assert r["returncode"] == 0
        # check ZIP structure
        with ZipFile(pkg_name) as zp:
            assert zp.testzip() is None
        return pkg_name
    except:  # pylint: disable=bare-except
        pass
    return dl_url
Esempio n. 8
0
 def get_tmp_dir(self):
     if not self._tmp_dir:
         self._tmp_dir = self.ensure_dir_exists(
             os.path.join(get_project_cache_dir(), "tmp")
         )
     return self._tmp_dir
Esempio n. 9
0
 def get_download_dir(self):
     if not self._download_dir:
         self._download_dir = self.ensure_dir_exists(
             os.path.join(get_project_cache_dir(), "downloads")
         )
     return self._download_dir