| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/usr/bin/env python
- import argparse
- import logging
- import sys
- try:
- import brew
- except ImportError as e:
- print str(e)
- print 'Please install the required dependencies first'
- print 'sudo pip install -r requirements.txt'
- sys.exit(1)
- logger = logging.getLogger(__name__)
- logging.basicConfig(format='%(asctime)s %(levelname)s %(message)s',
- level='INFO')
- if __name__ == '__main__':
- parser = argparse.ArgumentParser('Build the docker standard library')
- parser.add_argument(
- '--push', action='store_true', default=False,
- help='Push generated repositories'
- )
- parser.add_argument(
- '--debug', default=False, action='store_true',
- help='Enable debugging output'
- )
- # parser.add_argument(
- # '--noprefill', default=True, action='store_false',
- # dest='prefill', help='Disable cache prefill'
- # )
- parser.add_argument(
- '-n', metavar='NAMESPACE', default='library',
- help='Namespace used for generated repositories. Default is library'
- )
- parser.add_argument(
- '-b', metavar='BRANCH', default=brew.DEFAULT_BRANCH,
- help='Branch in the repository where the library definition'
- ' files will be fetched. Default is ' + brew.DEFAULT_BRANCH
- )
- parser.add_argument(
- 'repository', default=brew.DEFAULT_REPOSITORY,
- nargs='?', help='git repository containing the library definition'
- ' files. Default is ' + brew.DEFAULT_REPOSITORY
- )
- # parser.add_argument(
- # '--reg', default=None, help='Registry address to'
- # ' push build results to. Also sets push to true.'
- # )
- parser.add_argument(
- '--targets', default=None, help='Comma-separated list'
- ' of images to build.'
- )
- args = parser.parse_args()
- if args.debug:
- brew.set_loglevel('DEBUG')
- sb_library = brew.StackbrewLibrary(args.repository, args.b)
- builder = brew.LocalBuilder(sb_library, args.n.split(','), args.targets)
- builder.build_repo_list()
- builder.build_all()
- if args.push:
- builder.push_all()
- # summary = brew.build_library(
- # args.repository, args.b, args.n, args.push or args.reg is not None,
- # args.debug, args.prefill, args.reg, args.targets, None, logger
- # )
|