__main__.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import os
  2. import sys
  3. from ap_git import GitRepo
  4. from build_manager import BuildManager
  5. from builder import Builder
  6. from metadata_manager import (
  7. APSourceMetadataFetcher,
  8. )
  9. from logging.config import dictConfig
  10. dictConfig({
  11. 'version': 1,
  12. 'formatters': {
  13. 'default': {
  14. 'format': '[%(asctime)s] %(levelname)s in %(module)s: %(message)s',
  15. },
  16. },
  17. 'handlers': {
  18. 'stream': {
  19. 'class': 'logging.StreamHandler',
  20. 'level': 'INFO',
  21. 'formatter': 'default',
  22. 'stream': sys.stdout,
  23. },
  24. },
  25. 'loggers': {
  26. 'root': {
  27. 'level': 'INFO',
  28. 'handlers': ['stream'],
  29. },
  30. },
  31. })
  32. if __name__ == "__main__":
  33. basedir = os.path.abspath(os.getenv("CBS_BASEDIR"))
  34. workdir = os.path.abspath('/workdir')
  35. repo = GitRepo.clone_if_needed(
  36. source="https://github.com/ardupilot/ardupilot.git",
  37. dest=os.path.join(workdir, 'ardupilot'),
  38. )
  39. ap_metafetch = APSourceMetadataFetcher(
  40. ap_repo=repo
  41. )
  42. manager = BuildManager(
  43. outdir=os.path.join(basedir, 'artifacts'),
  44. redis_host=os.getenv('CBS_REDIS_HOST', default='localhost'),
  45. redis_port=os.getenv('CBS_REDIS_PORT', default='6379')
  46. )
  47. builder = Builder(
  48. workdir=workdir,
  49. source_repo=repo,
  50. )
  51. builder.run()