Compare commits
4 Commits
62099efa85
...
trunk
Author | SHA1 | Date | |
---|---|---|---|
7dbc4ae55c | |||
401572996d | |||
f874ed1206 | |||
d7cfc5419e |
21
confdump.py
21
confdump.py
@ -23,6 +23,7 @@ import MySQLdb as mysql
|
|||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
from typing import Any, Dict, List
|
from typing import Any, Dict, List
|
||||||
|
|
||||||
|
import civicrmapi4
|
||||||
from civicrmapi4.civicrmapi4 import APIv4
|
from civicrmapi4.civicrmapi4 import APIv4
|
||||||
|
|
||||||
import phpserialize
|
import phpserialize
|
||||||
@ -40,7 +41,8 @@ DUMP_TRIVIAL = ["FinancialType",
|
|||||||
"OptionGroup",
|
"OptionGroup",
|
||||||
"OptionValue",
|
"OptionValue",
|
||||||
"Domain",
|
"Domain",
|
||||||
"SavedSearch"]
|
"SavedSearch",
|
||||||
|
"Tag"]
|
||||||
|
|
||||||
|
|
||||||
# "ContributionPage", needs payment processors & payment_processor column formatted correctly.
|
# "ContributionPage", needs payment processors & payment_processor column formatted correctly.
|
||||||
@ -66,7 +68,8 @@ LOAD_TRIVIAL = ["FinancialType",
|
|||||||
"OptionValue",
|
"OptionValue",
|
||||||
"Domain",
|
"Domain",
|
||||||
"Contact",
|
"Contact",
|
||||||
"SavedSearch"]
|
"SavedSearch",
|
||||||
|
"Tag"]
|
||||||
|
|
||||||
WEIRD_LIST = [
|
WEIRD_LIST = [
|
||||||
("civicrm_contact", "contact_sub_type"),
|
("civicrm_contact", "contact_sub_type"),
|
||||||
@ -220,6 +223,16 @@ def parse_arguments() -> argparse.Namespace:
|
|||||||
return parser.parse_args()
|
return parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
def wrap_api_get(api, obj, args=None):
|
||||||
|
if args is None:
|
||||||
|
args = []
|
||||||
|
try:
|
||||||
|
return api.get(obj, args)
|
||||||
|
except civicrmapi4.civicrmapi4.CallFailed:
|
||||||
|
logging.error("Could not fetch {}".format(obj))
|
||||||
|
return []
|
||||||
|
|
||||||
|
|
||||||
def main() -> int:
|
def main() -> int:
|
||||||
args = parse_arguments()
|
args = parse_arguments()
|
||||||
|
|
||||||
@ -259,14 +272,14 @@ def main() -> int:
|
|||||||
|
|
||||||
for table in DUMP_TRIVIAL:
|
for table in DUMP_TRIVIAL:
|
||||||
output = args.output / (table + ".json")
|
output = args.output / (table + ".json")
|
||||||
data = api.get(table)
|
data = wrap_api_get(api, table)
|
||||||
if data:
|
if data:
|
||||||
print("dumping", table)
|
print("dumping", table)
|
||||||
with output.open("w") as of:
|
with output.open("w") as of:
|
||||||
of.write(json.dumps(data))
|
of.write(json.dumps(data))
|
||||||
# dump org contacts
|
# dump org contacts
|
||||||
output = args.output / ("Contact.json")
|
output = args.output / ("Contact.json")
|
||||||
data = api.get("Contact", where=[["contact_sub_type", "CONTAINS", "Political_Party"]])
|
data = wrap_api_get(api, "Contact", where=[["contact_sub_type", "CONTAINS", "Political_Party"]])
|
||||||
if data:
|
if data:
|
||||||
print("dumping parties")
|
print("dumping parties")
|
||||||
with output.open("w") as of:
|
with output.open("w") as of:
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
-e git+https://git.autonomic.zone/cas/civicrmapi4#egg=civicrmapi4
|
-e git+https://git.autonomic.zone/autonomic-cooperative/civicrmapi4#egg=civicrmapi4
|
||||||
phpserialize
|
phpserialize
|
||||||
mysqlclient~=1.4.6
|
mysqlclient~=1.4.6
|
||||||
|
Reference in New Issue
Block a user