summaryrefslogtreecommitdiff
path: root/test/apiv2/15-manifest.at
blob: 6584ea8e4f26d88a7a7ad980a1b3b1d4ae356955 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# -*- sh -*-
#
# Tests for manifest list endpoints

start_registry

t POST /v3.4.0/libpod/manifests/create?name=abc 200 \
    .Id~[0-9a-f]\\{64\\}
id_abc=$(jq -r '.Id' <<<"$output")

t POST /v4.0.0/libpod/manifests/xyz 201 \
    .Id~[0-9a-f]\\{64\\}
id_xyz=$(jq -r '.Id' <<<"$output")

t GET /v3.4.0/libpod/manifests/$id_abc/exists 204
t GET /v4.0.0/libpod/manifests/$id_xyz/exists 204

id_abc_image=$($PODMAN_BIN --root $WORKDIR/server_root image build -q --format=docker -<<EOF
FROM alpine
RUN >file1
EOF
)

id_xyz_image=$($PODMAN_BIN --root $WORKDIR/server_root image build -q --format=docker -<<EOF
FROM alpine
RUN >file2
EOF
)

t POST /v3.4.0/libpod/manifests/$id_abc/add images="[\"containers-storage:$id_abc_image\"]" 200
t PUT /v4.0.0/libpod/manifests/$id_xyz operation='update' images="[\"containers-storage:$id_xyz_image\"]" 200

t POST "/v3.4.0/libpod/manifests/abc:latest/push?destination=localhost:$REGISTRY_PORT%2Fabc:latest&tlsVerify=false&all=true" 200
t POST "/v4.0.0/libpod/manifests/xyz:latest/registry/localhost:$REGISTRY_PORT%2Fxyz:latest?all=true" 400 \
  .cause='x509: certificate signed by unknown authority'
t POST "/v4.0.0/libpod/manifests/xyz:latest/registry/localhost:$REGISTRY_PORT%2Fxyz:latest?tlsVerify=false&all=true" 200

# /v3.x cannot delete a manifest list
t DELETE /v4.0.0/libpod/manifests/$id_abc 200
t DELETE /v4.0.0/libpod/manifests/$id_xyz 200

podman rmi -a
stop_registry