[v4] - 2021-03-25: Do not overprovision space by default
Added
Configuration option of overprovisioning the build volume (overprovision-lvm), defaulting to 'false'.
Configurable temp volume reserve (temp-reserve-mb), defaulting to '100'.
Changed
(potentially breaking) The LVM image files are not created sparsely anymore. Previously, free disk space appeared free on both the build volume and the hosting volume, until actually allocated by writing to the build volume. Now, the space is actually consumed on volume creation -- meaning, that after creating the build volume, the root and temp volume do not have or show more space available than configured in root-reserve-mb and temp-reserve-mb. This can be reverted by setting overprovision-lvm to 'true', but surprising out-of-disk space situations might be the result.
Temp volume reserve was fixed to 1024 KB, this defaults to a more cautious 100 MB now, and is configurable.
[v3] - 2021-02-15: Fix running on Ubuntu 20.04
Changed
Includes a workaround for the temp disk being locked on Ubuntu 20.04. Instead of formatting the temp disk, the LVM volume is now created ontop of loop-mounted files on both / and /mnt, leaving the original file systems intact.
[v2] - 2021-01-05: Fix file system permissions on logical volume
Changed
Change the owner of the logical volume to the runner user recursively, fixing permission issues when e.g. checking out code to the root of the logical volume. (Actually, the problem is the lost+found folder in the ext4 root, and chowning it breaks its purpose. But since the volume is temporary anyway, lost+found functionality is not really needed).
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Bumps easimon/maximize-build-space from 7 to 8.
Release notes
Sourced from easimon/maximize-build-space's releases.
Changelog
Sourced from easimon/maximize-build-space's changelog.
Commits
09ba4bd
Use sudo for mkdir588fa33
Make build mount path and add ownership inputf869433
test: update test workflow actionse3f086e
Clarify measurement unitsbb22c03
collect and update elapsed time6ae56c8
build: remove ubuntu 18.04 from test matrixYou can trigger a rebase of this PR by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show