def new_version(travis_api_key, tag): """Allows Travis to mark a new version during build.""" try: TravisKeys.get(travis_api_key) except TravisKeys.DoesNotExist: return "API key is invalid.", 403 if tag.startswith("v"): tag = tag.lstrip("v") i = 0 while True: try: Version.get(i) i += 1 except Version.DoesNotExist: break r = requests.get( "https://api.github.com/repos/JakeMakesStuff/MagicCap/releases/tags/v{}" .format(tag)) r.raise_for_status() j = r.json() Version(release_id=i, version=tag, changelogs=j['body'], beta="b" in tag).save() return "Release {} successfully saved to the database.".format(tag), 200
def repo_version_add(request, template_name='repository/repo_version_add.html'): form = VersionForm(request.POST or None) username = request.session['username'] if form.is_valid(): project_name = form.cleaned_data['repository'].repo_tag print project_name archive_path = os.path.join(form.cleaned_data['archive_path'], project_name) version = get_version(archive_path) if not version: return HttpResponse( "Your configuration specifies to merge with the ref 'master' from the remote, " "but no such ref was fetched.") if Version.objects.filter(version=version[0]): return HttpResponse("already exist.") else: version_object = Version(project=project_name, version=version[0], timestamp=version[1], author=version[2], content=version[3], vernier=u'0') version_object.save() return redirect('repo_version_list') return render( request, template_name, { 'form': form, 'var6': 'active', 'username': username, 'highlight2': 'active', })
def init_db(): brand = Brand(name='Ford', brand_id=1, country='US').save() Brand(name='Ford2', brand_id=2, country='US').save() brand.save() fiesta = Car(brand=brand, name='Fiesta', car_id=1) edge = Car(brand=brand, name='Edge', car_id=2) ecosport = Car(brand=brand, name='Ecosport', car_id=3) ka = Car(brand=brand, name='Ka', car_id=4) flex_counter = 0 gas_counter = 0 for car in [fiesta, edge, ecosport, ka]: flex_counter += 1 gas_counter += 1 car.save() flex_version = Version(price=random.randrange(0, 50000), model=car, name='{name} {fuel} - {year}'.format( name=car.name, fuel='Flex', year=2011, version_id=flex_counter)) gasoline_version = Version(price=random.randrange(0, 50000), model=car, name='{name} {fuel} - {year}'.format( name=car.name, fuel='Gasolina', year=2011, version_id=gas_counter)) flex_version.save() gasoline_version.save()
def scrap_version(all_versions, model_name): result_versions = [] i = 1 for version in all_versions: print(f"Version: {i}/{len(all_versions)}") i += 1 spec_tables = [] technical = [] link = f"https://www.ultimatespecs.com/{version}" version_soup = get_body_content(link) # rendered_page = render_page(link) # version_soup = bs(rendered_page, "html.parser").body version = version_soup.find(class_="ficha_specs_main") version_name = version.find(class_="spec_title").find("span").text version_code = version_name.replace(model_name, "").strip() version_year = version_soup.find(class_="right_column").find("b").text version_year = get_year_period(version_year) specification_div = version.select( ".ficha_specs_left, .ficha_specs_right") # Getting spec sections for div in specification_div: tables = div.select("table") spec_tables += tables # Getting specifications from spec section for table in spec_tables: table_title_div = table.find(class_="spec_title") if table_title_div == None: continue table_title = clear_text(table_title_div.text).replace( f"{version_name} ", "") if table_title in titles_template.keys(): table_title = titles_template[table_title] rows = table.select("tr") technical.append(scrap_specification(rows, table_title)) version_object = Version(version_name, version_code, version_year, technical) result_versions.append(version_object) return result_versions
def construct_version_msg(): version = MY_VERSION services = 1024 + 8 + 4 + 2 + 1 # turn 'em all on timestamp = math.floor(datetime.datetime.utcnow().timestamp()) addr_recv = Address(services=services, ip=0, port=0, time=None) addr_from = Address(services=services, ip=0, port=0, time=None) nonce = make_nonce(8) user_agent = USER_AGENT # FIXME start_height = 1 relay = 1 v = Version(version, services, timestamp, addr_recv, addr_from, nonce, user_agent, start_height, relay) command = encode_command(b'version') payload = v.serialize() msg = Message(command, payload) return msg