Changelog
List of aperture PRs merged since 2.9.0 release. For the full list of changes, see [list of changes][changes]
docs: Add intro to FluxNinja ARC (2416)
* Add intro to FluxNinja ARC by martarogala.
* Move ARC Controller description to install section (the on-premise
instructions are still there, will be moved out in a subsequent PR).
docs: Fix broken category index pages (2415)
* Go back to using autogenerated sidebar with
https://github.com/fluxninja/aperture-tech-docs/pull/267
* Rename arc/arc.md to arc/introduction.md.
Corrected tag for etcd and prometheus config (2411)
Release Notes
**Bug fix:**
- Corrected the `validate` tag in the `EtcdConfig` and
`PrometheusConfig` structs to include the `omitempty` option, ensuring
proper validation of configuration fields.
**Documentation:**
- Updated the format string in the PrometheusConfig struct documentation
for better clarity and understanding.
> 🎉 Here's to the bugs we squash, 🐛
> In our codebase vast and wide. 🌌
> With each PR, a celebration, 🥳
> As we ride the coding tide. 🏄♂️
> Documentation clear as crystal, 💎
> And validation now more robust, 💪
> This release, a testament to our hustle, 🚀
> In our software prowess, we trust! 🙌
Fixed aperturectl apply policy (2410)
Release Notes
- **Refactor**: Enhanced the `getPolicy` function in `policy-service.go`
to return both policy name and object, improving data accessibility.
- **Bug fix**: Updated the condition check in `policies.go` from
`INVALID` to `VALID`, correcting the status reporting mechanism.
> 🎉 Here's to the code that's now more robust,
> With bugs squashed and policies we trust. 🐛🔨
> The logic's refined, the errors are caught, 🧠💡
> A release like this is food for thought. 🍽️🤔
> So raise your glasses high, let's make a toast, 🥂
> To the team that always delivers the most! 🚀🌟
Added missing tags for etcd and prometheus (2408)
Bug Fix
- Adjusted the format options for a string field in `PrometheusConfig`
to improve data consistency.
- Added the `omitempty` tag to the `Endpoints` field in the `EtcdConfig`
struct and to the `Address` field in the `PrometheusConfig` struct. This
allows these fields to be omitted when marshaling to JSON, enhancing our
system's flexibility.
> 🎉 Here's to the code that we tweak and refine,
> To bugs that we squash, making everything fine.
> With each little change, we're improving the flow,
> Onwards we march, with our code in tow! 🚀
Fixed the required fields only in blueprints values (2401)
Release Notes:
- New Feature: Added `flatten_config` function to remove unnecessary
nodes from the configuration.
- Enhancement: Modified `render_sample_config_yaml` function to use
`flatten_config` when the sample config file is "values.yaml".
- Bug fix: Fixed the required fields only in blueprints values.
> "A new feature blooms, removing clutter with ease,
> Enhanced rendering brings a sense of peace.
> Bugs squashed, required fields now shine,
> This PR brings harmony, a code divine."
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
Added support to load config from environment variables in aperturectl (2403)
Ref 2402
Release Notes:
- Documentation: Added support to load config from environment variables
in `aperturectl`. The documentation now reflects the addition of this
feature across various commands, enhancing the flexibility of the tool.
> "Config from env vars, a powerful feat,
> Aperturectl now more flexible and neat.
> With docs updated, users can see,
> How to configure with simplicity."
Improve etcd error reporting and move etcd session startup to background (2404)
Before actually creating an etcd session, we first try to quickly obtain
a lease using short timeout, so we can print error if it fails.
Also, etcd session creation and leadership election was moved to
background. Note that this doesn't mean that agent can start without
etcd, because:
* Peers need etcd in OnStart,
* Every watcher tries to bootstrap in OnStart.
Update go version v1.20.6 (2400)
Release Notes:
- Chore: Updated Go version to v1.20.6 in various files, including
Dockerfiles and configuration files.
- Chore: Modified logic and functionality in
`invalidate_asdf_ci_cache.sh` script.
> "A dance of code unfolds,
> Go version upgraded, stories untold.
> Dockerfiles and scripts, revamped with care,
> A touch of logic, a breath of fresh air.
> With each change, progress is made,
> Celebrating the art of the upgrade."
aperturectl: Clarify directory merge behavior in warning (2398)
Allow defining priority label key and reading priority from labels (2392)
Description of change
![screencapture-localhost-3000-d-1cafa24eadc87e0eeb9217b9179e31473bcfa21d-aperture-service-protection-2023-07-18-09_01_29](https://github.com/fluxninja/aperture/assets/1553055/c5880956-ab83-4abc-b995-f154571b2034)
**New Feature:**
- Added `priorities_label_key` and `tokens_label_key` fields to the
`Scheduler` message for overriding default priority and token count
using labels.
- Updated the data type of the `priority` field from `int64` to `double`
in various structs for more precise priority values.
**Refactor:**
- Removed the `utils` package, simplifying the computation of
inverted_priority.
- Modified the `flowID` function to include the priority value in the
generated flow ID.
**Documentation:**
- Updated configuration specification with the new changes.
> 🎉 Here's to the code that now flows,
> With priorities as light as a rose.
> No more utils to clutter our sight,
> Just clean, efficient code taking flight! 🚀
Tweaks in ARC controller docs (2396)
* Make ARC Controller tab default.
* Remove setting insecure from config examples.
* Reorder fields in extension config by importance, too bad it ends up
alphabetical in docs anyway, due to 255.
* Misc tweaks to wording.
[changes]: https://github.com/fluxninja/aperture/compare/releases/aperture-controller/v2.9.0...releases/aperture-controller/v2.10.0