mirror of
https://github.com/PurpleI2P/pyseeder
synced 2025-01-30 08:34:22 +00:00
update reseed list
This commit is contained in:
parent
cfd7ae4b9a
commit
0d5a7ac908
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,6 @@
|
|||||||
__pycache__
|
__pycache__
|
||||||
*.pyc
|
*.pyc
|
||||||
|
build/
|
||||||
|
pyseeder.egg-info/
|
||||||
venv/
|
venv/
|
||||||
transports.ini
|
transports.ini
|
||||||
|
@ -9,7 +9,7 @@ import pyseeder.actions
|
|||||||
from pyseeder.utils import PyseederException
|
from pyseeder.utils import PyseederException
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument('--loglevel', default=logging.INFO, help="Log level",
|
parser.add_argument('--loglevel', default=logging.INFO, help="Log level",
|
||||||
@ -24,7 +24,7 @@ def main():
|
|||||||
description="Generates keypair for your reseed",
|
description="Generates keypair for your reseed",
|
||||||
usage="""
|
usage="""
|
||||||
%(prog)s --cert data/user_at_mail.i2p.crt \\
|
%(prog)s --cert data/user_at_mail.i2p.crt \\
|
||||||
--private-key data/priv_key.pem --signer-id user@mail.i2p"""
|
--private-key data/priv_key.pem --signer-id user@mail.i2p"""
|
||||||
)
|
)
|
||||||
kg_parser.add_argument("--signer-id", required=True,
|
kg_parser.add_argument("--signer-id", required=True,
|
||||||
help="Identifier of certificate (example: user@mail.i2p)")
|
help="Identifier of certificate (example: user@mail.i2p)")
|
||||||
@ -45,13 +45,13 @@ echo $YOUR_PASSWORD | %(prog)s --netdb /path/to/netDb \\
|
|||||||
--private-key data/priv_key.pem --outfile output/i2pseeds.su3 \\
|
--private-key data/priv_key.pem --outfile output/i2pseeds.su3 \\
|
||||||
--signer-id user@mail.i2p"""
|
--signer-id user@mail.i2p"""
|
||||||
)
|
)
|
||||||
rs_parser.add_argument("--signer-id", required=True,
|
rs_parser.add_argument("--signer-id", required=True,
|
||||||
help="Identifier of certificate (example: user@mail.i2p)")
|
help="Identifier of certificate (example: user@mail.i2p)")
|
||||||
rs_parser.add_argument("--private-key", default="data/priv_key.pem",
|
rs_parser.add_argument("--private-key", default="data/priv_key.pem",
|
||||||
help="RSA private key (default: data/priv_key.pem)")
|
help="RSA private key (default: data/priv_key.pem)")
|
||||||
rs_parser.add_argument("-o", "--outfile", default="output/i2pseeds.su3",
|
rs_parser.add_argument("-o", "--outfile", default="output/i2pseeds.su3",
|
||||||
help="Output file (default: output/i2pseeds.su3)")
|
help="Output file (default: output/i2pseeds.su3)")
|
||||||
rs_parser.add_argument("--netdb", required=True,
|
rs_parser.add_argument("--netdb", required=True,
|
||||||
help="Path to netDb folder (example: ~/.i2pd/netDb)")
|
help="Path to netDb folder (example: ~/.i2pd/netDb)")
|
||||||
rs_parser.add_argument("--no-encryption", action="store_true",
|
rs_parser.add_argument("--no-encryption", action="store_true",
|
||||||
help="Disable private key encryption")
|
help="Disable private key encryption")
|
||||||
@ -102,7 +102,7 @@ echo $YOUR_PASSWORD | %(prog)s --netdb /path/to/netDb \\
|
|||||||
help="Port listening for clients (default: 8443)")
|
help="Port listening for clients (default: 8443)")
|
||||||
serve_parser.add_argument("--private-key", default="data/priv_key.pem",
|
serve_parser.add_argument("--private-key", default="data/priv_key.pem",
|
||||||
help="RSA private key (default: data/priv_key.pem)")
|
help="RSA private key (default: data/priv_key.pem)")
|
||||||
serve_parser.add_argument("--cert", required=True,
|
serve_parser.add_argument("--cert", required=True,
|
||||||
help="Certificate (example: data/user_at_mail.i2p.crt)")
|
help="Certificate (example: data/user_at_mail.i2p.crt)")
|
||||||
serve_parser.add_argument("-f", "--file", default="output/i2pseeds.su3",
|
serve_parser.add_argument("-f", "--file", default="output/i2pseeds.su3",
|
||||||
help=".su3 file (default: output/i2pseeds.su3)")
|
help=".su3 file (default: output/i2pseeds.su3)")
|
||||||
@ -111,7 +111,7 @@ echo $YOUR_PASSWORD | %(prog)s --netdb /path/to/netDb \\
|
|||||||
|
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
logging.basicConfig(level=args.loglevel,
|
logging.basicConfig(level=args.loglevel,
|
||||||
format='%(levelname)-8s %(message)s')
|
format='%(levelname)-8s %(message)s')
|
||||||
|
|
||||||
if hasattr(args, "func"):
|
if hasattr(args, "func"):
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import os
|
import os
|
||||||
import random
|
import random
|
||||||
import sys
|
import sys
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ class ReseedHandler(http.server.SimpleHTTPRequestHandler):
|
|||||||
if path == "/i2pseeds.su3":
|
if path == "/i2pseeds.su3":
|
||||||
self.send_response(200)
|
self.send_response(200)
|
||||||
self.send_header("Content-Type", "application/octet-stream")
|
self.send_header("Content-Type", "application/octet-stream")
|
||||||
self.send_header("Content-Length",
|
self.send_header("Content-Length",
|
||||||
os.path.getsize(self.i2pseeds_file))
|
os.path.getsize(self.i2pseeds_file))
|
||||||
self.end_headers()
|
self.end_headers()
|
||||||
with open(self.i2pseeds_file, 'rb') as f:
|
with open(self.i2pseeds_file, 'rb') as f:
|
||||||
@ -25,10 +25,10 @@ class ReseedHandler(http.server.SimpleHTTPRequestHandler):
|
|||||||
def run_server(host, port, priv_key, cert, i2pseeds_file):
|
def run_server(host, port, priv_key, cert, i2pseeds_file):
|
||||||
"""Start HTTPS server"""
|
"""Start HTTPS server"""
|
||||||
Handler = ReseedHandler
|
Handler = ReseedHandler
|
||||||
Handler.i2pseeds_file = i2pseeds_file
|
Handler.i2pseeds_file = i2pseeds_file
|
||||||
|
|
||||||
httpd = http.server.HTTPServer((host, int(port)), Handler)
|
httpd = http.server.HTTPServer((host, int(port)), Handler)
|
||||||
httpd.socket = ssl.wrap_socket(httpd.socket, server_side=True,
|
httpd.socket = ssl.wrap_socket(httpd.socket, server_side=True,
|
||||||
keyfile=priv_key, certfile=cert, ssl_version=ssl.PROTOCOL_TLSv1)
|
keyfile=priv_key, certfile=cert, ssl_version=ssl.PROTOCOL_TLSv1)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import os
|
import os
|
||||||
import time, datetime
|
import time, datetime
|
||||||
import random
|
import random
|
||||||
import io
|
import io
|
||||||
|
|
||||||
from zipfile import ZipFile, ZIP_DEFLATED
|
from zipfile import ZipFile, ZIP_DEFLATED
|
||||||
@ -68,7 +68,7 @@ class SU3File:
|
|||||||
dat_files = random.sample(dat_files, 75)
|
dat_files = random.sample(dat_files, 75)
|
||||||
|
|
||||||
with ZipFile(zip_file, "w", compression=ZIP_DEFLATED) as zf:
|
with ZipFile(zip_file, "w", compression=ZIP_DEFLATED) as zf:
|
||||||
for f in dat_files:
|
for f in dat_files:
|
||||||
zf.write(f, arcname=os.path.split(f)[1])
|
zf.write(f, arcname=os.path.split(f)[1])
|
||||||
|
|
||||||
self.FILE_TYPE = 0x00
|
self.FILE_TYPE = 0x00
|
||||||
|
@ -12,14 +12,13 @@ log = logging.getLogger(__name__)
|
|||||||
RESEED_URLS = [
|
RESEED_URLS = [
|
||||||
"https://reseed.i2p-projekt.de/",
|
"https://reseed.i2p-projekt.de/",
|
||||||
"https://i2p.mooo.com/netDb/",
|
"https://i2p.mooo.com/netDb/",
|
||||||
"https://netdb.i2p2.no/",
|
"https://reseed.i2p2.no/",
|
||||||
"https://us.reseed.i2p2.no:444/",
|
"https://reseed-fr.i2pd.xyz/",
|
||||||
"https://uk.reseed.i2p2.no:444/",
|
"https://reseed.memcpy.io/",
|
||||||
"https://i2p.manas.ca:8443/",
|
"https://reseed.onion.im/",
|
||||||
"https://i2p-0.manas.ca:8443/",
|
"https://i2pseed.creativecowpat.net:8443/",
|
||||||
"https://reseed.i2p.vzaws.com:8443/",
|
"https://reseed.i2pgit.org/",
|
||||||
"https://user.mx24.eu/",
|
"https://i2p.novg.net/",
|
||||||
"https://download.xxlspeed.com/",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
def download(url, filename):
|
def download(url, filename):
|
||||||
|
@ -6,11 +6,11 @@ from pyseeder.utils import TransportException
|
|||||||
|
|
||||||
TRANSPORT_NAME = "git"
|
TRANSPORT_NAME = "git"
|
||||||
|
|
||||||
# Push to github repo witout prompting password.
|
# Push to github repo witout prompting password.
|
||||||
# Set up SSH keys or change origin URL like that:
|
# Set up SSH keys or change origin URL like that:
|
||||||
# git remote set-url origin https://$USERNAME:$PASSWORD@github.com/$USERNAME/$REPO.git
|
# git remote set-url origin https://$USERNAME:$PASSWORD@github.com/$USERNAME/$REPO.git
|
||||||
|
|
||||||
def run(filename, config):
|
def run(filename, config):
|
||||||
if "folder" not in config:
|
if "folder" not in config:
|
||||||
raise TransportException("git: No folder specified in config")
|
raise TransportException("git: No folder specified in config")
|
||||||
else:
|
else:
|
||||||
@ -28,7 +28,7 @@ def run(filename, config):
|
|||||||
copyfile(filename, os.path.join(REPO_FOLDER, REPO_FILE))
|
copyfile(filename, os.path.join(REPO_FOLDER, REPO_FILE))
|
||||||
|
|
||||||
commands = [
|
commands = [
|
||||||
"git add {}".format(REPO_FILE),
|
"git add {}".format(REPO_FILE),
|
||||||
"git commit -m 'update'",
|
"git commit -m 'update'",
|
||||||
"git push origin master"
|
"git push origin master"
|
||||||
]
|
]
|
||||||
|
@ -34,14 +34,14 @@ def run(filename, config):
|
|||||||
r = requests.delete(x["url"], auth=creds)
|
r = requests.delete(x["url"], auth=creds)
|
||||||
if r.status_code is not 204:
|
if r.status_code is not 204:
|
||||||
raise TransportException("Failed to delete asset from GitHub")
|
raise TransportException("Failed to delete asset from GitHub")
|
||||||
|
|
||||||
# upload new asset
|
# upload new asset
|
||||||
upload_url = resp.json()["upload_url"].split("{")[0] # wat
|
upload_url = resp.json()["upload_url"].split("{")[0] # wat
|
||||||
headers = {'Content-Type': content_type}
|
headers = {'Content-Type': content_type}
|
||||||
params = {'name': asset_name}
|
params = {'name': asset_name}
|
||||||
|
|
||||||
data = open(filename, 'rb').read()
|
data = open(filename, 'rb').read()
|
||||||
r = requests.post(upload_url, headers=headers, params=params, auth=creds,
|
r = requests.post(upload_url, headers=headers, params=params, auth=creds,
|
||||||
data=data)
|
data=data)
|
||||||
|
|
||||||
if r.status_code is not 201:
|
if r.status_code is not 201:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user