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

feat: new evaluation routes #1824

Merged
merged 114 commits into from
Jul 28, 2023
Merged

feat: new evaluation routes #1824

merged 114 commits into from
Jul 28, 2023

Conversation

GeorgeMac
Copy link
Contributor

@GeorgeMac GeorgeMac commented Jul 4, 2023

This is a long lived branch which will stay drafted until we've gotten through the bulk of the changes to build the new eval routes.

Fixes: #368
Fixes: #1351
Fixes: FLI-230

markphelps and others added 20 commits June 28, 2023 09:10
* feat(wip): rollout for boolean flags

* feat(wip): strategy impl

* feat: rollout rules > rollout strategy

* chore: add namespace_key to tables

* feat: list rules

* feat: impl delete

* chore: rm debug logs

* chore: rename things

* chore: compiles, start adding storage tests

* feat(wip): update rollout

* chore: compiles

* chore: compiles/finish sqlite rollout tests for now

* chore: fix countRollouts call

* chore: rebase eval-v2

* chore: checkout ui from main

* chore: replace ui with ui from main

* chore: fix buflint

* chore: fix lint errors

* chore: rowserrcheck

* chore: mage proto
* feat: implement gRPC server for the Variant RPC method

* chore: rename Server field to evaluator

* chore: move around tests, and other fixes

* chore: DRY up middleware and add extra field to otel metrics

* test(integration): ensure Evaluation.Variant returns as expected (#1800)

* test(integration/api): ensure Evaluation.Variant returns as expected

* test(integration/readonly): ensure Evaluation.Variant returns as expected

* fix(build/testing): set production yaml version to 1.0

* fix(build/testing/api): ensure disabled flag is created and listed

* fix(build/testing/api): fix disabled flag asserts and delete before ns is deleted

* fix(build/testdata): typo on name field case

* fix(server/middleware): set request IDs on evaluation req/resp type

* fix(build/integration): ensure 51 flags exist

* fix(build/integration): ensure flag not found error is returned

* fix(build/integration): explicitly set enabled false in testdata

* chore: rearrange some files and make some new declarations

* chore: move around some structures and address other feedback around passing flag into Evaluate

* chore: set timestamps and request id on Variant responses

* chore: add test and move invalid flag type to evaluator

---------

Co-authored-by: George <me@georgemac.com>
* test(integration/api): ensure Boolean type flag create

* fix(api/rollouts): ensure tx rollback and drop create rollout type

* fix(storage/rollout): ensure tx rollback and fixed rollout type on update

* fix(storage/sql/rollout): validate rule is supplied on create

* chore(rpc): add rollout request types validation

* fix(integration/readonly): add flag_disabled to end of set

* chore: commit proto version comment updates
@codecov
Copy link

codecov bot commented Jul 4, 2023

Codecov Report

Merging #1824 (15a9858) into main (ef8c772) will increase coverage by 0.04%.
Report is 1 commits behind head on main.
The diff coverage is 79.01%.

@@            Coverage Diff             @@
##             main    #1824      +/-   ##
==========================================
+ Coverage   71.30%   71.35%   +0.04%     
==========================================
  Files          61       66       +5     
  Lines        5820     6455     +635     
==========================================
+ Hits         4150     4606     +456     
- Misses       1436     1592     +156     
- Partials      234      257      +23     
Files Changed Coverage Δ
internal/cmd/auth.go 0.00% <0.00%> (ø)
internal/cmd/grpc.go 0.00% <0.00%> (ø)
internal/cmd/http.go 3.03% <0.00%> (-0.10%) ⬇️
internal/config/authentication.go 71.79% <ø> (ø)
internal/server/audit/audit.go 86.46% <ø> (ø)
internal/server/audit/types.go 77.27% <0.00%> (-22.73%) ⬇️
internal/server/flag.go 81.48% <ø> (-0.67%) ⬇️
internal/storage/sql/migrator.go 20.00% <ø> (ø)
internal/server/evaluator.go 46.75% <35.00%> (-48.14%) ⬇️
internal/server/middleware/grpc/middleware.go 63.10% <51.42%> (-6.86%) ⬇️
... and 11 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

* chore: fix screenshots for new ui

* chore: mv screenshots to subdir

* feat(wip): concepts docs

* chore: rm old screenshots func

* chore: finish most of the screenshots

* chore: add rollouts

* chore: add readonly screenshot

* chore: add missing eval console screen
* 'main' of https://github.com/flipt-io/flipt:
  chore(deps): bump github.com/grpc-ecosystem/grpc-gateway/v2 (#1908)
  chore(deps): bump github.com/hashicorp/cap from 0.3.2 to 0.3.3 (#1906)
  chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 (#1907)
@markphelps markphelps marked this pull request as ready for review July 26, 2023 21:08
@markphelps markphelps requested a review from a team as a code owner July 26, 2023 21:08
* main:
  chore(tests): add tests for matching and non-matching of regexs
  chore(auth): Address comments related to pre-compiling regexs
  chore(auth): Address PR changes and accommodate with tests
  chore(auth): use comma for splitting
  feat(email): Add email matching logic for whitelisting OIDC
* chore: fix scrollToBottom for screenshots

* chore: increase sleep by 1s
* 'main' of https://github.com/flipt-io/flipt:
  docs: add rudineirk as a contributor for code (#1913)
  perf: add cache to get evaluation rules storage method (#1910)
  fix: renable pprof (#1912)
* chore: fix cacher interceptor ordering

* chore: fix storage cacher tests (#1916)

* chore: why are you changing go.work.sum

* chore: fixup cacher tests into new eval-v2 branch

* chore: rm unknown file
@markphelps markphelps enabled auto-merge (squash) July 28, 2023 12:06
Copy link
Collaborator

@markphelps markphelps left a comment

Choose a reason for hiding this comment

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

the culmination of a month+ of work. lgtm!!

@markphelps markphelps merged commit 8bb0e95 into main Jul 28, 2023
25 checks passed
@markphelps markphelps deleted the eval-v2 branch July 28, 2023 12:22
markphelps added a commit that referenced this pull request Jul 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wip Work In Progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Optional public evaluate route [FLI-230] Make flag rollout a first class feature
3 participants