Pydantic Settings で CLI アプリケーションを作成する
Pydantic Settingsを使用してCLIアプリケーションを作成する方法について学習した内容を説明します。特にリスト、辞書型、Enum型のオプション設定方法や、サブコマンドの実装方法、Booleanフラグの扱い方など、具体的な実装例を通して解説していきます。
Pydantic Settingsを使用してCLIアプリケーションを作成する方法について学習した内容を説明します。特にリスト、辞書型、Enum型のオプション設定方法や、サブコマンドの実装方法、Booleanフラグの扱い方など、具体的な実装例を通して解説していきます。
Pythonのデータバリデーションツールpydanticの基本的な使い方について説明します。dict型データの扱いにくさを解消するため、pydanticのデータクラスを使用して型安全な実装方法を、具体的なコード例を交えながら紹介していきます。
boto3 を stub する方法について調査すると、ネットには stubber と unittest の組み合わせを使った方法が多く紹介されていました。しかし stubber と pytest の mock を組み合わせたは記事が少ないように感じたため、今回は boto3 を pytest の monkeypatch で stub する方法を備忘録として残します。
Python で GET リクエストを実行する際、ページネーションの処理が必要な場合があります。AWS SDK のようなライブラリは Paginator クラスなどの実装が用意されていますが、REST API を使用するために HTTP クライアントを使う場合は、自分でページネーションの実装を行う必要があります。今回はaiohttpを使ってページネーションの処理を書いてみます。
GitHubを使用している組織が、CI/CDのデータを収集したりするためにGitHubのREST APIを使うことがあると思います。このとき言語としてはPythonが選ばれることが多いと思い、今回はPython + GitHub AppsでAPIを実行します。
awsでデータの一覧を取得するときnext tokenやcursorを指定したforループでページごとにデータを取得することがあると思います。しかしaws sdkにはpaginationをいい感じに扱える関数があるので、これを利用すると簡単にデータを取得できます。