コンテンツにスキップ
Nibiru docsv0.9.2

Nibiru CLI

`./nibiru` バイナリのすべてのフラグ、すべてのサブコマンド。

Stable Reading time ~ 2 min Edit on GitHub

./nibiru バイナリは、すべての Nibiru プロジェクトに付属するコンパイルされたコマンドラインツールです。このバイナリは、モジュール、コントローラー、プラグインをスキャフォールディングし、マイグレーションを実行し、キャッシュを管理します。(CMS モジュールを使用すると)ページの作成と削除もできます。

_ _ _ _ _ ______ _
| \ | (_) | (_) | ____| | |
| \| |_| |__ _ _ __ _ _ | |__ _ __ __ _ _ __ ___ _____ _____ _ _| | __
| . ` | | '_ \| | '__| | | | | __| '__/ _` | '_ ` _ \ / _ \ \ /\ / / _ \| '__| |/ /
| |\ | | |_) | | | | |_| | | | | | | (_| | | | | | | __/\ V V / (_) | | | <
|_| \_|_|_.__/|_|_| \__,_| |_| |_| \__,_|_| |_| |_|\___| \_/\_/ \___/|_| |_|\_\
フラグ何をしますか
-m {name}名前が {name} の新しいモジュールを生成します。Graylog ロギングフックを接続するには -g を追加します。
-c {name}名前が {name} の新しいコントローラーとテンプレートを生成します。
-p {name} -m {module}名前が {name} の新しいプラグインをモジュール {module} 内に生成します。Graylog を追加するには -g を使用します。
-cache-clearapplication/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バイナリのバージョンとフレームワークのバージョンを印刷します。
Terminal window
# 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 を尊重します:

Terminal window
APPLICATION_ENV=production ./nibiru -mi production
APPLICATION_ENV=staging ./nibiru -mi staging

-mi の後尾の {env} 引数は、移行先を選択します。両方が一致する必要があります。

このバイナリは、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 エラーをキャッチします。