yaml
사용하여 원하는 Kong을 선언하세요. 수동 curl
을 중지하고 이에 대한 문서를 유지하십시오.
Kong Admin API(REST, 비동기 HTTP, JSON)를 통해 리소스를 관리합니다. Admin API 자체에 권한을 추가하는 예가 포함되어 있습니다.
일부 변경 사항은 Luca Sbardella의 aio-kong과 이전 버전과 호환되지 않습니다.
make
규칙 test
, retest
, build
, install
, publish_pypi
을 추가하세요..venvs/
생성을 추가하고 make
규칙에 따라 처리됩니다.clarity
, instafail
및 spec
, dev venv에서 테스트 실행pur
, 코드에는 black
, flake8
, mypy
wheel
및 PyPis 게시용 twine
--output
추가하여 출력을 JSON 속성(스크립트용)으로 제한하거나 None
갖습니다.examples/
추가KONG_ADMIN_URL
추가하세요. 기본값은 http://localhost:8001
입니다.KONG_ADMIN_KEY
추가하세요.--admin-url
및 --admin-key
추가하여 위의 두 가지보다 우선합니다.KONG_URL
BWIC 제거--ip
BWIC 제거할 일:
PyPI에서:
pip install --upgrade kong-incubator
Python >= 3.6이 필요합니다.
KONG_ADMIN_URL
기본값은 http://localhost:8001입니다.
리소스 생성 또는 업그레이드(Mockbin의 프록시):
kong-incubator --yaml examples/mockbin.yaml
소비자를 위한 임의 key
생성합니다.
kong-incubator --key-auth mocker
key
이미 설정된 경우에만 소비자를 출력합니다.
변경된 --yaml
로 실행하면 변경된 부분만 업그레이드됩니다. 파일에서 제거된 리소스는 Kong에서 삭제되지 않습니다. Kong에서 리소스를 삭제하려면 YAML에 ensure: absent
을 추가하세요.
모든 옵션 목록을 보려면 다음 항목 없이 실행하세요.
$ kong-incubator
Usage: kong-incubator [OPTIONS]
Options:
--admin-url TEXT Kong Admin API URL.
Default: http://localhost:8001
Precedence over KONG_ADMIN_URL
--admin-key TEXT Kong Admin API apikey if required.
Default: None
Precedence over KONG_ADMIN_KEY
--key-auth TEXT Consumer to generate a key or output the existing.
--yaml FILENAME Defines one or many Kong resources by their target
state.
--output TEXT If given, restrict output to this JSON property, or
None.
By default, output everything.
--version Output version and exit.
--help Show this message and exit.
키 인증이 필요한 Kong Admin API 루프백을 생성합니다.
kong-incubator --yaml examples/kadmin.yaml
kong-incubator --key-auth root --output key
이제부터 루프백을 통해 Kong을 관리합니다(요청 헤더 apikey
확인).
export KONG_ADMIN_URL=http://localhost:8000/kadmin
export KONG_ADMIN_KEY={{thekeyabove}}
kong-incubator --yaml ..
--admin-url
또는 --admin-key
옵션을 대신 사용하거나 우선적으로 사용할 수 있습니다.
export KONG_ADMIN_URL=http://localhost:8000/kadmin
kong-incubator --admin-key={{thekeyabove}} --yaml ..
Kubernetes/OpenShift에서 8001 및 8444에 대한 경로를 제거합니다.
import json
from kong . client import Kong
async with Kong () as cli :
services = await cli . services . get_list ()
print ( json . dumps ( services , indent = 4 ))
테스트에서는 http://localhost:8001에서 Kong Admin API가 실행되고 있다고 가정합니다.
docker-compose
사용할 수 있는 경우 make dc
실행하여 kongpose/를 git 하위 모듈로 가져오고 테스트를 위해 백그라운드에서 시작할 수 있습니다. make dc_rm
사용하여 DB 볼륨을 포함하여 스택을 중지하고 제거합니다.
세 가지 다른 규칙에 대한 바로 가기로 make
실행합니다.
make test
.venvs/dev
생성하고 요구사항과 dev를 설치합니다. 실패한 테스트만 다시 실행하고, 그렇지 않은 경우 모두 다시 실행하려면 요구 사항(-dev) 설치를 건너뛰는 make retest
사용하세요. 둘 다 자신이 만든 Kong 리소스를 정리합니다.
make build
실행될 때마다 .venvs/release
다시 생성하고 거기에 빌드 도구를 설치하고 게시할 준비가 된 소스 및 휠 dist를 빌드합니다.
make install
소스 트리에서 패키지를 설치합니다. 패키지는 편집 가능하게 설치되므로 소스 편집 후 다시 설치할 필요가 없습니다.
위의 규칙을 병렬로 실행하도록 make --jobs
수 있으므로 3개의 CPU 코어에서 실행됩니다.
make pur
실행하여 요구사항(-dev)이 있는 종속성에 대한 잠긴 버전을 업데이트하십시오.
또한 black, flake8 또는 mypy의 경우 make {{tool}}
실행하세요. flake8
및 mypy
및 pytest에 대한 설정은 아직 black
과 같은 pyproject.toml
지원하지 않으므로 자체 구성 파일에 있습니다.
make clean
실행하여 .venvs/
, build/
, dist/
및 소스 트리 캐시를 제거합니다.
모든 규칙에 대한 make help
참조하세요.
all Run test, build and install (default goal)
black Reformat source code in-place
build Build source dist and wheel
clean Remove .venvs, builds, dists, and caches
dc_rm Stop and remove docker-compose env and volumes
dc Start docker-compose env on background
flake8 Run flake8 for static code analysis
install Install package from source tree, as --editable
install_pypi Install the latest PyPI release
install_test Install the latest test.pypi.org release
mypy Run mypy for static type checking
publish_pypi Publish dists to PyPI
publish_test Publish dists to test.pypi.org
pur Update requirements(-dev) for locked versions
retest Run failed tests only, if none, run all
test Run tests, installs requirements(-dev) first
uninstall Uninstall the package, regardless of its origin
HTTPS를 통해 업로드하기 위해 Twine이 포함되었습니다.
PyPI를 테스트하려면:
make publish_test
PyPI로
make publish_pypi