Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepping v1.0.0-rc1 (crate v0.3.0-rc1) release #132

Merged
merged 6 commits into from
Oct 21, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Release crate

on:
workflow_dispatch:
inputs:
version:
description: "version (no `v` prefix)"
required: true
default: "1.0.0"

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
with:
ref: v${{ github.event.inputs.version }}
- name: Build
run: cargo build --verbose --release
- name: Check
run: cargo fmt --all -- --check && cargo clippy -- -D warnings
- name: Run tests
run: cargo test --verbose
- name: Publish
run: cargo publish --token ${{ secrets.CARGO_REGISTRY_TOKEN }} --dry-run
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions limitador-server/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,26 @@

Notable changes to the Limitador server will be tracked in this document.

## 1.0.0 - 2022-10-21

### Added

- Support for command line arguments and options
- Validation of the complete environment on start
- `LIMIT_FILE` is monitored for changes and hot-reloaded

### Changed

- [Syntax for condition](../doc/migrations/conditions.md) within `Limit`s changed
- Removed the HTTP endpoints to mutate `Limit`s
- `Limit`s are solely loaded from the `LIMIT_FILE`
- Only `Counter`s to `Limit`s are persisted, `Limit`s loaded from file are held in memory
- Duplicated `Limit`s with same namespace, conditions and variables is now impossible

### Removed

- By default, Infinispan support isn't compiled in. Use feature `infinispan` at build time

## 0.5.1 - 2022-05-25

### Changed
Expand Down
2 changes: 1 addition & 1 deletion limitador-server/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "limitador-server"
version = "1.0.0-dev"
version = "1.0.0-rc1"
authors = ["Alex Snaps <asnaps@redhat.com>", "Eguzki Astiz Lezaun <eguzki@redhat.com>", "David Ortiz <z.david.ortiz@gmail.com>"]
license = "Apache-2.0"
keywords = ["rate-limiting", "rate", "limiter", "envoy", "rls"]
Expand Down
2 changes: 1 addition & 1 deletion limitador-server/kubernetes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ kubectl apply -f limitador-podmonitor.yaml
```

### Grafana dashboard
Then, if you have grafana deployed in the cluster, you can import a [3scale Limitador](limitador-grafanadashboard.json) grafana dashboard that we have prepared, which includes:
Then, if you have grafana deployed in the cluster, you can import a [Kuadrant Limitador](limitador-grafanadashboard.json) grafana dashboard that we have prepared, which includes:
- Kuard envoyproxy sidecar metrics (globally and per pod)
- Limitador metrics (globally and per pod)
- And for every deployed component (limitador, kuard, redis):
Expand Down
2 changes: 1 addition & 1 deletion limitador-server/kubernetes/limitador-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ spec:
spec:
containers:
- name: limitador
image: quay.io/3scale/limitador:0.5.1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there is way to break the egg-chicken issue.

  1. In this deployment object, we make reference to not-existing image, for example: limitador:dev
  2. Build the image of the current workspace and tag it as limitador:dev.
  3. Before creating the deployment object in kind, load the image
kind load docker-image limitador:dev --name ${cluster-name}
  1. Create the deployment object. The image being deployed will be the one recently built.

Maybe not for this PR

image: quay.io/kuadrant/limitador:v1.0.0-rc1
imagePullPolicy: IfNotPresent
env:
- name: RUST_LOG
Expand Down
4 changes: 2 additions & 2 deletions limitador-server/kubernetes/limitador-grafanadashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -2010,7 +2010,7 @@
"schemaVersion": 18,
"style": "dark",
"tags": [
"3scale",
"kuadrant",
"backend"
],
"templating": {
Expand Down Expand Up @@ -2149,6 +2149,6 @@
]
},
"timezone": "",
"title": "3scale Limitador",
"title": "Kuadrant Limitador",
"version": 8
}
24 changes: 24 additions & 0 deletions limitador/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,30 @@

Notable changes to Limitador will be tracked in this document.

## 0.3.0 - 2022-10-21

### Added

- Infinispan as an alternate storage for counters `feature = "infinispan_storage"`
- `lenient_conditions` feature to allow for deprecated `Condition` syntax
- Added _not equal_ (`!=`) operator support in `Condition`s

### Changed

- `Limit`s are now _only_ held in memory, `Counter`s for there are stored using the `Storage` used
- `Limit` identity now ignores the `max_value` and `name` field. So that they can be replaced properly
- Serialized form for `Limit`s, used to lookup `Counter`s, changed. Upgrading to this version, existing persisted `Counter`s are lost
- New `Condition` syntax within `Limit`s: `KEY_B == 'VALUE_B'`
- Simplified some function signatures to avoid explicit lifetimes
- Functions now take `Into<Namespace>` instead of `TryInto` as the conversion can't ever fail
- Only require a reference `&Namespace` when ownership over the value isn't needed
- Defaults for `(Async)CounterStorage` configurations are now public
- Errors when creating a `CounterStorage` or `AsyncCounterStorage` are returned, instead of `panic!`ing

### Deleted

- Merge pull request #130 from Kuadrant/issue_100

## 0.2.0 - 2021-03-08

### Added
Expand Down
2 changes: 1 addition & 1 deletion limitador/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "limitador"
version = "0.3.0-dev"
version = "0.3.0-rc1"
authors = ["David Ortiz <z.david.ortiz@gmail.com>", "Eguzki Astiz Lezaun <eguzki@redhat.com>", "Alex Snaps <asnaps@redhat.com>"]
license = "Apache-2.0"
keywords = ["rate-limiting", "rate", "limiter"]
Expand Down