Skip to content

Commit 7d6e99f

Browse files
author
codeEmpress1
authored
remove cache from other authenticated endpoints (#5528)
1 parent 07d258a commit 7d6e99f

7 files changed

Lines changed: 5 additions & 93 deletions

File tree

tests/endpoints/cve/test_has_cve_api.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from unittest.mock import patch
22
from tests.endpoints.endpoint_testing import TestEndpoints
3-
from cache.cache_utility import redis_cache
43

54

65
class TestCveEndpoints(TestEndpoints):
@@ -25,14 +24,6 @@ def _set_user_is_canonical(self, value):
2524

2625
def setUp(self):
2726
super().setUp()
28-
# Clear cache before each test
29-
if redis_cache.redis_available:
30-
try:
31-
redis_cache.client.flushdb()
32-
except Exception:
33-
pass
34-
else:
35-
redis_cache.fallback.clear()
3627
self._log_in_with_canonical_status(is_canonical=False)
3728

3829

tests/endpoints/test_cve_get_by_revision.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,11 @@
33
import json
44
from webapp.publisher.cve.cve_helper import CveHelper
55
from werkzeug.exceptions import NotFound
6-
from cache.cache_utility import redis_cache
76

87

98
class CveHGetByRevisionTest(unittest.TestCase):
109

1110
def setUp(self):
12-
# Clear cache before each test
13-
if redis_cache.redis_available:
14-
try:
15-
redis_cache.client.flushdb()
16-
except Exception:
17-
pass
18-
else:
19-
redis_cache.fallback.clear()
20-
2111
self.file_metadata = {"download_url": "https://example.com/file.json"}
2212

2313
self.file_content = {

tests/publisher/cve/test_has_cve.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,9 @@
33

44
from webapp.publisher.cve.cve_helper import CveHelper
55
from werkzeug.exceptions import NotFound
6-
from cache.cache_utility import redis_cache
76

87

98
class HasRevisionsWithCvesTest(unittest.TestCase):
10-
11-
def setUp(self):
12-
# Clear cache before each test
13-
if redis_cache.redis_available:
14-
try:
15-
redis_cache.client.flushdb()
16-
except Exception:
17-
pass
18-
else:
19-
redis_cache.fallback.clear()
20-
219
@patch("webapp.publisher.cve.cve_helper.CveHelper._get_cve_file_metadata")
2210
def test_returns_revision_numbers(self, mock_get_metadata):
2311
mock_get_metadata.return_value = [

webapp/endpoints/models.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,6 @@
2020
)
2121

2222

23-
def get_models_cache_key(store_id: str) -> str:
24-
return f"models:{store_id}"
25-
26-
27-
def get_policies_cache_key(store_id: str, model_name: str) -> str:
28-
return f"policies:{store_id}:{model_name}"
29-
30-
3123
@models.route("/api/store/<store_id>/models")
3224
@login_required
3325
@exchange_required

webapp/endpoints/signing_keys.py

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
from webapp.decorators import login_required, exchange_required
1111
from webapp.helpers import api_publisher_session, get_brand_id
1212
from webapp.endpoints.models import get_models, get_policies
13-
from cache.cache_utility import redis_cache
14-
1513

1614
publisher_gateway = PublisherGW("snap", api_publisher_session)
1715

@@ -32,15 +30,9 @@ def get_signing_keys(store_id: str):
3230
brand_id = get_brand_id(flask.session, store_id)
3331
res = {}
3432
try:
35-
signing_keys_cache_key = get_signing_keys_cache_key(store_id)
36-
signing_keys = redis_cache.get(
37-
signing_keys_cache_key, expected_type=list
33+
signing_keys = publisher_gateway.get_store_signing_keys(
34+
flask.session, brand_id
3835
)
39-
if not signing_keys:
40-
signing_keys = publisher_gateway.get_store_signing_keys(
41-
flask.session, brand_id
42-
)
43-
redis_cache.set(signing_keys_cache_key, signing_keys, ttl=3600)
4436
res["data"] = signing_keys
4537
res["success"] = True
4638
response = make_response(res, 200)
@@ -71,8 +63,6 @@ def create_signing_key(store_id: str):
7163
publisher_gateway.create_store_signing_key(
7264
flask.session, store_id, name
7365
)
74-
signing_keys_cache_key = get_signing_keys_cache_key(store_id)
75-
redis_cache.delete(signing_keys_cache_key)
7666
res["success"] = True
7767
return make_response(res, 200)
7868
else:
@@ -117,8 +107,6 @@ def delete_signing_key(store_id: str, signing_key_sha3_384: str):
117107

118108
if response.status_code == 204:
119109
res["success"] = True
120-
signing_keys_cache_key = get_signing_keys_cache_key(store_id)
121-
redis_cache.delete(signing_keys_cache_key)
122110
return make_response(res, 200)
123111
elif response.status_code == 404:
124112
res["success"] = False

webapp/endpoints/validation_sets.py

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
from webapp.decorators import login_required
77
from webapp.helpers import api_session
8-
from cache.cache_utility import redis_cache
98

109
dashboard = Dashboard(api_session)
1110

@@ -25,14 +24,7 @@ def get_validation_sets():
2524
res = {}
2625

2726
try:
28-
cached_validation_sets = redis_cache.get(
29-
"validation_sets", expected_type=dict
30-
)
31-
if cached_validation_sets:
32-
validation_sets_data = cached_validation_sets
33-
else:
34-
validation_sets_data = dashboard.get_validation_sets(flask.session)
35-
redis_cache.set("validation_sets", validation_sets_data, ttl=3600)
27+
validation_sets_data = dashboard.get_validation_sets(flask.session)
3628
res["success"] = True
3729

3830
if len(validation_sets_data["assertions"]) > 0:
@@ -64,18 +56,9 @@ def get_validation_set(validation_set_id):
6456
res = {}
6557

6658
try:
67-
cached_validation_set = redis_cache.get(
68-
f"validation_set:{validation_set_id}", expected_type=dict
59+
validation_set = dashboard.get_validation_set(
60+
flask.session, validation_set_id
6961
)
70-
if cached_validation_set:
71-
validation_set = cached_validation_set
72-
else:
73-
validation_set = dashboard.get_validation_set(
74-
flask.session, validation_set_id
75-
)
76-
redis_cache.set(
77-
f"validation_set:{validation_set_id}", validation_set, ttl=3600
78-
)
7962
res["success"] = True
8063

8164
if len(validation_set["assertions"]) > 0:

webapp/publisher/cve/cve_helper.py

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
from webapp.publisher.snaps import (
99
logic,
1010
)
11-
from cache.cache_utility import redis_cache
1211

1312
REST_API_URL = "https://api.github.com"
1413
GITHUB_SNAPCRAFT_BOT_USER_TOKEN = getenv("GITHUB_SNAPCRAFT_BOT_USER_TOKEN")
@@ -119,12 +118,6 @@ def _fetch_file_content(snap_name, revision, file_metadata):
119118

120119
@staticmethod
121120
def get_revisions_with_cves(snap_name):
122-
cve_with_revisions_cache_key = f"cve_revisions:{snap_name}"
123-
cached_revision_files = redis_cache.get(
124-
cve_with_revisions_cache_key, expected_type=list
125-
)
126-
if cached_revision_files:
127-
return cached_revision_files
128121
try:
129122
contents = CveHelper._get_cve_file_metadata(
130123
f"snap-cves/{snap_name}"
@@ -138,23 +131,13 @@ def get_revisions_with_cves(snap_name):
138131
for item in contents
139132
if (match := re.match(r"(\d+)\.yaml$", item["name"]))
140133
]
141-
redis_cache.set(
142-
cve_with_revisions_cache_key, revision_files, ttl=3600
143-
)
144134

145135
return revision_files
146136
except NotFound:
147137
return []
148138

149139
@staticmethod
150140
def get_cve_with_revision(snap_name, revision):
151-
cve_with_revision_cache_key = f"cves:{snap_name}:{revision}"
152-
cached_file_content = redis_cache.get(
153-
cve_with_revision_cache_key, expected_type=list
154-
)
155-
if cached_file_content:
156-
return cached_file_content
157-
158141
file_metadata = CveHelper._get_cve_file_metadata(
159142
"snap-cves/{}.json".format(snap_name)
160143
)
@@ -163,9 +146,6 @@ def get_cve_with_revision(snap_name, revision):
163146
file_content = CveHelper._fetch_file_content(
164147
snap_name, revision, file_metadata
165148
)
166-
redis_cache.set(
167-
cve_with_revision_cache_key, file_content, ttl=3600
168-
)
169149
return file_content
170150
return []
171151

0 commit comments

Comments
 (0)