Esempio n. 1
0
    def init(self):

        settings_filename = 'fget.yaml'
        cached_filename = 'fget.jobs'

        cached_settings_file = os.path.join(self.cache_dir, cached_filename)

        self.cached_settings = {}
        if not os.path.isfile(cached_settings_file):

            fgetprint('Initiating. Please wait...')

            settings_file = \
                pkg_resources.resource_filename('fget', settings_filename)

            with open(settings_file) as f:
                settings = yaml.load(f.read())

            for url in settings.get('JENKINS_URLS', []):
                url = url.strip('/')
                fgetprint('Retrieving jobs from {0}'.format(url))
                root_resource = Root(url)
                for job in root_resource.get_jobs():
                    if url not in self.cached_settings:
                        self.cached_settings[url] = []
                    self.cached_settings[url].append(str(job['name']))
            with open(cached_settings_file, 'w') as f:
                for key in self.cached_settings.keys():
                    f.write(key + '\n')
                    for value in self.cached_settings[key]:
                        f.write(value + '\n')

            fgetprint('Initiating. Finished.')
        else:
            with open(cached_settings_file) as f:
                for line in f:
                    if line.startswith('http://'):
                        url = line.strip()
                        self.cached_settings[url] = []
                        continue
                    self.cached_settings[url].append(line.strip())
Esempio n. 2
0
args = parser.parse_args()

print 'Generating root fixtures...'

root = Root(args.url)

with open(os.path.join(args.dir, 'root.json'), 'w') as f:
    f.write(json.dumps(root._request(), sort_keys=True, indent=4))

print 'Generating job fixtures...'

max_jobs = 20
max_builds = 40
i = 0

for job in root.get_jobs():
    if ('8.0' not in job.get_name()
         or any(k in job.get_name() for k in ('system', 'proposed', 'test'))):
        continue
    print 'job: {0}'.format(job.get_name())
    job_dir = os.path.join(args.dir, job.get_name())
    os.makedirs(job_dir)
    with open(os.path.join(job_dir, 'root.json'), 'w') as f:
        f.write(json.dumps(job._request(), sort_keys=True, indent=4))

    y = 0
    for build in job.get_builds():
        print 'build: {0}'.format(build.get_number())
        build_dir = os.path.join(job_dir, str(build.get_number()))
        os.makedirs(build_dir)
        with open(os.path.join(build_dir, 'root.json'), 'w') as f:
Esempio n. 3
0
args = parser.parse_args()

print 'Generating root fixtures...'

root = Root(args.url)

with open(os.path.join(args.dir, 'root.json'), 'w') as f:
    f.write(json.dumps(root._request(), sort_keys=True, indent=4))

print 'Generating job fixtures...'

max_jobs = 20
max_builds = 40
i = 0

for job in root.get_jobs():
    if ('8.0' not in job.get_name()
            or any(k in job.get_name()
                   for k in ('system', 'proposed', 'test'))):
        continue
    print 'job: {0}'.format(job.get_name())
    job_dir = os.path.join(args.dir, job.get_name())
    os.makedirs(job_dir)
    with open(os.path.join(job_dir, 'root.json'), 'w') as f:
        f.write(json.dumps(job._request(), sort_keys=True, indent=4))

    y = 0
    for build in job.get_builds():
        print 'build: {0}'.format(build.get_number())
        build_dir = os.path.join(job_dir, str(build.get_number()))
        os.makedirs(build_dir)