Add filtering functionality to http api secrets list

Filtering is missing in both compat API and libpod API, while docker
has filtering functinality. This commit enables filtering option using
name and id in both libpod and http API.

Signed-off-by: Jakub Guzik <jakubmguzik@gmail.com>
This commit is contained in:
Jakub Guzik
2021-09-02 23:01:37 +02:00
parent 469900406a
commit d346e6e734
13 changed files with 128 additions and 36 deletions

View File

@ -27,8 +27,37 @@ t GET secrets 200 \
.[0].Spec.Name=mysecret \
.[0].Version.Index=1
# secret list unsupported filters
t GET secrets?filters='{"name":["foo1"]}' 400
# secret list with filters
t GET secrets?filters='{"name":["mysecret"]}' 200 \
length=1 \
.[0].Spec.Name=mysecret \
.[0].Version.Index=1
t GET secrets?filters='{"name":["mysecret2"]}' 200 \
length=0 \
# secret libpod list with filters
t GET libpod/secrets/json?filters='{"name":["mysecret"]}' 200 \
length=1 \
.[0].Spec.Name=mysecret \
t GET libpod/secrets/json?filters='{"name":["mysecret2"]}' 200 \
length=0 \
# secret list with unsupported filters
t GET secrets?filters='{"label":["xyz"]}' 500
#compat api list secrets sanity checks
t GET secrets?filters='garb1age}' 500 \
.cause="invalid character 'g' looking for beginning of value"
t GET secrets?filters='{"label":["testl' 500 \
.cause="unexpected end of JSON input"
#libpod api list secrets sanity checks
t GET libpod/secrets/json?filters='garb1age}' 500 \
.cause="invalid character 'g' looking for beginning of value"
t GET libpod/secrets/json?filters='{"label":["testl' 500 \
.cause="unexpected end of JSON input"
# secret rm
t DELETE secrets/mysecret 204