diff options
| author | Max Resnick <max@ofmax.li> | 2020-01-22 22:39:40 -0800 |
|---|---|---|
| committer | Max Resnick <max@ofmax.li> | 2020-01-22 22:39:40 -0800 |
| commit | b9bba34110e43663b13181bc4bef14133fc2cdcf (patch) | |
| tree | 92fc878988d3093ac716f2c30f97b77d2b18cf6b | |
| parent | f54e38b77366f031f3822a9d1acd911a259112a4 (diff) | |
| download | git-snapshot-b9bba34110e43663b13181bc4bef14133fc2cdcf.tar.gz | |
add entrypoints, relocate entrypoint in script
| -rw-r--r-- | gitsnap/snap.py | 21 | ||||
| -rw-r--r-- | setup.py | 8 |
2 files changed, 20 insertions, 9 deletions
diff --git a/gitsnap/snap.py b/gitsnap/snap.py index 44e32fb..6fd2820 100644 --- a/gitsnap/snap.py +++ b/gitsnap/snap.py @@ -18,6 +18,9 @@ subparsers = parser.add_subparsers(dest='cmd', help='git snapshot commands') parser_backup= subparsers.add_parser('backup', help='backup repositories') parser_backup.add_argument('repositories', help='directory with repos') +parser_backup.add_argument('bucket', type=str, help='s3 bucket') +parser_backup.add_argument('-p', '--prefix', type=str, default='gitsnap', + help='prefixes all bundles in object store') args = parser.parse_args() @@ -110,21 +113,25 @@ def run_backup(ctx): obj = cloud_object(ctx, bundle_path) tag_checkpoint(ctx) -def run_backups(base): +def run_backups(base, bucket, prefix): repo_base_path = Path(base) with Wal() as wal: for repo_path in repo_base_path.glob('*.git'): ctx = Context( repo=git.bake(f'--git-dir={repo_path}/'), repo_name=repo_path.name.split('.')[0], - bucket='privategit', - prefix='2', + bucket=bucket, + prefix=prefix, bundle=None, wal=wal ) run_backup(ctx) -if args.cmd == 'backup': - run_backups(args.repositories) -elif args.cmd == 'restore': - run_restore(args.bundle) +def run(): + if args.cmd == 'backup': + run_backups(args.repositories, args.bucket, args.prefix) + elif args.cmd == 'restore': + run_restore(args.bundle) + +if __name__ == '__main__': + run() @@ -8,13 +8,13 @@ with open('VERSION', 'r') as version_file: setup(name='gitsnap', version=version, - description='distributed observability of systemd', + description='stupid bundler for bare repos', long_description=" ".join(""" simple tools for snapshotting git repos """.split()), author='Max Resnick', author_email='max@ofmax.li', - url='http://git.ofmax.li/gitsnap.git/', + url='https://git.ofmax.li/git-snapshot/', license="MIT", py_modules=['gitsnap'], packages=[], @@ -23,6 +23,10 @@ setup(name='gitsnap', 'boto3' ], keywords='', + entry_points=''' + [console_scripts] + gitsnap=gitsnap.snap:run + ''', classifiers=[ 'Development Status :: 3 - Alpha', 'Natural Language :: English', |