Nibiru CLI
`./nibiru` バイナリのすべてのフラグ、すべてのサブコマンド。
./nibiru バイナリは、すべての Nibiru プロジェクトに付属するコンパイルされたコマンドラインツールです。このバイナリは、モジュール、コントローラー、プラグインをスキャフォールディングし、マイグレーションを実行し、キャッシュを管理します。(CMS モジュールを使用すると)ページの作成と削除もできます。
_ _ _ _ _ ______ _ | \ | (_) | (_) | ____| | | | \| |_| |__ _ _ __ _ _ | |__ _ __ __ _ _ __ ___ _____ _____ _ _| | __ | . ` | | '_ \| | '__| | | | | __| '__/ _` | '_ ` _ \ / _ \ \ /\ / / _ \| '__| |/ / | |\ | | |_) | | | | |_| | | | | | | (_| | | | | | | __/\ V V / (_) | | | < |_| \_|_|_.__/|_|_| \__,_| |_| |_| \__,_|_| |_| |_|\___| \_/\_/ \___/|_| |_|\_\すべてのフラグ
Section titled “すべてのフラグ”| フラグ | 何をしますか |
|---|---|
-m {name} | 名前が {name} の新しいモジュールを生成します。Graylog ロギングフックを接続するには -g を追加します。 |
-c {name} | 名前が {name} の新しいコントローラーとテンプレートを生成します。 |
-p {name} -m {module} | 名前が {name} の新しいプラグインをモジュール {module} 内に生成します。Graylog を追加するには -g を使用します。 |
-cache-clear | application/view/templates_c/ と application/view/cache/ をクリアします。 |
-s | フレームワークフォルダをブートストラップし、権限を修正します。インストール後一度だけ実行してください。 |
-mi {env} | application/settings/config/database/ から {env}(ローカル、ステージング、またはプロダクション)に対して移行を実行します。 |
-mi-reset {env} | {env} の移行監査テーブルを削除します。破壊的です。 |
-mi-reset-file {file} {env} | 単一の移行ファイルが {env} で実行されたことを忘却します。 |
-ws {URL} -wp {PORT} | {URL}:{PORT}(対話型 REPL)に WebSocket に接続します。 |
-new-cms-page {name} | (CMS モジュールのみ)既存のテンプレートにバインドされた新しい CMS ページを作成します。 |
-delete-cms-page {name} | (CMS モジュールのみ)CMS ページを削除します。 |
-h | ヘルプテキストを表示します。 |
-v / -version | バイナリのバージョンとフレームワークのバージョンを印刷します。 |
実際に使う日常コマンド
Section titled “実際に使う日常コマンド”# create a controller + view./nibiru -c products
# create a module with Graylog hooks./nibiru -m billing -g
# create a plugin inside that module./nibiru -p invoices -m billing
# run migrations./nibiru -mi local
# clear the Smarty cache after a deploy./nibiru -cache-clear
# show framework version./nibiru -vほとんどのコマンドは APPLICATION_ENV を尊重します:
APPLICATION_ENV=production ./nibiru -mi productionAPPLICATION_ENV=staging ./nibiru -mi staging-mi の後尾の {env} 引数は、移行先を選択します。両方が一致する必要があります。
CLIが構築されている技術
Section titled “CLIが構築されている技術”このバイナリは、MySQL、PostgreSQL(libpq)およびODBCクライアントライブラリにリンクされたコンパイル済みのC++実行ファイルです。条件付きコンパイルにより、libpqなしでビルドされたバイナリも引き続きMySQLのみのデプロイメントで動作します — ハードな依存関係ではなく、優雅な劣化です。
プロジェクトルートの index.php にバイナリがあります。必要であれば実行可能にするには chmod +x nibiru を実行します。
GitHub Actionsのシンプルなステップ:
- name: Run migrations run: | APPLICATION_ENV=production ./nibiru -mi production env: DB_HOST: ${{ secrets.DB_HOST }} DB_USER: ${{ secrets.DB_USER }} DB_PASS: ${{ secrets.DB_PASS }}CLI がマイグレーションに失敗すると非ゼロ終了するので、CI は SQL エラーをキャッチします。