Skip to content

Reduce disk space usage of the rules #2641

@luispadron

Description

@luispadron

This is a general issue to describe the current disk space usage issues of some of the rules.

The current default is to not use the use_tree_artifacts_output flag, this mostly seems to be because of potentially now fixed issues in Bazel like: bazelbuild/bazel#16361. See also: #2545

With the current default the disk space usage for a large-ish application target is >3x the size when compared to the tree artifact ouputs.

Without usage of the use_tree_artifacts_outputs flag (default):

bin/Code/Apps/App/App_archive-root/Payload/App.app (732 MB)
bin/Code/Apps/App/App-intermediates/unprocessed_archive.zip (732 MB)
bin/Code/Apps/App/App.ipa (740 MB)

With use_tree_artifacts_outputs flag:

bin/Code/Apps/App/App_archive-root/Payload/App.app (732 MB)

For large projects this can add several hundreds of gigabytes to the output-base which means engineers need to frequently bazel clean --expunge to clear up disk space (or worse run into failed builds when they run out of disk space).

This has also been a topic of concern for other users, see: #2638

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions