-
Notifications
You must be signed in to change notification settings - Fork 0
docs(readme): move details into docs #40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| # Authentication | ||
|
|
||
| New to Volcano? Create an account from the CLI: | ||
|
|
||
| ```bash | ||
| volcano signup | ||
| ``` | ||
|
|
||
| `volcano signup` prefills your email from `git config --global user.email` | ||
| when available (press Enter to accept, or type a different address), then | ||
| opens Volcano's web signup flow in your browser. Once you finish in the | ||
| browser, the CLI completes the device-authorization handshake and saves your | ||
| credentials to `~/.volcano/config.json`, so a single command signs you up | ||
| and logs you in. | ||
|
|
||
| Already have an account? Authenticate with `volcano login`: | ||
|
|
||
| ```bash | ||
| # Browser-based login (default) | ||
| volcano login | ||
|
|
||
| # Token-based login (for CI/CD) | ||
| volcano login --token pk-xxxxxxxxxx | ||
|
|
||
| # Or skip login entirely with an environment variable | ||
| export VOLCANO_TOKEN=pk-xxxxxxxxxx | ||
| ``` | ||
|
|
||
| Log out at any time: | ||
|
|
||
| ```bash | ||
| volcano logout | ||
| ``` | ||
|
|
||
| This deletes local credentials but does not revoke the token. Revoke it in the | ||
| Volcano dashboard to fully cut off access. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| # Installation | ||
|
|
||
| Install the latest published release: | ||
|
|
||
| ```bash | ||
| curl -fsSL https://github.com/Kong/volcano-cli/releases/latest/download/install.sh | bash | ||
| ``` | ||
|
|
||
| Or install from npm: | ||
|
|
||
| ```bash | ||
| npm install -g @volcano.dev/cli | ||
| volcano --help | ||
| ``` | ||
|
|
||
| The npm package is a thin wrapper: its `postinstall` step downloads the | ||
| platform-specific binary from the matching GitHub Release and verifies it | ||
| against that release's `SHA256SUMS`. Set `VOLCANO_SKIP_DOWNLOAD=1` to skip the | ||
| download; the binary is fetched on first run instead. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| # Project configuration | ||
|
|
||
| `volcano config deploy` uploads a declarative manifest | ||
| (`volcano/volcano-config.yaml` or `./volcano-config.yaml`) to Volcano, which | ||
| validates and applies the full project configuration: | ||
|
|
||
| - Project settings | ||
| - Database requirements | ||
| - Variables | ||
| - Buckets and policies | ||
| - Realtime | ||
| - Auth configuration, including providers, email, templates, and managed pages | ||
| - Function visibility and schedulers | ||
| - Frontend custom domains | ||
|
|
||
| The same manifest applies to local development and cloud projects. | ||
| `volcano config pull` downloads the current configuration as a canonical | ||
| manifest rendered by Volcano. | ||
|
|
||
| ```yaml | ||
| version: 1 | ||
| variables: | ||
| - name: STRIPE_SECRET_KEY | ||
| value: ${STRIPE_SECRET_KEY} # interpolated from the CLI environment | ||
| realtime: | ||
| enabled: true | ||
| functions: | ||
| - name: hello | ||
| public: false | ||
| schedulers: | ||
| - name: refresh-cache # required, unique per function (the reconcile key) | ||
| cron: "*/5 * * * *" | ||
| enabled: true | ||
| payload: { job: refresh } | ||
| ``` | ||
|
|
||
| Key semantics: | ||
|
|
||
| - Declared config sections are the source of truth. Variables, bucket policies, | ||
| OAuth providers, email templates, and function schedulers are fully synced | ||
| when declared: entries absent from the manifest are deleted. Omitted sections | ||
| and fields keep their existing values. | ||
| - Functions, frontends, databases, and buckets are never created or deleted | ||
| through the manifest; only their configuration is updated. A manifest entry | ||
| for a resource that does not exist is skipped with a warning. A deployed | ||
| resource missing from a declared section is reported too. | ||
| - `${ENV_VAR}` references are interpolated before upload. A reference to an | ||
| unset variable is an error, and `$$` produces a literal `$`. | ||
| - `volcano config deploy --dry-run` prints the projected actions without | ||
| changing anything. Validation failures exit non-zero with Volcano's error | ||
| list, and nothing is applied. | ||
| - Write-only secrets, such as SMTP passwords, OAuth client secrets, and TLS | ||
| material, are omitted from `config pull` exports. Keep them in your | ||
| environment and set them via `${ENV_VAR}` interpolation. | ||
|
|
||
| Behavior changes from older CLI releases: | ||
|
|
||
| - Buckets are no longer auto-created. | ||
| - An omitted `policies` key now leaves a bucket's policies untouched; older | ||
| releases deleted them all. | ||
| - Schedulers are now deleted by omission within a declared `schedulers` list. | ||
| - The scheduler `regions` field is no longer supported. Placement is managed by | ||
| Volcano. |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.