Skip to content

Commit 6e04ded

Browse files
committed
docs: add shoes-tester documentation
Add comprehensive documentation for the shoes-tester CLI tool in the developer guide. This tool allows developers to test shoes provider implementations without running the full myshoes server. prompt: @docs/03_how-to-develop-shoes.md に、shoes-testerについて追加しておいてください ---- `docs/03_how-to-develop-shoes.md` に shoes-tester のセクションを追加しました。 追加した内容: - shoes-tester の概要(shoes provider をテストするための CLI ツール) - ビルド方法 - 使用方法(add/delete コマンド) - 各コマンドのオプション詳細 shoes-tester は myshoes サーバーを起動せずに AddInstance と DeleteInstance の動作を確認できるため、shoes provider の開発時に便利です。
1 parent 08d64f7 commit 6e04ded

File tree

1 file changed

+73
-1
lines changed

1 file changed

+73
-1
lines changed

docs/03_how-to-develop-shoes.md

Lines changed: 73 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,76 @@ myshoes defined some machine type. you need to map machine spec for your resourc
4646
- xlarge
4747
- 2xlarge
4848
- 3xlarge
49-
- 4xlarge
49+
- 4xlarge
50+
51+
## Testing shoes provider
52+
53+
`shoes-tester` is a CLI tool for testing shoes provider without running myshoes server.
54+
55+
### Build
56+
57+
```bash
58+
go build -o shoes-tester ./cmd/shoes-tester
59+
```
60+
61+
### Usage
62+
63+
#### Add instance
64+
65+
Simple mode (with setup script):
66+
67+
```bash
68+
./shoes-tester add \
69+
--plugin ./path/to/your-shoes-provider \
70+
--runner-name test-runner \
71+
--resource-type nano \
72+
--labels "label1,label2" \
73+
--setup-script "#!/bin/bash\necho 'setup'"
74+
```
75+
76+
Script generation mode (generate setup script automatically):
77+
78+
```bash
79+
./shoes-tester add \
80+
--plugin ./path/to/your-shoes-provider \
81+
--runner-name test-runner \
82+
--resource-type nano \
83+
--generate-script \
84+
--scope owner/repo \
85+
--github-app-id 123456 \
86+
--github-private-key-path /path/to/key.pem \
87+
--runner-version latest
88+
```
89+
90+
#### Delete instance
91+
92+
```bash
93+
./shoes-tester delete \
94+
--plugin ./path/to/your-shoes-provider \
95+
--cloud-id your-cloud-id \
96+
--labels "label1,label2"
97+
```
98+
99+
#### Options
100+
101+
Add command:
102+
- `--plugin`: Path to shoes-provider binary (required)
103+
- `--runner-name`: Runner name (required)
104+
- `--resource-type`: Resource type (default: nano)
105+
- `--labels`: Comma-separated labels
106+
- `--setup-script`: Setup script (simple mode)
107+
- `--generate-script`: Generate setup script automatically (script generation mode)
108+
- `--scope`: Repository (owner/repo) or Organization (script generation mode)
109+
- `--github-app-id`: GitHub App ID (script generation mode)
110+
- `--github-private-key-path`: GitHub App private key path (script generation mode)
111+
- `--runner-version`: Runner version (default: latest, script generation mode)
112+
- `--runner-user`: Runner user (default: runner, script generation mode)
113+
- `--runner-base-directory`: Runner base directory (default: /tmp, script generation mode)
114+
- `--github-url`: GitHub Enterprise Server URL (script generation mode)
115+
- `--json`: Output in JSON format
116+
117+
Delete command:
118+
- `--plugin`: Path to shoes-provider binary (required)
119+
- `--cloud-id`: Cloud ID (required)
120+
- `--labels`: Comma-separated labels
121+
- `--json`: Output in JSON format

0 commit comments

Comments
 (0)