Skip to main content

rb_schemas 사용 설명서

rb_schemas는 프로젝트 공통 Pydantic 스키마와 Flow Manager 연동 타입을 제공하는 패키지입니다.

1. 제공 구성

  • 기본 스키마 (base.py)
    • Response_ReturnValuePD
    • NJointfPD, NInputfPD, Vec3fPD 등 공용 모델
  • Flow Manager 연계 타입 (sdk.py)
    • FlowManagerArgs
  • 스키마 유틸 (utility.py)
    • Pick(base, *include)
    • Omit(base, *omit)
  • FBS 기반 자동 생성 모델
    • rb_schemas.fbs_models.*
    • 클래스명은 ...PD 접미사 규칙

2. FlowManagerArgs 용도

FlowManagerArgs는 SDK 함수에서 Flow Manager 실행 컨텍스트를 받을 때 사용합니다.

from rb_schemas.sdk import FlowManagerArgs

def my_step_handler(flow_manager_args: FlowManagerArgs | None = None):
    # step 로직 수행
    if flow_manager_args is not None:
        flow_manager_args.done()

3. Pick/Omit 사용 예제

from pydantic import BaseModel
from rb_schemas.utility import Omit, Pick

class UserPD(BaseModel):
    user_id: str
    email: str
    password: str

UserPublicPD = Omit(UserPD, "password")
UserOnlyIdPD = Pick(UserPD, "user_id")

4. FBS 모델 사용 예제

# 예: 자동 생성된 모델 import
from rb_schemas.fbs_models.nexus.v1.deploy_models import Response_Deploy_ProgressPD

payload = Response_Deploy_ProgressPD(
    sw_name="example",
    ip="127.0.0.1",
    mode="dev",
    tag="v1",
    percentage=80,
    service_name="manipulate",
    result="success",
)

5. 참고

  • FBS 기반 모델은 backend.flatc 실행 시 자동 재생성됩니다.
  • 생성 모델은 snake_case 필드와 alias(원본 CamelCase)를 함께 가질 수 있습니다.

Metadata

Release files for rainbow-rb-schemas 0.10.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rainbow-rb-schemas 0.10.1
File Size Uploaded Provenance
rainbow_rb_schemas-0.10.1.tar.gz 54.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for rainbow-rb-schemas 0.10.1
File Interpreter ABI Platform
rainbow_rb_schemas-0.10.1-py3-none-any.whl Python 3 none any Details

Total release size: 147.2 kB

Release files / rainbow_rb_schemas-0.10.1.tar.gz

Download URL rainbow_rb_schemas-0.10.1.tar.gz
Size 54.4 kB
Tags Source
SHA-256 checksum
How to use checksums
c561e7580de333b8b50d9dc5c50379bbc62391c02092b35b609b188d155983da
BLAKE2b-256 checksum
How to use checksums
2b7545d55291442cd7913e38ac86c946f297ccbee7fc706a55184e4b2b02a9b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / rainbow_rb_schemas-0.10.1-py3-none-any.whl

Download URL rainbow_rb_schemas-0.10.1-py3-none-any.whl
Size 92.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ac9c9160045a4ecd69ca73c3e66af2ba3ed8f6425e23d0270f735adc2c2e58e6
BLAKE2b-256 checksum
How to use checksums
37132296e0ddbd497c10196befcd448a7b35b2c06560efd230a975a3e0aec422
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for rainbow-rb-schemas 0.10.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.10.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page