Releases: bravetools/bravetools
2.10
What's Changed
- address #246 by @idroz in #247
- Update docs with new LXD website by @Szubie in #249
- Fix dir type storage pool creation by @Szubie in #251
- Remote bravetools backend by @Szubie in #254
- Limit disk by @Szubie in #255
- temp fix to handle record-output and wait-for-ws in remote exec by @adrozdovbering in #256
- Fix non snap lxd by @JayBusch in #258
- address #259 by @idroz in #260
- address #262 by @idroz in #263
- accept Bravefile directly into brave build by @idroz in #265
New Contributors
Full Changelog: 2.00...2.10
2.00
What's Changed
- Apply unit default resource limitations to bravefiles on load by @Szubie in #102
- Filter LXD containers by user LXD profile by @Szubie in #105
- Move uninstallation docs to
Install Bravetools
section by @Szubie in #107 - Wait for LXD cert to become valid by @Szubie in #108
- Check for already-existing image before building image by @Szubie in #113
- Swallowed errors in bravefile run by @Szubie in #114
- Refactor
deploy
by @Szubie in #110 - Resource checks by @Szubie in #116
- Fix the DeleteImageByName function by @Szubie in #117
- Fix race condition in image cleanup when import local image by @Szubie in #118
- Set BraveHost Backend in factory function by @Szubie in #119
- Concurrent multipass info by @Szubie in #120
- Add disk space check during BuildImage for local images by @Szubie in #121
- Brave deploy local image by @idroz in #122
- Lxd version from client by @Szubie in #123
- Pass lxd server to ops by @Szubie in #124
- Resolve base image location by @Szubie in #115
- Win multipass dynamic ip by @Szubie in #112
- Add new remotes backend to bravetools. by @Szubie in #125
- Fix paths when copying dirs from Windows into Linux containers by @Szubie in #126
- Command env variables by @Szubie in #99
- Brave compose by @Szubie in #83
- generate cli docs by @idroz in #127
- add compose to cli readme by @idroz in #128
- Compose error handling by @idroz in #131
- automatically infer arch of public images if not specified by @idroz in #132
- get bravetools profile from host config.yaml by @idroz in #134
- ensure image name is printed when running brave base by @idroz in #135
- Init bridge IP address by @idroz in #143
- Remote deployment by @Szubie in #144
- add remote docs by @idroz in #149
- Error handling by @idroz in #150
- add default remote name to global config by @idroz in #151
- Remote lxd resources by @Szubie in #153
- Listing remote units by @Szubie in #154
- Network storage bugfix by @Szubie in #157
- Remote postdeploy by @Szubie in #159
- Remote unit management by @Szubie in #160
- Cli doc update by @idroz in #161
- Terser local unit names by @Szubie in #163
- Image name schema by @Szubie in #164
- fix image import paths by @idroz in #166
- Enable operating on multiple Units/Images with a brave command by @Szubie in #54
- Backwards compatability with image fields in existing Bravefiles by @Szubie in #167
- Brave build refactor by @Szubie in #168
- update Bravefile documentation by @idroz in #171
- Build arch by @idroz in #172
- update docs by @idroz in #173
- Command detach by @Szubie in #100
- New bravefile bugfixes by @Szubie in #174
- Remote resources by @Szubie in #175
- Remote
brave publish
by @Szubie in #176 - Add file extension when importing local image by @Szubie in #177
- Ensure local Backend running by @Szubie in #178
- Init docs by @idroz in #179
- Mount refactor by @Szubie in #180
- Published image name by @Szubie in #183
- add image name to avoid error during brave base by @idroz in #184
- Remote build by @idroz in #186
- ensure bravetools uses the remote storage pool specified in remote co… by @idroz in #187
- Rpi deploy fix by @idroz in #188
- Init test by @idroz in #189
- Deploy ram check by @idroz in #190
- Mem by @idroz in #191
- Clean filepaths when mounting by @Szubie in #192
- Missing image error reporting by @Szubie in #193
- Remote image deploy by @Szubie in #194
- Remote build fixes by @Szubie in #197
- Accurate architectures and image matching by @Szubie in #198
- Accurate architectures by @Szubie in #199
- remove goarch from image base and support for automated platform arch… by @idroz in #201
- error readability if image not found by @idroz in #202
- add a toc by @idroz in #203
- Build docs by @idroz in #206
- documentation formatting changes by @idroz in #207
- address #204 by checking if the image already exists in LXD store by @idroz in #209
- dont delete lxd image from store if it was used to deploy a unit #208 by @idroz in #210
- Check LXD server image store for pre-existing image by @Szubie in #211
- Resolve alias architecture by @Szubie in #212
- Optional legacy image filename by @Szubie in #213
- update preseed yaml with the latest lxd syntax by @idroz in #215
- fix multipass lxd version to 5.0 to avoid backward incompatible changes by @idroz in #216
- Infer local base image arch by @Szubie in #217
- Handling cleanup of legacy images on err by @Szubie in #218
- Increased cancel checking by @Szubie in #219
- Default publish version/arch by @Szubie in #221
- Early failure if incorrect port forwarding syntax by @Szubie in #224
- Accept path to composefile by @Szubie in #223
- Add
brave template
command by @Szubie in #225 - Port forwarding syntax edge case by @Szubie in #226
- Resource panic by @Szubie in #228
- Name multipass VM "bravetools" instead of username by @Szubie in #227
- Infer image arch based on deploy server during
brave deploy
by @Szubie in #229 - address #230 by @idroz in #231
- Username cleaning by @Szubie in #232
- Allow for deletion of units with active mounts by @Szubie in #233
- Sqlite go by @Szubie in #234
- Embed version by @Szubie in #235
- Docs modern bravefiles by @Szubie in #236
- Multipass multiuser by @Szubie in #237
- Bridge ip by @Szubie in #238
- Deb package build by @Szubie in #239
- Autocompletion by @s...
1.56
What's Changed
- Pretty print by @idroz in #31
- test dependencies before installation by @deknos in #33
- Resource check refactoring by @adrozdovbering in #34
- Bump kramdown from 2.3.0 to 2.3.1 in /docs by @dependabot in #40
- address #35 by @idroz in #37
- Issue 39 by @idroz in #42
- issue-44 by @idroz in #45
- address #49 by @idroz in #50
- Update docs by rerunning doc generation tool to match current CLI messages by @Szubie in #53
- Fix docs to refer to "local" images rather than "private" images by @Szubie in #55
- Multi user init by @idroz in #58
- Rename function BuildUnit to BuildImage by @Szubie in #56
- Spinner stdout redirect by @idroz in #52
- Multi user fixes by @idroz in #59
- Unit db to init by @idroz in #61
- Clean init by @idroz in #62
- fix confusion with delete alias vs fingerprint by @idroz in #64
- Brave deploy cli priority by @idroz in #66
- Empty sources support by @idroz in #69
- fix for apt by @idroz in #70
- Return image fingerprint when building from base local/github images by @Szubie in #73
- Remove attempts to remove LXD image of same name when deleting a unit by @Szubie in #74
- Fix doc typos by @Szubie in #78
- Update README with the new names for the LXD profile and storage pool by @Szubie in #79
- Return an error when an unrecognized package manager is encountered. by @Szubie in #80
- consider the case during brave base where package manager is not prov… by @idroz in #81
- Raise error if empty package manager and packages to be installed by @Szubie in #82
- create unit testing framework by @idroz in #89
- Username sanitization by @Szubie in #90
- Prevent shadowing of original error in init code by @Szubie in #88
- Enable privileged mounts on windows to allow mounting using multipass by @Szubie in #85
GetUnits
first check if eth0 key is in the map by @Szubie in #84- Replace map used for host config with a struct by @Szubie in #86
- Testing by @Szubie in #92
- Cleanup build by @Szubie in #77
- Unit test fixes by @idroz in #94
- Address apk update pause by @Szubie in #93
- Update DB tests with initialization and teardown by @Szubie in #97
- bravetools clean up after failed init by @Szubie in #96
- Account for multipass backend in
lxdCheck
andcheckLXDVersion
by @Szubie in #95 - Multiplatform tests by @Szubie in #98
- add xgo xcompiler by @idroz in #101
New Contributors
- @deknos made their first contribution in #33
- @dependabot made their first contribution in #40
Full Changelog: 1.55...1.56
Bravetools release 1.55
Mounting enhancements come to Bravetools! This release makes it possible to:
- Seamlessly share UID/GID information between host and running Unit, enabling transparent read/write of mounted directories from LXD containers (#17)
- Support for multiple mounts to a single Unit (#20)
- Support for multiple forwarded ports between a single Unit and Host (#28)
Bug fixes
- Ensure database is initialised correctly (#24)
- Improved port/volume/ip information output
Bravetools version 1.54
This release makes it possible for Bravetools to be deployed on any system that supports LXD.
- Minimal LXD version is now 3.0.3.
- Internals have been changed to make Bravetools agnostic to snap or non-snap LXD versions
brave init
elegantly handles existing LXD installations, seamlessly integrating Bravetools on top of existing setups
Backend operations
- Bravetools now creates a new LXD bridge,
bravebr0
instead of relying on existence of a default bridge brave mount
andbrave umount
support arbitrary directory paths- Port-forwarding uses LXD proxy device instead of iptables, making it more stable
brave deploy
intelligently assess whether forwarded ports are available on the host prior to deployment #10brave base
andbrave build
on Windows now hands off container image to properly complete the build process #8
release-1.53
Welcome to Bravetools!
Bravetools is an open source tool for creating and managing System Containers for multiple platforms using a single source configuration. Bravetools makes it easy to build, deploy, and scale machine images.
Features
Improved Stability. All software and configurations are installed into your images at build-time. Once your image is launched and tested, you can be confident that any environment launched from that image will function properly.
No overheads of a VM. Bravetools runs on LXD. LXD uses Linux containers to offer a user experience similar to virtual machines, but without the expensive overhead. You can run either single images on a local machines or scale to thousands of compute nodes.
Focus on code not infrastructure. Maintaining and configuring infrastructure is difficult! With any application built and deployed using Bravetools infrastructure and environment have to be configured just once. Developers can spend more time on creating and improving software and less time on managing production environments.
release-1.52
Welcome to Bravetools!
Bravetools is an open source tool for creating and managing System Containers for multiple platforms using a single source configuration. Bravetools makes it easy to build, deploy, and scale machine images.
Features
Improved Stability. All software and configurations are installed into your images at build-time. Once your image is launched and tested, you can be confident that any environment launched from that image will function properly.
No overheads of a VM. Bravetools runs on LXD. LXD uses Linux containers to offer a user experience similar to virtual machines, but without the expensive overhead. You can run either single images on a local machines or scale to thousands of compute nodes.
Focus on code not infrastructure. Maintaining and configuring infrastructure is difficult! With any application built and deployed using Bravetools infrastructure and environment have to be configured just once. Developers can spend more time on creating and improving software and less time on managing production environments.