このプロジェクトについて
ctfd-setupは、CTFdにネイティブの設定ファイルサポートとセットアップAPIがないという問題に対処するために設計されたCLIユーティリティです。開発者はCTFdのセットアップ設定をバージョン管理できるようになり、デプロイを再現可能にし、デバッグやインフラストラクチャの複製のために共有可能にします。
このツールは、YAML設定ファイル、CLIフラグ、環境変数からCTFdインスタンスをプロビジョニングします。主な機能は次のとおりです。
- YAML設定: 外観設定、管理者資格情報、モード、カスタムページをバージョン管理されたYAMLファイルで定義します。このツールは、テスト中や災害復旧時の再デプロイを容易にするために、このファイルのバージョン管理を推奨しています。
- スキーマ生成: `ctfd-setup schema`を使用してYAML検証用のJSON Schemaを生成します。VSCodeや他のエディタのIDEサポートに対応しています。
- GitHub Actions統合: `ctfer-io/ctfd-setup`アクションを使用して、CI/CDワークフローでCTFdセットアップを自動化します。
- Drone CI統合: Drone CIパイプラインで`ctferio/ctfd-setup` Dockerイメージを使用してデプロイします。
- Docker/Kubernetesサポート: DockerおよびKubernetesデプロイメントで初期コンテナとして使用できます。
- カスタムページ: CLIやCI統合では利用できない機能であり、YAML設定を介してカスタムページ(インデックスページなど)をデプロイします。
- セキュリティ: 管理者パスワードなどの機密資格情報をコミットしないように、`from_env`オブジェクトをサポートしています。
このツールはCTFd APIの上に構築されており、フロントエンドが呼び出すセットアップ機能をマッピングします。信頼性が高くバージョン管理されたインフラストラクチャ管理を必要とする、Capture The Flag競技を運営するチーム向けに設計されています。
Goで構築されたこのプロジェクトには、CodeQL分析、OpenSSF Scorecard、SLSA Level 3のサプライチェーンセキュリティバッジが含まれており、セキュリティとベストプラクティスへの注力を示しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.