Changelog
List of aperture PRs merged since 2.1.0 release. For the full list of changes, see [list of changes][changes]
Removed deprecated check for grpcgateway (1997)
**Refactor:**
- Removed deprecated checks for grpcgateway
- Simplified code by removing backward compatibility support
> 🎉 Oh, the code is lighter now, we cheer! 🥳
> Deprecated checks, gone without fear. 🚀
> Simplicity reigns, as we refactor with grace, 🌟
> A brighter future, this PR shall embrace. 💫
Use CheckHTTP in Go SDK (1971)
User controls for feature rollout and dynamic config refactor (1988)
Description of change
* Dynamic config for feature rollout
* Refactor dynamic config spec and sync messages
* Refactor overload confirmation logic in Adaptive Load Scheduler
* Refactor Gradient Controller: remove optimization port
![Screenshot from 2023-05-22
01-11-19](https://github.com/fluxninja/aperture/assets/3925292/850e65a9-481c-4ed2-888d-8645754a24a6)
![Screenshot from 2023-05-22
02-20-53](https://github.com/fluxninja/aperture/assets/3925292/9caa5c91-d895-4194-9832-4abe47a25577)
delete DMap when policy is removed (1994)
lazy sync: update waitTime logic (1990)
quota scheduler (1989)
rate-limiter: add pass through signal (1987)
![Screenshot from 2023-05-20
14-22-04](https://github.com/fluxninja/aperture/assets/18579817/4554acfe-91c1-4564-8a63-423de287ef5e)
token bucket rate limiter (1979)
Co-authored-by: Hasit Mistry <hasitfluxninja.com>
playground: update rate limit policies (1976)
**Bug fix:**
- Updated rate limit policy signal name from `OBSERVED_LOAD_MULTIPLIER`
to `DESIRED_LOAD_MULTIPLIER`
> 🎉 A change so small, yet vital it stands,
> In the realm of code, we join our hands.
> From observed to desired, a shift we make,
> Ensuring our system, no errors shall break. 🚀
Update olric to use fluxninja/olric fork (1972)
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
Fixed aperturectl install istioconfig (1974)
**Refactor:**
- Updated `getTemplets` function to handle `isNamespaceScoped`
differently for `controller` and `agent`
- Enhanced error message in `applyObjectToKubernetesWithRetry` function
for better failure information
> 🎉 A refactor we did make,
> To improve the code we take.
> With better scope and clearer errors,
> Our progress soars like birds with feathers. 🦅
Add dynamic-values sub-command (1963)
**New Feature:**
- Added `dynamic-values` sub-command to the `blueprints` package for
creating dynamic values files for Aperture Blueprints
**Refactor:**
- Moved `createValuesFile()` function to a new sub-command called
`dynamic-values`
- Removed `dynamic-config` flag from `values` sub-command
- Updated default blueprints repository path
**Documentation:**
- Added documentation and usage examples for the new `dynamic-values`
sub-command
> 🎉 A dynamic touch, we've added today,
> To help users with blueprints, in a better way.
> Refactored code, with purpose and grace,
> And updated docs, to keep up the pace. 🚀
Fixed aperturectl apply when controller address is provided (1966)
Description of change
There was an issue where even if we provide `--controller` flag, it was
trying to connect to kubernetes.
Also, added support for insecure controller communication.
Also, --kube flag is now default for all subcommands and can be omitted.
**New Feature:**
- Added support for insecure controller communication and skipping TLS
certificate verification
**Bug fix:**
- Fixed issue where `--controller` flag was not being used to connect to
the controller
- Made `--kube` flag default for all subcommands, allowing it to be
omitted
**Documentation:**
- Updated documentation to reflect changes in code and new features
> 🎉 A flag once lost, now found and secure,
> Insecure connections, we can endure.
> With kube as default, our commands are free,
> Documentation updated, a joyous decree! 🥳
Disable building Kubernetes Discovery when outside the cluster (1964)
Auto Scale Refactor (1962)
Screenshots
![Screenshot from 2023-05-16
15-03-35](https://github.com/fluxninja/aperture/assets/1553055/f36e4103-c67b-452f-9751-16aefe5fd05b)
![Screenshot from 2023-05-16
15-03-45](https://github.com/fluxninja/aperture/assets/1553055/0b53fdac-3739-4293-b6e4-6fca1c3aac52)
![Screenshot from 2023-05-16
15-03-56](https://github.com/fluxninja/aperture/assets/1553055/646e789f-e958-4e8a-b0bc-58f59fa57f23)
**New Feature:**
- Added validation to `alerter` field in `ScaleOutController` and
`ScaleInController` messages
- Removed unused imports and messages related to `autoscale.proto` and
`std_components.proto`
- Updated alert names for scaling controllers in
service-protection-with-load-based-pod-auto-scaler policies
> 🎉 A PR so fine, it's hard to define,
> Validation added, old imports subtracted. 🚀
> Alert names refined, for controllers aligned,
> Scaling with grace, as our codebase is impacted. 🌟
Auto scale refactor (1958)
Description of change
- Simplify combination logic
- Fix issue where max does not work if one of values is invalid
- Use configured scale in final actuation
- Use updated `periodic` proto
- Fix behavior for when to ignore `SCALE_IN` when `SCALE_OUT_HOLD` is in
effect
- Fix constant signal reading of special value
- Use `DESIRED_LOAD_MULTIPLIER` instead of `OBSERVED_LOAD_MULTIPLIER` in
load based scale in
Screenshots
<img width="1904" alt="Screenshot 2023-05-15 at 23 12 09"
src="https://github.com/fluxninja/aperture/assets/1553055/293b34cb-75d4-48a5-ba0b-c099be636f3a">
<img width="1904" alt="Screenshot 2023-05-15 at 23 13 00"
src="https://github.com/fluxninja/aperture/assets/1553055/f2245d50-efa2-4362-ae5a-44898b8490ed">
<img width="1904" alt="Screenshot 2023-05-15 at 23 13 08"
src="https://github.com/fluxninja/aperture/assets/1553055/412c021a-1385-4c00-9fa7-5f3afa01f545">
**New Feature:**
- Enhanced auto-scaling functionality with improved logic and
refactoring
**Bug fix:**
- Simplified combination logic
- Fixed issues with max values
- Used configured scale in final actuation
- Fixed constant signal reading
**Documentation:**
- Updated documentation for periodic scaling parameters
- Removed `PeriodicDecreaseParameters` section from the documentation
> 🎉 Auto-scaling soars, logic refined,
> Bugs squashed, leaving woes behind.
> Docs updated, clear as day,
> Celebrate this PR, hip hooray! 🚀
---------
Co-authored-by: Tanveer Gill <tanveer.gillfluxninja.com>
[changes]: https://github.com/fluxninja/aperture/compare/releases/aperture-controller/v2.1.0...releases/aperture-controller/v2.2.0-rc.2