@oyster-lib/cli 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,107 @@
1
+ # Oyster CLI v2
2
+
3
+ Oyster アプリケーションの **ログイン**・**デプロイ**・**マイグレーション** を行う CLI ツール。
4
+
5
+ ## セットアップ
6
+
7
+ ```bash
8
+ cd oyster-cli
9
+ pnpm install
10
+
11
+ # v2 のみビルド(bun が必要)
12
+ pnpm build:v2
13
+ ```
14
+
15
+ ## コマンド
16
+
17
+ ### `oyster login`
18
+
19
+ Oyster サーバーに認証して API キーを取得・保存する。
20
+
21
+ ```bash
22
+ oyster login
23
+ oyster login --server https://your-server.example.com
24
+ ```
25
+
26
+ 認証情報は `~/.config/oyster/config.json` に保存される(ファイル権限 600)。
27
+
28
+ 環境変数でも指定可能:
29
+ - `OYSTER_API_KEY` - API キー
30
+ - `OYSTER_SERVER_URL` - サーバー URL
31
+
32
+ ### `oyster deploy`
33
+
34
+ フロントエンド・バックエンドをデプロイする。
35
+
36
+ ```bash
37
+ # 両方デプロイ(対話でドメイン・アプリを選択)
38
+ oyster deploy
39
+
40
+ # フロントエンドのみ
41
+ oyster deploy --frontend
42
+
43
+ # バックエンドのみ
44
+ oyster deploy --backend
45
+
46
+ # ステージング環境にデプロイ
47
+ oyster deploy --staging
48
+
49
+ # ドメイン・アプリを直接指定
50
+ oyster deploy -d craif -a CRM
51
+
52
+ # 組み合わせ例: craif ドメインの CRM のフロントエンドだけ staging にデプロイ
53
+ oyster deploy -d craif -a CRM -f -s
54
+ ```
55
+
56
+ | オプション | 短縮 | 説明 |
57
+ |---|---|---|
58
+ | `--frontend` | `-f` | フロントエンドのみ |
59
+ | `--backend` | `-b` | バックエンドのみ |
60
+ | `--staging` | `-s` | ステージング環境 |
61
+ | `--domain <name>` | `-d` | ドメイン名を直接指定 |
62
+ | `--app <name>` | `-a` | アプリ名を直接指定 |
63
+
64
+ ### `oyster migrate`
65
+
66
+ データベースマイグレーション(`prisma migrate deploy`)を実行する。
67
+
68
+ ```bash
69
+ oyster migrate
70
+ oyster migrate -d craif -a CRM
71
+ oyster migrate --staging
72
+ ```
73
+
74
+ | オプション | 短縮 | 説明 |
75
+ |---|---|---|
76
+ | `--staging` | `-s` | ステージング環境 |
77
+ | `--domain <name>` | `-d` | ドメイン名を直接指定 |
78
+ | `--app <name>` | `-a` | アプリ名を直接指定 |
79
+
80
+ ## アーキテクチャ
81
+
82
+ ```
83
+ oyster-cli/packages/v2/
84
+ ├── src/
85
+ │ ├── index.ts # エントリポイント
86
+ │ ├── config.ts # 設定ファイル管理 (~/.config/oyster/config.json)
87
+ │ ├── commands/
88
+ │ │ ├── login.ts # oyster login
89
+ │ │ ├── deploy.ts # oyster deploy
90
+ │ │ └── migrate.ts # oyster migrate
91
+ │ └── utils/
92
+ │ ├── http.ts # 認証付き HTTP クライアント
93
+ │ └── input.ts # 対話的なドメイン・アプリ選択
94
+ ├── package.json
95
+ ├── tsconfig.json
96
+ └── README.md
97
+ ```
98
+
99
+ ### サーバー側 API エンドポイント
100
+
101
+ | CLI コマンド | API エンドポイント | メソッド |
102
+ |---|---|---|
103
+ | `oyster login` | `/api/v1/cli/login` | POST |
104
+ | `oyster deploy` | `/api/v1/cli/deploy` | POST |
105
+ | `oyster migrate` | `/api/v1/cli/migrate` | POST |
106
+ | (ドメイン一覧) | `/api/v1/cli/domains` | GET |
107
+ | (アプリ一覧) | `/api/v1/cli/apps` | GET |