simplecloud 0.0.1-beta.8 → 0.0.1-beta.81

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 CHANGED
@@ -67,6 +67,16 @@ node dist/cli.js --help
67
67
  node dist/cli.js start group test
68
68
  ```
69
69
 
70
+ To test unpublished manifest changes from a local checkout:
71
+
72
+ ```bash
73
+ SC_MANIFEST_DIR=../simplecloud-manifest \
74
+ bun dist/cli.js install service postgresql --yes
75
+ ```
76
+
77
+ `SC_MANIFEST_DIR` makes both `components.yaml` and referenced service files load
78
+ from that directory instead of the published GitHub manifest.
79
+
70
80
  ### Local Development
71
81
 
72
82
  **Option 1: Shell Alias (Recommended - No Conflicts)**
@@ -74,7 +84,7 @@ node dist/cli.js start group test
74
84
  Create a local `scl` alias that points to your development build:
75
85
 
76
86
  ```bash
77
- bun run local:setup # Creates 'scl' alias in ~/.zshrc
87
+ bun run local:setup # Creates 'scl' and 'scld' aliases in ~/.zshrc
78
88
  source ~/.zshrc # Reload shell config
79
89
  ```
80
90
 
@@ -87,6 +97,43 @@ scl start group mygroup
87
97
 
88
98
  **Pro Tip**: Run `bun run dev` in one terminal and use `scl` commands in another terminal for seamless development with auto-rebuilding!
89
99
 
100
+ To test the current build in a fresh Linux environment without Java or Screen,
101
+ use the disposable Docker runner:
102
+
103
+ ```bash
104
+ scld setup
105
+ scld server list
106
+ scld network list
107
+ scld --help
108
+ ```
109
+
110
+ To reuse your current SimpleCloud login while keeping the rest of the sandbox
111
+ clean, add `--host-session`:
112
+
113
+ ```bash
114
+ scld --host-session network list
115
+ scld --host-session setup
116
+ scld --host-session shell
117
+ ```
118
+
119
+ This copies only `~/.config/simplecloud/auth.json` into the disposable
120
+ container. Host contexts and installation paths are intentionally not shared,
121
+ and changes to the session inside the container do not modify the host file.
122
+
123
+ The project is mounted read-only into an official Bun container. Credentials,
124
+ Java, and installed SimpleCloud files are removed with the container when the
125
+ command exits. A Linux Bun dependency volume is reused between runs and only
126
+ refreshes when `package.json` or `bun.lock` changes. Every CLI command is
127
+ supported. Use `scld shell` for a longer interactive session; the `scl` command
128
+ is available inside it, so authentication and installation state remain
129
+ available until you exit that shell.
130
+
131
+ Without the local alias, run the same sandbox through Bun:
132
+
133
+ ```bash
134
+ bun run scld -- setup
135
+ ```
136
+
90
137
  **Option 2: npm link (Development Symlink)**
91
138
 
92
139
  Creates symlinks to global npm location (uses same command names):
@@ -112,6 +159,55 @@ node dist/cli.js start group mygroup
112
159
  bunx swagger-typescript-api generate -p swagger.yaml -o src/lib/generated -n simplecloud-api.ts --sort-types --single-http-client --clean-output
113
160
  ```
114
161
 
162
+ ## Installing services during setup
163
+
164
+ Manifest services are installed into the hidden `.services` directory inside
165
+ the SimpleCloud installation:
166
+
167
+ ```bash
168
+ simplecloud setup --yes --service postgresql
169
+ ```
170
+
171
+ Repeat `--service` to create more instances. Instances receive stable,
172
+ collision-free directory names and incremented default ports:
173
+
174
+ ```bash
175
+ simplecloud setup --yes \
176
+ --service postgresql \
177
+ --service 'postgresql@players?database=players'
178
+ ```
179
+
180
+ Service dependencies are resolved automatically. Selecting a database installs
181
+ Docker when needed, verifies Docker Compose, renders all manifest files, and
182
+ starts the service. Docker itself is a host installable and does not receive a
183
+ service directory. Database storage is always backed by a named Docker volume.
184
+
185
+ Services can also be added to an existing SimpleCloud installation through the
186
+ existing `install` command:
187
+
188
+ ```bash
189
+ simplecloud install service postgresql
190
+ simplecloud install service postgresql \
191
+ --instance players \
192
+ --set database=players \
193
+ --set port=5433
194
+ ```
195
+
196
+ The command uses the active SimpleCloud context, installs missing host
197
+ dependencies such as Docker, writes the instance to `.services/<instance>`,
198
+ and starts it. Use `--dry-run` to validate and inspect the plan without
199
+ changing the installation.
200
+
201
+ Installed service instances use the same lifecycle syntax as components:
202
+
203
+ ```bash
204
+ simplecloud start postgresql
205
+ simplecloud stop postgresql
206
+ ```
207
+
208
+ Running `simplecloud start` or `simplecloud stop` without targets includes all
209
+ installed components and services. Docker container names include the active
210
+ network slug, for example `my-network-postgresql-database-1`.
115
211
 
116
212
  ## Publishing to npm
117
213