Releases: BastilleBSD/rocinante
1.0.20250714 - Bastille Day 2025
Rocinante 1.0: The Test-Driven Titan Arrives!
We are thrilled to announce the release of Rocinante 1.0, a landmark update that represents a monumental leap forward in the reliability and robustness of BastilleBSD's automation. This release is the culmination of immense effort from our dedicated contributors, including three new members of our community!
So, what makes this release a titan? It's all about testing, testing, and more testing! We've introduced a comprehensive new testing framework and a vast suite of unit tests to ensure Rocinante is more dependable than ever.
Highlights of this Release
Massive Testing Overhaul: We've added an extensive set of unit tests, covering a wide range of functionality. This means you can have even greater confidence in your deployments and configurations. A special shoutout to @bmac2 for the heroic effort on this front!
Code Refinements and Fixes: Borrowing from the best of Bastille, @tschettervictor has led a significant code refactor, bringing in valuable fixes and improvements for a more streamlined experience.
Enhanced Debugging: Troubleshooting is now easier with the new debug mode, allowing you to get under the hood and see exactly what's happening.
Pager Fix: An early fix from @cedwards ensures that updates run smoothly, with a new option to better handle cron-based executions.
Bootstrap Confidence: We now ensure an alphabetical order in the bootstrap process, and Rocinante will gracefully exit if the template directory doesn't exist, preventing unexpected behavior.
A Warm Welcome to Our New Contributors!
This release wouldn't have been possible without the fresh perspectives and hard work of our newest contributors. Please join us in welcoming:
@bsdlme
@tschettervictor
@bmac2
We're incredibly grateful for your contributions and look forward to your future work with us!
What's Changed
- fix pager; include --not-running-from-cron option to update by @cedwards in #10
- Bail out if rocinante_templatesdir does not exist by @bsdlme in #11
- code refactor + fixes from bastille by @tschettervictor in #18
- Tests by @bmac2 in #20
- Delete bastilletesting/core/README.md by @bmac2 in #21
- add debug mode by @tschettervictor in #22
- bootstrap: Ensure alphabetical order in bootstrap by @tschettervictor in #23
- Update list.sh by @tschettervictor in #24
- Update Bastillefile by @tschettervictor in #26
- Update Bastillefile by @tschettervictor in #27
- Update Bastillefile by @tschettervictor in #28
- Update and rename Bastillefile to Bastillefile by @tschettervictor in #29
- add default config file by @tschettervictor in #30
- Update README.md by @bmac2 in #31
- Update initial test by @tschettervictor in #32
- Update template.sh by @tschettervictor in #33
- add bootstrap unit-test by @tschettervictor in #34
- Update and rename Bastillefile to Bastillefile by @tschettervictor in #35
- Unit tests by @bmac2 in #36
- writing unit tests by @bmac2 in #37
- add 5 unit-tests by @tschettervictor in #38
- Update Bastillefile by @tschettervictor in #39
- Update template.sh by @tschettervictor in #40
- add unit-test/jcp by @tschettervictor in #41
- add restart and rename standard by @tschettervictor in #42
- add more tests by @tschettervictor in #43
- initial master test plan by @bmac2 in #44
- masterTest configuration by @bmac2 in #45
- completion of masterTest template by @bmac2 in #46
- Bmac templates by @bmac2 in #47
- masterTest edits by @bmac2 in #48
- removal of cloning by @bmac2 in #49
- typo fix by @bmac2 in #50
- typo fix by @bmac2 in #51
- missing arg by @bmac2 in #52
- edit to create-bridged options by @bmac2 in #53
- created multiple templates by @bmac2 in #54
- arg additions to masterTest by @bmac2 in #55
- added apply-templateBridged template by @bmac2 in #56
- added some debugging items by @bmac2 in #57
- added some debugging items by @bmac2 in #58
- added more debugging items by @bmac2 in #59
- added more debugging items by @bmac2 in #60
- added more debugging items by @bmac2 in #61
- added even more debugging items by @bmac2 in #62
- added more templates by @bmac2 in #63
- adding setup bridge to main test file by @bmac2 in #64
- added a bridge option to the test file by @bmac2 in #65
- typo by @bmac2 in #66
- made bridge setup dhcp to fix ip resolution problem by @bmac2 in #67
- moved standard jail logic to the beginning by @bmac2 in #68
- edits to services-standard template by @bmac2 in #69
- edits to rename jail command in masterTest by @bmac2 in #70
- typo by @bmac2 in #71
- fixed OPTIONS for rename of standard jail by @bmac2 in #72
- fixed auto for rename jail by @bmac2 in #73
- added clone-standard templete by @bmac2 in #74
- edit to clone-standard by @bmac2 in #75
- added a new variable NEW_INTERFACE by @bmac2 in #76
- added a new variable ACTION by @bmac2 in #77
- corrections to the core/network template by @bmac2 in #78
- corrections to the core/network template by @bmac2 in #79
- corrections to the network-standard template by @bmac2 in #80
- corrections to the clone-standard template by @bmac2 in #81
- corrections to the clone-standard template by @bmac2 in #82
- correction to network-standard template by @bmac2 in #83
- corrections to masterTest by @bmac2 in #84
- corrections to masterTest by @bmac2 in #85
- corrections to masterTest by @bmac2 in #86
- corrections to clone-standard by @bmac2 in #87
- added tags templates by @bmac2 in #88
- edited tags templates by @bmac2 in #89
- edited tags templates by @bmac2 in #90
- edited tags templates by @bmac2 in #91
- added mount templates by @bmac2 in #92
- edits to mount templates by @bmac2 in #93
- rename of some tests by @bmac2 in #94
- edits to mount_file template by @bmac2 in #95
- edits to mount_file template by @bmac2 in #96
- edits to mount_file template by @bmac2 in #97
- edits to mount_file template by @bmac2 in #98
- skip of mount templates by @bmac2 in #99
- adding of import-export template by @bmac2 in #100
- editing of import-export template by @bmac2 in #101
- editing of import-export template by @bmac2 in https://github.com/BastilleBSD/rocina...
Fête Nationale 2022
This isn't a big release but "release early, release often" right?
Thank you to @janondrusek for contributing this improvement.
What's Changed
- add CMD trace #6 by @janondrusek in #8
Full Changelog: 0.1.20220216...0.1.20220714
0.1.20220216
Bugfix release for CMD execution bug (PR: #5)
Hello World
Rocinante 0.1.20211225
Hello World.
Rocinante is lightweight configuration management software.
This project allows you to use Bastillefile syntax to setup and configure hosts.
Release Notes
Initial release should be compatible with existing Bastillefile. Please report issues if you find that's not the case.
Support includes BOOTSTRAP, CMD, CP, LIMITS, LIST, PKG, SERVICE, SYSCTL, SYSRC, TEMPLATE, UPDATE, UPGRADE, VERIFY, ZFS, and ZPOOL.
You may notice that two of these do not appear in Bastille's template support. SYSCTL, and ZPOOL are new. These make sense to configure a host whereas they are less applicable in a jail.
Template Collection
We've decided to consolidate the template sprawl into a single repository and structure it similar to the FreeBSD ports tree. It is recommended that you bootstrap the repository found here: https://github.com/bastillebsd/templates.
The repo will clone to /usr/local/rocinante/templates allowing you to verify and template ports-like paths such as www/nginx, etc.
You may want to fork the bastillebsd/templates repository and then bootstrap your fork.
Examples
rocinante verify sysutils/bastille
holden ~ # rocinante verify sysutils/bastille
Detected Bastillefile hook.
[Bastillefile]:
PKG bastille
CP usr /
SYSRC bastille_enable=YES
SYSRC cloned_interfaces+=lo1
Template ready to use.
Examples
rocinante template sysutils/bastille
holden ~ # rocinante template sysutils/bastille
[TEMPLATE]:
Applying template: sysutils/bastille...
[PKG]:
Updating poudriere-local repository catalogue...
poudriere-local repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The most recent versions of packages are already installed
[CP]:
/usr/local/rocinante/templates/sysutils/bastille/usr -> /usr
/usr/local/rocinante/templates/sysutils/bastille/usr/local -> /usr/local
/usr/local/rocinante/templates/sysutils/bastille/usr/local/etc -> /usr/local/etc
/usr/local/rocinante/templates/sysutils/bastille/usr/local/etc/bastille -> /usr/local/etc/bastille
/usr/local/rocinante/templates/sysutils/bastille/usr/local/etc/bastille/bastille.conf -> /usr/local/etc/bastille/bastille.conf
[SYSRC]:
bastille_enable: -> YES
[SYSRC]:
cloned_interfaces: lo1 -> lo1
Template applied: sysutils/bastille
What's Changed
- adding zfs and limits(rctl) support by @cedwards in #1
- finalize bootstrap clone path; bootstrap w/o git is very close by @cedwards in #2
- add zpool command by @cedwards in #3
New Contributors
Full Changelog: https://github.com/BastilleBSD/rocinante/commits/0.1.20211225