mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-04-20 19:38:39 +00:00
feat: Add system test for etcd
This commit is contained in:
27
system/leveldb2etcd.py
Normal file
27
system/leveldb2etcd.py
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import leveldb
|
||||
import etcd3
|
||||
import argparse
|
||||
from termcolor import cprint
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--datadir", required=True, help="leveldb data dir")
|
||||
parser.add_argument("--etcdaddr", default="127.0.0.1", help="etcd server address")
|
||||
parser.add_argument("--etcdport", default="2379", help="etcd server address")
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
ldb = leveldb.LevelDB(args.datadir)
|
||||
etcd = etcd3.client(args.etcdaddr, args.etcdport)
|
||||
|
||||
for key, value in ldb.RangeIter():
|
||||
try:
|
||||
keystr = str(bytes(key))
|
||||
valuestr = str(bytes(value))
|
||||
etcd.put(keystr, valuestr)
|
||||
# cprint("key: "+keystr+", value: "+valuestr+"put success!\n", 'green')
|
||||
except Exception as e:
|
||||
cprint("key: " + keystr + ", value: " + valuestr + "put err: " + str(e) + "\n", 'red')
|
||||
exit(1)
|
||||
@@ -133,6 +133,10 @@ class BaseTest(object):
|
||||
aptlyDir = ".aptly"
|
||||
aptlyConfigFile = ".aptly.conf"
|
||||
expectedCode = 0
|
||||
databaseEtcd = os.environ.get("APTLY_ETCD_DATABASE")
|
||||
if databaseEtcd is None:
|
||||
databaseEtcd = ""
|
||||
|
||||
configFile = {
|
||||
"rootDir": f"{os.environ['HOME']}/{aptlyDir}",
|
||||
"downloadConcurrency": 4,
|
||||
@@ -151,7 +155,8 @@ class BaseTest(object):
|
||||
"enableMetricsEndpoint": True,
|
||||
"logLevel": "debug",
|
||||
"logFormat": "default",
|
||||
"serveInAPIMode": True
|
||||
"serveInAPIMode": True,
|
||||
"databaseEtcd": databaseEtcd,
|
||||
}
|
||||
configOverride = {}
|
||||
environmentOverride = {}
|
||||
|
||||
@@ -5,3 +5,5 @@ requests-unixsocket
|
||||
python-swiftclient
|
||||
flake8
|
||||
termcolor
|
||||
etcd3
|
||||
leveldb
|
||||
|
||||
Reference in New Issue
Block a user