• v0.0.3 40b2db580e

    v0.0.3 Stable

    mediocregopher released this 2024-12-19 08:38:15 +00:00 | 5 commits to main since this release

    ⚠️ ALPHA RELEASE ⚠️ All 0.0.x releases are considered alpha. Future 0.0.x releases will likely contain backwards incompatible changes which may require resetting your network. Expect bugs and missing features.

    The changelog and download links can be found on the official release page.

    Downloads
  • v0.0.2 3980dc6083

    v0.0.2 Stable

    mediocregopher released this 2024-07-15 17:39:35 +00:00 | 122 commits to main since this release

    ⚠️ ALPHA RELEASE ⚠️ All 0.0.x releases are considered alpha. Future 0.0.x releases will likely contain backwards incompatible changes which may require resetting your network. Expect bugs and missing features.

    Changelog

    This release focuses on two major changes

    • A complete refactoring of the daemon and CLI. The daemon now serves RPC requests over a unix socket, and all interaction with other CLI commands is done via that socket. This is a similar architecture as docker uses, and the primary benifit is that it allows isle to run as its own (non-root) system user, and other non-root users retain the ability to interact with it. Previously one had to be the same user as the isle daemon in order to interact with it, which blocked any eventual path towards a GUI.

    • A rethinking of the admin bundle and secrets in general. The isle daemon now manages secrets itself, without the user needing to manage an admin "bundle" like before. This drastically improves usability at a moderate security cost. The new system also paves the way for move fine-grained permissions, and automatic distribution of secrets to other hosts. For example, in the future not all hosts will be given the garage RPC key in the initial boostrap. Instead, if a host wants to provide storage, someone else who is already providing storage will be able to grant them that ability. This allows for better quality control in larger networks.

    Other major changes

    • Garage has been updated to v1.0.0. This release includes an improved network topology algorithm and storage engines. Hopefully, being a v1 release, there won't be further backwards incompatible changes between garage versions.

    • The release artifacts now include pacman packages for archlinux and archlinux-based distros. The isle package will automatically set up an isle user and install the isle systemd service.

    • Addition of the AGPLv3 license.

    • A lot of CLI commands have been moved, renamed, or otherwise modified. The in-repo documentation has been updated accordingly.

    • A new isle nebula create-cert command has been introduced. This allows for generating just the nebula certificate for a host based on a nebula public key. The primary use-case is for usage of the nebula mobile app with an isle network, at least until there is a micropelago mobile app.

    Minor changes

    • Fix minio-client creating config directory in user's home.

    • Most non-human editable files are now stored in JSON rather than YAML. This was mostly motivated by json.RawMessage being available in go's standard library, while the popular go YAML library doesn't have an equivalent.

    • Host data is stored in garage and the bootstrap file in a much cleaner way, especially with respect to signed/validated data.

    • Use XDG_STATE_HOME rather than XDG_DATA_HOME for storing bootstrap and secrets data.

    • Input validation on the CLI is now more comprehensive and consistent.

    Changes on the development side

    • Moved go code into its own sub-directory, to improve delineation with other parts like the nix code.

    • Introduction of a simple end-to-end testing framework. The framework is currently just based on bash scripts, but could probably be improved with some containerization. Nonetheless it has helped me tremendously in terms of development velocity.

    • Nixpkgs was updated to 24.05, which resulted in the go toolchain being updated to 1.22.

    Download

    🔗 Pre-built binaries and packages for this release can be found here.

    Downloads
  • v0.0.1 633c7147b1

    v0.0.1 Stable

    mediocregopher released this 2023-08-15 16:37:10 +00:00 | 191 commits to main since this release

    The moment everyone has been waiting for, the first official release of Isle! It's been quite some time since the last release candidate, but there have been some significant changes since then:

    • Most notably, the project has been renamed to Isle! This resulted in some backwards incompatible changes in the code from the release candidate, but no one is using this so it doesn't matter.

    • Cross-compilation to i686 and aarch64. I haven't actually tested these binaries, but they do compile.

    • Addition of a flake.nix, for the fans.

    • Fixed issue #2, where stopping the process would sometimes result in a segfault.

    Downloads
  • v0.0.1-rc2 ca003eaf85

    mediocregopher released this 2022-11-22 12:01:50 +00:00 | 215 commits to main since this release

    • A fix has been implemented on garage's side for the panics we've been seeing while applying cluster topology changes. See this issue. As part of the fix we have fully upgraded to garage v0.8.0, and are no longer using a release candidate.

    • The output of the version sub-command has been improved.

    Downloads
  • v0.0.1-rc1 877e519821

    mediocregopher released this 2022-11-16 16:52:32 +00:00 | 222 commits to main since this release

    • A fix has been implemented for an issue we ran into testing, where garage was panicking during a layout change. The ultimate fix should be on garage's side (see this issue), but this change will work in the meantime.

    • Some updates to logging have been made, including the introduction of log levels in the cryptic-net daemon.

    • The startup sequence for the daemon has been adjusted so that putting bootstrap info into garage and applying garage layout changes don't happen simultaneously. Now layout changes are applied first, and putting bootstrap info happens second.

    • Waiting for a garage instances to start up during daemon start up was previously resulting in a tight loop of calls to garage's status endpoint. There is now a sleep in that loop.

    • Fix garage mc subcommand not setting the S3 API secret key properly by default.

    Downloads
  • v0.0.1-rc0 838c548706

    mediocregopher released this 2022-11-11 14:12:40 +00:00 | 228 commits to main since this release

    Release candidate for initial release of cryptic-net! After a period of initial feedback and potential bug handling an official v0.0.1 will be released.

    At this juncture the cryptic-net's most basic features are complete, including:

    • Ability to create a new network.
    • Ability to add hosts to the network.
    • Automatic management of keys and certificates for each host.
    • Automatic provisioning of storage resources via configuration file.
    • Automatic configuration of nebula lighthoust via configuration file.
    • Propogation of host configurations to other hosts in the network, and reload upon changes to those configurations.
    Downloads