Skip to content

Changelog

全ての重要な変更はこのファイルに記録されます。

書き方はKeep a Changelogに基づきます。
バージョンはSemantic Versioningに従います。

?.?.? - unreleased

Features

  • pocket django deployでデプロイ + マイグレーションなどの管理コマンド実行。実行内容が決まらないためUnreleases。
  • Neon接続時のIP制限
  • RDSの利用
  • 環境ごとに異なるファイルを返すurlsの作成(robots.txtfavicon.ico用)
  • pocket deployでデプロイ(以下全てpocket.tomlに設定がある場合のみ)
    • EFSの作成
    • Lambdaに関わるCloudFormation作成
      • SecurityGroupIngress(LambdaからEFSへのアクセス権限)の作成
    • SQSを利用したdjango managementコマンドのバッチ処理
      • Queue, Dead letter queue, EventSourceMappingの作成
  • pocket removeでデプロイした環境を出来る限り削除し、削除できないものは表示

0.1.1 - 2024-10-16

Full Changelog: https://github.com/worgue/magic-pocket/compare/0.1.0...0.1.1

Bug Fixes

  • spa用のリソース作成時にリダイレクトするためのリソースが作られないバグを修正

0.1.0 - 2024-10-11

Dependencies

  • click>=8.1.7
  • tomli>=1.1.0 ; python_version < '3.11'
  • mergedeep>=1.3.4
  • pydantic>=2.5.3
  • pydantic-settings>=2.1.0
  • boto3>=1.34.28
  • rich>=13.7.0
  • deepdiff>=6.7.1
  • pyyaml>=6.0.1
  • python-on-whales>=0.68.0
  • jinja2>=3.1.3
  • awslambdaric>=2.0.10
  • apig_wsgi>=2.18.0
  • django-storages>=1.14.2,!=1.14.3

Features

  • pocket statusで環境の作成状況を確認
  • pocket deployでデプロイ
    • NeonへのDB作成
    • SecretsManagerへのNeon DBの接続情報登録
    • ストレージ用にS3を作成し権限を設定
    • コンテナイメージを作成しECRへアップロード
    • フロントエンドSPAのビルドデータをアップロードするS3を作成
    • CF: Lambdaに関わるCloudFormationを登録・更新
      • LambdaのIAM Role, SecurityGroup, Function
      • API Gateway の LogGroup, Api, ApiGatewayManagedOverrides, Route, Integration, lambda Permission, Certificate, DomainName, RecordSet, ApiMapping
      • API Gatewayのhost名のoutput
    • CF: SPAに関わるCloudFormationを登録・更新
      • CloudFrontのOriginAccessControl, Certificate, CloudFrontFunction, Distribution, RecordSet
  • settings.pyでの情報取得
    • AWS SecretsManagerから情報を取得(1)
    • pocket.tomlからdjangoのSTORAGES, CACHESを取得
    • CF: CloudFormationのoutputからdjangoのALLOWED_HOSTSを取得
  • デプロイ環境ごとのdjango settings登録
  • pocket django manage COMMAND ARGS で管理コマンドを実行
  • pocket django storage upload STORAGE でローカルのFileSystemStorageから対象ステージのS3Boto3Storageへデータをsync
  • pocket resource awscontainer statusでLambdaの作成状況を確認
  • pocket resource awscontainer secretsmanager listでSecretsManagerの値を確認
  • pocket resource awscontainer yamlでCloudFormation用のyaml ファイルを確認
  • pocket resource awscontainer yaml-diffでCloudFormation用のyamlファイルの差分を確認
  • pocket resource neon statusでNeonの作成状況を確認
  • pocket resource s3 statusでS3バケットの作成状況を確認
  • pocket resource spa statusでspaアップロード先S3バケットの作成状況を確認