Skip to content

AWS CLI Cache v3.0.0 - Google Shell Style Guide準拠、エンタープライズ対応

Choose a tag to compare

@hacker65536 hacker65536 released this 19 Nov 13:19
· 13 commits to main since this release
552e43d

AWS CLI Cache v3.0.0 🎉

Google Shell Style Guide準拠、エンタープライズ対応の安定版リリース

主な機能

コア機能

  • ✅ 階層化キャッシュ構造: 6層の論理的な構造(profile/service/region/action/params_hash/format)
  • ✅ TTLベースの有効期限管理: 柔軟なキャッシュ期限設定
  • ✅ LRU削除: 自動的なサイズ制限管理(最大1GB、10,000ファイル)
  • ✅ 並行実行対応: アトミック書き込みとPIDベース命名で安全な並行実行
  • ✅ 整合性チェック: SHA256ハッシュによる改ざん検出(オプション)
  • ✅ 統計情報: キャッシュヒット率の分析とメトリクス表示

コード品質

  • ✅ Google Shell Style Guide完全準拠: 96/100点
  • ✅ 100%テストカバレッジ: 30/30テスト合格
  • ✅ 包括的なドキュメント: 14種類のMermaid図を含むアーキテクチャドキュメント

パフォーマンス

通常のAWS CLI:     657ms  (100%)
初回実行:          326ms  ( 50%)
2回目以降:         299ms  ( 45%)

高速化率: 約2.2倍

ドキュメント

インストール

# リポジトリをクローン
git clone https://github.com/hacker65536/aws-cli-cache.git
cd aws-cli-cache

# 実行権限を付与
chmod +x aws_cache.sh

# シェル設定ファイルに追加
echo 'source /path/to/aws_cache.sh' >> ~/.bashrc
source ~/.bashrc

基本的な使い方

# キャッシュ付きでAWS CLIを実行
aws_cached rds describe-db-clusters

# エイリアスを設定すると便利
alias aws=aws_cached
aws rds describe-db-clusters

主要コマンド

# キャッシュをクリア
./aws_cache.sh clear all

# 期限切れキャッシュを削除
./aws_cache.sh clean

# 統計情報を表示
./aws_cache.sh stats

# ヒット率を表示
./aws_cache.sh metrics

環境変数

# キャッシュディレクトリ
export AWS_CACHE_DIR="$HOME/.cache/aws-cli"

# デフォルトTTL(秒)
export AWS_CACHE_TTL=3600

# サイズ制限
export AWS_CACHE_MAX_SIZE=1073741824  # 1GB
export AWS_CACHE_MAX_FILES=10000

# 整合性チェック
export AWS_CACHE_VERIFY=true

# 統計記録
export AWS_CACHE_STATS=true

要件

必須

  • Bash 4.0+
  • AWS CLI (v1 or v2)
  • 標準Unixコマンド(find, grep, sed, awk, shasum, du)

対応OS

  • ✅ macOS
  • ✅ Linux
  • ⚠️ Windows (WSL)

テスト結果

./test_cache.sh

# 結果:
# Passed: 30/30 (100%)
# Failed: 0/30 (0%)
# ✓ All tests passed!

変更履歴

v3.0.0の主な変更点

  1. Google Shell Style Guide準拠 (96/100)

    • ファイルヘッダーの拡充
    • 関数コメントの標準化
    • テスト構文の改善
    • main関数の実装
  2. 命名規則の改善 (31箇所)

    • 真偽値フラグの明確化
    • 動詞の統一
    • 冗長な単語の削除
  3. 包括的なドキュメント

    • Mermaid図による視覚化
    • アーキテクチャドキュメントの追加
    • ユーザーガイドの充実
  4. macOS互換性の向上

    • GNU固有コマンドの代替実装
    • クロスプラットフォーム対応

セキュリティ

実装済みの対策

  • ✅ パストラバーサル対策
  • ✅ ファイル権限管理
  • ✅ インジェクション対策
  • ✅ 整合性検証(オプション)

ライセンス

MIT License

サポート


本番環境での使用準備完了 ✨

このリリースは、エンタープライズ環境での使用を想定した安定版です。