Repository: clouditor/clouditor
Pull request #1101 (2023-05-08 01:01:24)

Bump google.golang.org/grpc from 1.54.0 to 1.57.0-dev
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.54.0 to 1.55.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/grpc/grpc-go/releases">google.golang.org/grpc's releases</a>.</em></p>
<blockquote>
<h2>Release 1.55.0</h2>
<h1>Behavior Changes</h1>
<ul>
<li>xds: enable federation support by default (<a href="https://redirect.github.com/grpc/grpc-go/issues/6151">#6151</a>)</li>
<li>status: <code>status.Code</code> and <code>status.FromError</code> handle wrapped errors (<a href="https://redirect.github.com/grpc/grpc-go/issues/6031">#6031</a> and <a href="https://redirect.github.com/grpc/grpc-go/issues/6150">#6150</a>)
<ul>
<li>Special Thanks: <a href="https://github.com/psyhatter"><code>@​psyhatter</code></a></li>
</ul>
</li>
</ul>
<h1>New Features</h1>
<ul>
<li>xds/xdsclient: support <code>ignore_resource_deletion</code> server feature as per gRFC <a href="https://github.com/grpc/proposal/blob/master/A53-xds-ignore-resource-deletion.md">A53</a> (<a href="https://redirect.github.com/grpc/grpc-go/issues/6035">#6035</a>)</li>
<li>security/advancedtls: add min/max TLS version selection options (<a href="https://redirect.github.com/grpc/grpc-go/issues/6007">#6007</a>)
<ul>
<li>Special Thanks: <a href="https://github.com/joeljeske"><code>@​joeljeske</code></a></li>
</ul>
</li>
</ul>
<h1>Bug Fixes</h1>
<ul>
<li>xds: stop routing RPCs to deleted clusters (<a href="https://redirect.github.com/grpc/grpc-go/issues/6125">#6125</a>)</li>
<li>client: fix race between stream creation and GOAWAY receipt, which could lead to spurious UNAVAILABLE stream errors (<a href="https://redirect.github.com/grpc/grpc-go/issues/6142">#6142</a>)</li>
</ul>
<h1>Performance Improvements</h1>
<ul>
<li>server: improve stream handler goroutine worker allocation when <a href="https://pkg.go.dev/google.golang.org/grpc#NumStreamWorkers"><code>NumStreamWorkers</code></a> is used (<a href="https://redirect.github.com/grpc/grpc-go/issues/6004">#6004</a>)
<ul>
<li>Special Thanks: <a href="https://github.com/SaveTheRbtz"><code>@​SaveTheRbtz</code></a></li>
</ul>
</li>
</ul>
<h2>Release 1.54.1</h2>
<h1>Bug Fixes</h1>
<ul>
<li>credentials/alts: revert a change that causes a crash in the handshaker</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/grpc/grpc-go/commit/82c6376d2ac5badf955e360e461455212a89713e"><code>82c6376</code></a> Change version to 1.55.0 (<a href="https://redirect.github.com/grpc/grpc-go/issues/6211">#6211</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/d33f68e712024f90ed86d254e1d9d9f424667a29"><code>d33f68e</code></a> googledirectpatph: enable ignore_resource_deletion in bootstrap (<a href="https://redirect.github.com/grpc/grpc-go/issues/6243">#6243</a>) (<a href="https://redirect.github.com/grpc/grpc-go/issues/6246">#6246</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/3fc6e0016ef9e919647bbccaba76919b25e49167"><code>3fc6e00</code></a> authz: Move audit package (<a href="https://redirect.github.com/grpc/grpc-go/issues/6218">#6218</a>) (<a href="https://redirect.github.com/grpc/grpc-go/issues/6219">#6219</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/875c97a94dca8093bf01ff2fef490fbdd576373d"><code>875c97a</code></a> examples/features/observability: use observability module v1.0.0 (<a href="https://redirect.github.com/grpc/grpc-go/issues/6210">#6210</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/aa8c137da98cbb59ddcf58e7c7e130cdd8f4fec7"><code>aa8c137</code></a> authz: add audit logging APIs (<a href="https://redirect.github.com/grpc/grpc-go/issues/6158">#6158</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/b91b8842e9437f711267bfc227c454de91e7cf15"><code>b91b884</code></a> gcp/observability: Have o11y module point to grpc 1.54 and opencensus 1.0.0 (...</li>
<li><a href="https://github.com/grpc/grpc-go/commit/eab9e20d1bbecbdcdf442c5f6669ad731a160c0f"><code>eab9e20</code></a> test/kokoro: increase PSM Security test timeout to 4h (<a href="https://redirect.github.com/grpc/grpc-go/issues/6193">#6193</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/d90621f9e920aa6fdb554252f7f476e0b7791c1d"><code>d90621f</code></a> remove the unnecessary call to ResetTimer and StopTimer (<a href="https://redirect.github.com/grpc/grpc-go/issues/6185">#6185</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/fe72db9589696a625af72117a600ba191227b7c5"><code>fe72db9</code></a> testing: add helpers to start test service, and retrieve port (<a href="https://redirect.github.com/grpc/grpc-go/issues/6187">#6187</a>)</li>
<li><a href="https://github.com/grpc/grpc-go/commit/5a50b970ccaddcd811b4a0da8e56fe1a2492f7da"><code>5a50b97</code></a> Revert &quot;Revert &quot;credentials/alts: defer ALTS stream creation until handshake ...</li>
<li>Additional commits viewable in <a href="https://github.com/grpc/grpc-go/compare/v1.54.0...v1.55.0">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/grpc&package-manager=go_modules&previous-version=1.54.0&new-version=1.55.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>> **Note**
> Automatic rebases have been disabled on this pull request as it has been open for over 30 days.


lebogg: Just replacing `grpc_reflection_v1alpha` with `grpc_reflection_v1` didn't do the trick^^ Can you look at it @oxisto ?
oxisto: > Just replacing `grpc_reflection_v1alpha` with `grpc_reflection_v1` didn't do the trick^^ Can you look at it @oxisto ?

The problem is that gRPC still uses `grpc_reflection_v1alpha` instead of `grpc_reflection_v1`, so as long as they do, we need to use the (now deprecated) package.
codecov[bot]: ## [Codecov](https://app.codecov.io/gh/clouditor/clouditor/pull/1101?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor) Report
> Merging [#1101](https://app.codecov.io/gh/clouditor/clouditor/pull/1101?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor) (ee26158) into [main](https://app.codecov.io/gh/clouditor/clouditor/commit/f7f5a6e455257db191db5b04715bce99cb334c81?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor) (f7f5a6e) will **increase** coverage by `0.02%`.
> The diff coverage is `0.00%`.

```diff
@@            Coverage Diff             @@
##             main    #1101      +/-   ##
==========================================
+ Coverage   83.66%   83.69%   +0.02%     
==========================================
  Files          93       92       -1     
  Lines        8594     8584      -10     
==========================================
- Hits         7190     7184       -6     
+ Misses       1063     1060       -3     
+ Partials      341      340       -1     
```

| Flag | Coverage Δ | |
|---|---|---|
| unittests | `83.69% <0.00%> (+0.02%)` | :arrow_up: |

Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor#carryforward-flags-in-the-pull-request-comment) to find out more.

| [Impacted Files](https://app.codecov.io/gh/clouditor/clouditor/pull/1101?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor) | Coverage Δ | |
|---|---|---|
| [policies/rego.go](https://app.codecov.io/gh/clouditor/clouditor/pull/1101?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor#diff-cG9saWNpZXMvcmVnby5nbw==) | `69.47% <0.00%> (ø)` | |

... and [1 file with indirect coverage changes](https://app.codecov.io/gh/clouditor/clouditor/pull/1101/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=clouditor)


oxisto: > > > Just replacing `grpc_reflection_v1alpha` with `grpc_reflection_v1` didn't do the trick^^ Can you look at it @oxisto ?
> > 
> > 
> > The problem is that gRPC still uses `grpc_reflection_v1alpha` instead of `grpc_reflection_v1`, so as long as they do, we need to use the (now deprecated) package.
> > See https://github.com/grpc/grpc-go/blob/8eba9c2de14ab211f21633104165fb082d272bfe/reflection/serverreflection.go#L65-L69
> 
> There was an update 4 days ago: https://github.com/grpc/grpc-go/blob/642dd63a85275a96d172f446911fd04111e2c74c/reflection/serverreflection.go#L68

Nice! Unfortunately, this is still not in the v1.56.0 release :(

Patch:
diff --git a/api/errors.go b/api/errors.go
index 17958788..72a3f2a5 100644
--- a/api/errors.go
+++ b/api/errors.go
@@ -27,27 +27,9 @@ package api
 
 import (
 	"errors"
-
-	"google.golang.org/grpc/status"
 )
 
 var (
 	ErrInvalidColumnName = errors.New("column name is invalid")
 	ErrEmptyRequest      = errors.New("empty request")
 )
-
-// StatusFromWrappedError attempts to recover a status.Status from a wrapped error message. This is necessary, because
-// the underlying RPC error might be wrapped in multiple layers of additional error messages and status.FromError only
-// checks the error itself.
-func StatusFromWrappedError(err error) (s *status.Status, ok bool) {
-	for {
-		s, ok = status.FromError(err)
-		if ok {
-			return
-		}
-		err = errors.Unwrap(err)
-		if err == nil {
-			return nil, false
-		}
-	}
-}
diff --git a/go.mod b/go.mod
index 7a1aa540..eab8eb05 100644
--- a/go.mod
+++ b/go.mod
@@ -21,8 +21,8 @@ require (
 	golang.org/x/crypto v0.9.0
 	golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e
 	golang.org/x/oauth2 v0.8.0
-	google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f
-	google.golang.org/grpc v1.54.0
+	google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9
+	google.golang.org/grpc v1.57.0-dev.0.20230612212144-642dd63a8527
 	google.golang.org/protobuf v1.30.0
 	gorm.io/driver/postgres v1.5.0
 	gorm.io/gorm v1.25.0
@@ -102,7 +102,7 @@ require (
 	github.com/gobwas/glob v0.2.3 // indirect
 	github.com/gogo/protobuf v1.3.2 // indirect
 	github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
-	github.com/golang/glog v1.0.0 // indirect
+	github.com/golang/glog v1.1.0 // indirect
 	github.com/golang/protobuf v1.5.3 // indirect
 	github.com/google/go-cmp v0.5.9 // indirect
 	github.com/google/gofuzz v1.2.0 // indirect
@@ -155,6 +155,8 @@ require (
 	golang.org/x/time v0.3.0 // indirect
 	golang.org/x/tools v0.8.0 // indirect
 	google.golang.org/appengine v1.6.7 // indirect
+	google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 // indirect
+	google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect
 	gopkg.in/inf.v0 v0.9.1 // indirect
 	gopkg.in/ini.v1 v1.67.0 // indirect
 	gopkg.in/yaml.v2 v2.4.0 // indirect
diff --git a/go.sum b/go.sum
index 7e615a72..959d2d45 100644
--- a/go.sum
+++ b/go.sum
@@ -17,14 +17,14 @@ cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHOb
 cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI=
 cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk=
 cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY=
-cloud.google.com/go v0.105.0 h1:DNtEKRBAAzeS4KyIory52wWHuClNaXJ5x1F7xa4q+5Y=
+cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys=
 cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
 cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
 cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
 cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=
 cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=
 cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=
-cloud.google.com/go/compute v1.15.1 h1:7UGq3QknM33pw5xATlpzeoomNxsacIVvTqTTvbfajmE=
+cloud.google.com/go/compute v1.19.1 h1:am86mquDUgjGNWxiGn+5PGLbmgiWXlE/yNWpIpNvuXY=
 cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY=
 cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
 cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
@@ -207,8 +207,8 @@ github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w
 github.com/golang-jwt/jwt/v5 v5.0.0 h1:1n1XNM9hk7O9mnQoNBGolZvzebBQ7p93ULHRc28XJUE=
 github.com/golang-jwt/jwt/v5 v5.0.0/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk=
 github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
-github.com/golang/glog v1.0.0 h1:nfP3RFugxnNRyKgeWd4oI1nYvXpxrx8ck8ZrcizshdQ=
-github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4=
+github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE=
+github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ=
 github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
 github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
 github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
@@ -771,8 +771,12 @@ google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6D
 google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
 google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
 google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
-google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f h1:BWUVssLB0HVOSY78gIdvk1dTVYtT1y8SBWtPYuTJ/6w=
-google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM=
+google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M=
+google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk=
+google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ=
+google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
 google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
 google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
 google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=
@@ -792,8 +796,8 @@ google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA5
 google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=
 google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=
 google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34=
-google.golang.org/grpc v1.54.0 h1:EhTqbhiYeixwWQtAEZAxmV9MGqcjEU2mFx52xCzNyag=
-google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g=
+google.golang.org/grpc v1.57.0-dev.0.20230612212144-642dd63a8527 h1:bnw4nh4qn/VTxkFCtt4CtpBcIVJGDlqBBPOBDmZEzkw=
+google.golang.org/grpc v1.57.0-dev.0.20230612212144-642dd63a8527/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo=
 google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
 google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
 google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
diff --git a/policies/rego.go b/policies/rego.go
index ca5c1978..dd84f3f4 100644
--- a/policies/rego.go
+++ b/policies/rego.go
@@ -32,7 +32,6 @@ import (
 	"strings"
 	"sync"
 
-	"clouditor.io/clouditor/api"
 	"clouditor.io/clouditor/api/assessment"
 	"clouditor.io/clouditor/api/evidence"
 	"clouditor.io/clouditor/api/orchestrator"
@@ -41,6 +40,7 @@ import (
 	"github.com/open-policy-agent/opa/storage"
 	"github.com/open-policy-agent/opa/storage/inmem"
 	"google.golang.org/grpc/codes"
+	"google.golang.org/grpc/status"
 )
 
 // DefaultRegoPackage is the default package name for the Rego files
@@ -134,7 +134,7 @@ func (re *regoEval) Eval(evidence *evidence.Evidence, src MetricsSource) (data [
 			runMap, err := re.evalMap(baseDir, evidence.CloudServiceId, metric.Id, m, src)
 			if err != nil {
 				// Try to retrieve the gRPC status from the error, to check if the metric implementation just does not exist.
-				status, ok := api.StatusFromWrappedError(err)
+				status, ok := status.FromError(err)
 				if ok && status.Code() == codes.NotFound {
 					log.Warnf("Resource type %v ignored metric %v because of its missing implementation or default configuration ", key, metric.Id)
 					// In this case, we can continue
diff --git a/server/grpc.go b/server/grpc.go
index 4b11b901..9f8d8d48 100644
--- a/server/grpc.go
+++ b/server/grpc.go
@@ -193,10 +193,10 @@ func StreamServerInterceptorWithFilter(in grpc.StreamServerInterceptor, filter f
 
 // UnaryReflectionFilter is a filter that ignores calls to the reflection endpoint
 func UnaryReflectionFilter(info *grpc.UnaryServerInfo) bool {
-	return info.FullMethod == "/grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo"
+	return info.FullMethod == "/grpc.reflection.v1.ServerReflection/ServerReflectionInfo"
 }
 
 // StreamReflectionFilter is a filter that ignores calls to the reflection endpoint
 func StreamReflectionFilter(info *grpc.StreamServerInfo) bool {
-	return info.FullMethod == "/grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo"
+	return info.FullMethod == "/grpc.reflection.v1.ServerReflection/ServerReflectionInfo"
 }


Test patch:
diff --git a/api/errors_test.go b/api/errors_test.go
deleted file mode 100644
index 01eb6d8b..00000000
--- a/api/errors_test.go
+++ /dev/null
@@ -1,85 +0,0 @@
-// Copyright 2022 Fraunhofer AISEC
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-//           $$\                           $$\ $$\   $$\
-//           $$ |                          $$ |\__|  $$ |
-//  $$$$$$$\ $$ | $$$$$$\  $$\   $$\  $$$$$$$ |$$\ $$$$$$\    $$$$$$\   $$$$$$\
-// $$  _____|$$ |$$  __$$\ $$ |  $$ |$$  __$$ |$$ |\_$$  _|  $$  __$$\ $$  __$$\
-// $$ /      $$ |$$ /  $$ |$$ |  $$ |$$ /  $$ |$$ |  $$ |    $$ /  $$ |$$ | \__|
-// $$ |      $$ |$$ |  $$ |$$ |  $$ |$$ |  $$ |$$ |  $$ |$$\ $$ |  $$ |$$ |
-// \$$$$$$\  $$ |\$$$$$   |\$$$$$   |\$$$$$$  |$$ |  \$$$   |\$$$$$   |$$ |
-//  \_______|\__| \______/  \______/  \_______|\__|   \____/  \______/ \__|
-//
-// This file is part of Clouditor Community Edition.
-
-package api
-
-import (
-	"errors"
-	"fmt"
-	"reflect"
-	"testing"
-
-	"google.golang.org/grpc/codes"
-	"google.golang.org/grpc/status"
-)
-
-func TestStatusFromWrappedError(t *testing.T) {
-	type args struct {
-		err error
-	}
-	tests := []struct {
-		name   string
-		args   args
-		wantS  *status.Status
-		wantOk bool
-	}{
-		{
-			name: "err is status.Status",
-			args: args{
-				err: status.Errorf(codes.NotFound, "not found"),
-			},
-			wantS:  status.New(codes.NotFound, "not found"),
-			wantOk: true,
-		},
-		{
-			name: "wrapped in fmt.Errorf",
-			args: args{
-				err: fmt.Errorf("some error: %w", status.Errorf(codes.NotFound, "not found")),
-			},
-			wantS:  status.New(codes.NotFound, "not found"),
-			wantOk: true,
-		},
-		{
-			name: "no status",
-			args: args{
-				err: fmt.Errorf("some error: %w", errors.New("some other error")),
-			},
-			wantS:  nil,
-			wantOk: false,
-		},
-	}
-
-	for _, tt := range tests {
-		t.Run(tt.name, func(t *testing.T) {
-			gotS, gotOk := StatusFromWrappedError(tt.args.err)
-			if !reflect.DeepEqual(gotS, tt.wantS) {
-				t.Errorf("StatusFromWrappedError() gotS = %v, want %v", gotS, tt.wantS)
-			}
-			if gotOk != tt.wantOk {
-				t.Errorf("StatusFromWrappedError() gotOk = %v, want %v", gotOk, tt.wantOk)
-			}
-		})
-	}
-}
diff --git a/server/grpc_test.go b/server/grpc_test.go
index 3558d96c..9e4aaa86 100644
--- a/server/grpc_test.go
+++ b/server/grpc_test.go
@@ -34,10 +34,11 @@ import (
 	"clouditor.io/clouditor/internal/testutil/clitest"
 	"clouditor.io/clouditor/server"
 	service_orchestrator "clouditor.io/clouditor/service/orchestrator"
+
 	"github.com/stretchr/testify/assert"
 	"google.golang.org/grpc"
 	"google.golang.org/grpc/credentials/insecure"
-	"google.golang.org/grpc/reflection/grpc_reflection_v1alpha"
+	"google.golang.org/grpc/reflection/grpc_reflection_v1"
 )
 
 func TestMain(m *testing.M) {
@@ -50,9 +51,9 @@ func TestReflectionNoAuth(t *testing.T) {
 	var (
 		session *cli.Session
 		conn    *grpc.ClientConn
-		client  grpc_reflection_v1alpha.ServerReflectionClient
-		sclient grpc_reflection_v1alpha.ServerReflection_ServerReflectionInfoClient
-		res     *grpc_reflection_v1alpha.ServerReflectionResponse
+		client  grpc_reflection_v1.ServerReflectionClient
+		sclient grpc_reflection_v1.ServerReflection_ServerReflectionInfoClient
+		res     *grpc_reflection_v1.ServerReflectionResponse
 		err     error
 	)
 
@@ -64,13 +65,13 @@ func TestReflectionNoAuth(t *testing.T) {
 	conn, err = grpc.Dial(session.URL, grpc.WithTransportCredentials(insecure.NewCredentials()))
 	assert.NoError(t, err)
 
-	client = grpc_reflection_v1alpha.NewServerReflectionClient(conn)
+	client = grpc_reflection_v1.NewServerReflectionClient(conn)
 	sclient, err = client.ServerReflectionInfo(context.TODO())
 	assert.NoError(t, err)
 
-	err = sclient.Send(&grpc_reflection_v1alpha.ServerReflectionRequest{
+	err = sclient.Send(&grpc_reflection_v1.ServerReflectionRequest{
 		Host:           "localhost",
-		MessageRequest: &grpc_reflection_v1alpha.ServerReflectionRequest_ListServices{},
+		MessageRequest: &grpc_reflection_v1.ServerReflectionRequest_ListServices{},
 	})
 	assert.NoError(t, err)