Skip to content

Commit 330e372

Browse files
committed
Add methods to manage auto-update falco rules.
Add methods to manage auto-updating falco rules. These are mostly useful internally if we decide to push out new rules updates to customers.
1 parent a4caff7 commit 330e372

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

sdcclient/_client.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1616,6 +1616,32 @@ def clear_agents_config(self):
16161616
data = {'files' : []}
16171617
self.set_agents_config(data)
16181618

1619+
def get_falco_rules(self):
1620+
res = requests.get(self.url + '/api/agents/falco_rules', headers=self.hdrs)
1621+
if not self.__checkResponse(res):
1622+
return [False, self.lasterr]
1623+
data = res.json()
1624+
return [True, data]
1625+
1626+
def set_falco_rules_content_raw(self, raw_payload):
1627+
res = requests.put(self.url + '/api/agents/falco_rules', headers=self.hdrs, data=json.dumps(raw_payload))
1628+
if not self.__checkResponse(res):
1629+
return [False, self.lasterr]
1630+
return [True, res.json()]
1631+
1632+
def set_falco_rules_content(self, filter, rules_content):
1633+
payload = { "files" : [ { "filter": filter, "content": rules_content} ] }
1634+
return self.set_falco_rules_content_raw(payload)
1635+
1636+
def set_falco_rules_filename(self, filter, rules_filename):
1637+
with open(rules_filename, 'r') as f:
1638+
rules_content = f.read()
1639+
return self.set_falco_rules_content(filter, rules_content)
1640+
1641+
def clear_falco_rules(self):
1642+
data = {'files' : []}
1643+
return self.set_falco_rules_content_raw(data)
1644+
16191645
def get_user_api_token(self, username, teamname):
16201646
res = self.get_team(teamname)
16211647
if res[0] == False:

0 commit comments

Comments
 (0)