Size: a a a

2020 December 02

АП

Агент Печенька... in Python Flask
Tishka17
Хм, у тебя компиляция схемы свалилась
Воспроизвел?
источник

T

Tishka17 in Python Flask
Нет, чай пью
источник

T

Tishka17 in Python Flask
Агент Печенька
import yaml
import json
schema = json.load(open('schema.json'))
schema['$schema']
>>> 'http://json-schema.org/draft-04/schema#'
swagger = yaml.safe_load(open('requirements/swagger.yml'))
swagger['openapi']
>>> '3.0.1'
validate(instance=swagger, schema=schema)
from jsonschema import validate
validate(instance=swagger, schema=schema)
   return _compile(pattern, flags).search(string)
TypeError: expected string or bytes-like object

---------------------------

ajv validate --all-errors -s schema.json -d requirements/swagger.yml
requirements/swagger.yml valid
А покажи твой ямд
источник

T

Tishka17 in Python Flask
Схема у меня парсится
источник

T

Tishka17 in Python Flask
Агент Печенька
Воспроизвел?
import requests
import jsonschema

x = requests.get("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v3.0/schema.json").json()
c = requests.get("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.json").json()

jsonschema.validate(instance=c, schema=x)


Все работает
источник

GB

Gleb B in Python Flask
Господа, а как прописать айпишник контейнер а с редисом в конфиг флуска? через глобальную переменную какую-нибудь? как примерно выглядит композ для него, покажет кто, мб?
источник

АП

Агент Печенька... in Python Flask
Tishka17
А покажи твой ямд
openapi: "3.0.1"
x-explorer-enabled: true
info:
 title: "Foo"
 version: "1.0.0"


servers:
 - url: "https://example.com"
paths:
 /foo:
   get:
     responses:
       200:
         description: "200 response"
         content:
           application/json:
             schema:
               $ref: "#/components/schemas/MySchemaRef"

components:
 schemas:
   MySchemaRef:
     title: "result"
     type: object
Любая схема с рефом.
источник

T

Tishka17 in Python Flask
Если взять спеку по 3.1 оформленную, то валидация падает
источник

АП

Агент Печенька... in Python Flask
источник

АП

Агент Печенька... in Python Flask
Gleb B
Господа, а как прописать айпишник контейнер а с редисом в конфиг флуска? через глобальную переменную какую-нибудь? как примерно выглядит композ для него, покажет кто, мб?
app.config же.
источник

T

Tishka17 in Python Flask
Агент Печенька
openapi: "3.0.1"
x-explorer-enabled: true
info:
 title: "Foo"
 version: "1.0.0"


servers:
 - url: "https://example.com"
paths:
 /foo:
   get:
     responses:
       200:
         description: "200 response"
         content:
           application/json:
             schema:
               $ref: "#/components/schemas/MySchemaRef"

components:
 schemas:
   MySchemaRef:
     title: "result"
     type: object
Любая схема с рефом.
О, свалилось
источник

T

Tishka17 in Python Flask
File "/usr/lib/python3.8/re.py", line 201, in search
   return _compile(pattern, flags).search(string)
TypeError: expected string or bytes-like object
источник

АП

Агент Печенька... in Python Flask
Добро пожаловать в клуб.
источник

V

Vladi in Python Flask
Gleb B
Господа, а как прописать айпишник контейнер а с редисом в конфиг флуска? через глобальную переменную какую-нибудь? как примерно выглядит композ для него, покажет кто, мб?
любят в бридж редис и фласк через докеркомпоуз
источник

GB

Gleb B in Python Flask
ну айпишник контейнера с редиской мне выдает же докер, либо я его сам задаю, но что-то непохоже на бест практис такое решение)
источник

АП

Агент Печенька... in Python Flask
Gleb B
ну айпишник контейнера с редиской мне выдает же докер, либо я его сам задаю, но что-то непохоже на бест практис такое решение)
Так тебе не по ip а по хосту нужно. А в композе хост = имя сервиса.
источник

GB

Gleb B in Python Flask
вот не хватает мне скилла сразу вкурить как сделать это) В конфиг фласк я притягиваю переменную докера через get_env?
источник

АП

Агент Печенька... in Python Flask
В конфиге фласка у тебя хардкод хоста редиса, так как ты его знаешь.
источник

GB

Gleb B in Python Flask
дак что туда прописать, я же хост редиса не знаю, так как он в другом контейнере, я чего-то не догоняю, вестимо)
источник

T

Tishka17 in Python Flask
Агент Печенька
openapi: "3.0.1"
x-explorer-enabled: true
info:
 title: "Foo"
 version: "1.0.0"


servers:
 - url: "https://example.com"
paths:
 /foo:
   get:
     responses:
       200:
         description: "200 response"
         content:
           application/json:
             schema:
               $ref: "#/components/schemas/MySchemaRef"

components:
 schemas:
   MySchemaRef:
     title: "result"
     type: object
Любая схема с рефом.
Валится из-за ямла
источник