@@ -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