-
Notifications
You must be signed in to change notification settings - Fork 0
feat: Enhance API requests with additional parameters for cloud integration #3
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
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
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 |
|---|---|---|
| @@ -1,79 +1,75 @@ | ||
| # zcp 0.0.7 Release Notes | ||
| # zcp 0.0.8 Release Notes | ||
|
|
||
| ## What's New | ||
|
|
||
| ### 8 new commands | ||
| ### VPC create fixed | ||
|
|
||
| | Command | Description | | ||
| | --------------------------- | ---------------------------------------------------------------------------------------------- | | ||
| | `zcp region list` | List available regions (replaces `zone list`) | | ||
| | `zcp profile-info` | User profile, company details, time settings, API access, activity logs (2FA status via `get`) | | ||
| | `zcp vm-backup list/create` | VM backup operations | | ||
| | `zcp cloud-provider list` | List available cloud providers | | ||
| | `zcp server list` | List available servers | | ||
| | `zcp currency list` | List available currencies | | ||
| | `zcp billing-cycle list` | List available billing cycles | | ||
| | `zcp storage-category list` | List available storage categories | | ||
| VPC creation now works with the correct payload structure: | ||
|
|
||
| ### Dead code removed | ||
| ```bash | ||
| zcp vpc create \ | ||
| --name my-vpc \ | ||
| --cloud-provider nimbo \ | ||
| --region noida \ | ||
| --project default-124 \ | ||
| --plan vpc-1 \ | ||
| --network-address 10.1.0.1 \ | ||
| --size 16 \ | ||
| --billing-cycle hourly \ | ||
| --storage-category nvme | ||
| ``` | ||
|
ditahkk marked this conversation as resolved.
|
||
|
|
||
| Key: `--network-address` is just the IP (not CIDR notation), `--size` is the mask separately. | ||
|
|
||
| 11 commands and 13 API packages that still pointed at old `/restapi/` endpoints have been removed. These commands were broken since v0.0.6 and would return 403 errors: | ||
| ### ACL list creation fixed | ||
|
|
||
| `zone`, `offering`, `resource`, `host`, `cost`, `usage`, `internal-lb`, `snapshot-policy`, `security-group`, `tag`, `admin` | ||
| `zcp vpc acl-create` and `zcp acl create` now correctly create ACL lists: | ||
|
|
||
| Use the STKCNSL replacements instead: | ||
| ```bash | ||
| zcp vpc acl-create my-vpc --name allow-web --description "Allow HTTP" | ||
| zcp acl create my-vpc --name private-acl --description "Deny all inbound" | ||
| ``` | ||
|
ditahkk marked this conversation as resolved.
|
||
|
|
||
| | Old command | Replacement | | ||
| | ------------------------- | --------------------------- | | ||
| | `zcp zone list` | `zcp region list` | | ||
| | `zcp offering compute` | `zcp plan vm` | | ||
| | `zcp offering storage` | `zcp plan storage` | | ||
| | `zcp cost summary` | `zcp billing costs` | | ||
| | `zcp usage list` | `zcp billing monthly-usage` | | ||
| | `zcp tag create` | `zcp instance tag-create` | | ||
| | `zcp admin list-accounts` | Not available via API | | ||
| ### Create commands gain required flags | ||
|
|
||
| ### Auth validate fixed | ||
| `--cloud-provider`, `--region`, `--project` added to: network, vpc, virtualrouter, dns, vpn, autoscale create commands. | ||
|
|
||
| `zcp auth validate` now correctly hits the STKCNSL region API instead of the dead zone API. | ||
| ### Volume Size type fix | ||
|
|
||
| --- | ||
| Volume list no longer fails when the API returns size as a number. | ||
|
|
||
| ## 42 total commands | ||
| ### Roadmap published | ||
|
|
||
| The CLI now has 42 commands, all backed by the STKCNSL API with zero legacy code remaining. | ||
| See `docs/roadmap.md` for what's working, what's coming, and what's blocked on the platform. | ||
|
|
||
| --- | ||
|
|
||
| ## Installation | ||
| ## Known limitations (blocked on platform) | ||
|
|
||
| ### Quick Install (Recommended) | ||
| These require API changes from the STKCNSL team: | ||
|
|
||
| **Windows:** | ||
| - **No DELETE endpoints** for VPCs, networks, virtual routers, IP addresses, or ACL lists | ||
| - **No ACL rule CRUD** — can create ACL lists but not rules inside them | ||
| - **Network create (isolated)** — `networkofferingid` not resolvable for nimbo/noida | ||
| - **DNS create** — needs admin-side `cloud_provider_setup` provisioning | ||
| - **billing cancel-service for VPCs** — returns "service not found" | ||
|
|
||
| ```powershell | ||
| irm https://github.com/zsoftly/zcp-cli/releases/latest/download/install.ps1 | iex | ||
| ``` | ||
| See `docs/roadmap.md` for full details. | ||
|
|
||
| --- | ||
|
|
||
| ## Installation | ||
|
|
||
| **macOS/Linux/WSL:** | ||
|
|
||
| ```bash | ||
| curl -fsSL https://github.com/zsoftly/zcp-cli/releases/latest/download/install.sh | bash | ||
| ``` | ||
|
|
||
| ### Manual Install | ||
|
|
||
| Download the binary for your platform from the assets below, make it executable, and move it to your `PATH`. | ||
|
|
||
| ## Platforms | ||
| **Windows:** | ||
|
|
||
| | OS | Architecture | Binary | | ||
| | ------- | ------------ | ----------------------- | | ||
| | Linux | amd64 | `zcp-linux-amd64` | | ||
| | Linux | arm64 | `zcp-linux-arm64` | | ||
| | macOS | amd64 | `zcp-darwin-amd64` | | ||
| | macOS | arm64 | `zcp-darwin-arm64` | | ||
| | Windows | amd64 | `zcp-windows-amd64.exe` | | ||
| | Windows | arm64 | `zcp-windows-arm64.exe` | | ||
| ```powershell | ||
| irm https://github.com/zsoftly/zcp-cli/releases/latest/download/install.ps1 | iex | ||
| ``` | ||
|
|
||
| **Full Changelog**: https://github.com/zsoftly/zcp-cli/compare/0.0.6...0.0.7 | ||
| **Full Changelog**: https://github.com/zsoftly/zcp-cli/compare/0.0.7...0.0.8 | ||
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,81 @@ | ||
| # ZCP CLI Roadmap | ||
|
|
||
| Features planned, in progress, or blocked on platform support. | ||
|
|
||
| --- | ||
|
|
||
| ## Completed (v0.0.7) | ||
|
|
||
| - 42 commands covering VM, storage, networking, billing, monitoring, DNS, projects, support, and more | ||
| - Full VM lifecycle: create, start, stop, reboot, reset, tags, change-plan, change-OS, cancel | ||
| - VPC lifecycle: create, list, update, restart, ACL list create, VPN gateway create | ||
| - VPC tier/subnet creation via `POST /networks` with `type=Vpc` | ||
| - Bearer token authentication | ||
| - Global `--auto-approve` / `-y` flag for CI/CD automation | ||
| - All old STKBILL code removed, zero `/restapi/` references | ||
|
|
||
| --- | ||
|
|
||
| ## Planned for next patch | ||
|
|
||
| ### CLI improvements (no platform dependency) | ||
|
|
||
| - [ ] `network create` — add `--vpc`, `--type`, `--gateway`, `--netmask`, `--acl-id` flags for VPC tier creation | ||
| - [ ] `network create` — add `--acl` flag that resolves ACL name to ID automatically | ||
| - [ ] `portforward create` — add `--public-end-port` and `--private-end-port` flags (API requires them) | ||
| - [ ] `instance change-hostname` — fix request body field name (`vm_label` instead of `label`) | ||
| - [ ] `region` command — add `use` subcommand to set default region in profile | ||
| - [ ] Default `--cloud-provider`, `--region`, `--project` from profile config to reduce flag repetition | ||
|
|
||
| ### Blocked on STKCNSL platform | ||
|
|
||
| These features require API endpoints or fixes from the STKCNSL team. | ||
|
|
||
| #### Missing DELETE endpoints | ||
|
|
||
| The API has no DELETE for these resource types. Resources can only be removed via `billing cancel-service` for VMs/volumes, but not for networking resources. | ||
|
|
||
| - [ ] `DELETE /vpcs/{slug}` — VPC deletion | ||
| - [ ] `DELETE /networks/{slug}` — network deletion (isolated and VPC tiers) | ||
| - [ ] `DELETE /virtual-routers/{slug}` — virtual router deletion | ||
| - [ ] `DELETE /ipaddresses/{slug}` — IP address release | ||
| - [ ] `DELETE /vpcs/{slug}/network-acl-list/{id}` — ACL list deletion | ||
| - [ ] `billing cancel-service` for VPC/Virtual Router service type — currently returns "service not found" | ||
|
|
||
| #### Missing ACL rule CRUD | ||
|
|
||
| The UI has "Add Rule" with Number, CIDR, Action, Protocol, Traffic Type fields, but no public API endpoint exists for creating rules inside an ACL list. | ||
|
|
||
| - [ ] `POST /vpcs/{slug}/network-acl-list/{acl_id}/rules` — create ACL rule | ||
| - [ ] `DELETE /vpcs/{slug}/network-acl-list/{acl_id}/rules/{rule_id}` — delete ACL rule | ||
| - [ ] `GET /vpcs/{slug}/network-acl-list/{acl_id}/rules` — list ACL rules | ||
|
|
||
| #### Network create (isolated) — noida region | ||
|
|
||
| `POST /networks` returns `missing parameter networkofferingid` for the nimbo/noida region. The API doesn't expose the network offering field. Likely a region configuration issue. | ||
|
|
||
| - [ ] Network offering mapping for nimbo/noida | ||
|
|
||
| #### DNS provisioning | ||
|
|
||
| `POST /dns/domains` returns `cloud_provider_setup: DNS configuration required`. DNS needs admin-side provisioning. | ||
|
|
||
| - [ ] DNS enabled for our account/region | ||
|
|
||
| #### Network quota | ||
|
|
||
| Only 2 VPC tier networks allowed before quota exceeded. | ||
|
|
||
| - [ ] Quota increase for testing | ||
|
|
||
| --- | ||
|
|
||
| ## Future (v0.0.9+) | ||
|
|
||
| - [ ] Pagination support — `--page`, `--per-page` flags for list commands | ||
| - [ ] `--wait` flag on VPC create, volume create (poll until ready) | ||
| - [ ] JSON output improvements — consistent envelope stripping | ||
| - [ ] Shell completion for dynamic values (region slugs, plan slugs, etc.) | ||
| - [ ] `zcp config set` for default cloud-provider, region, project | ||
| - [ ] Object storage management (if API endpoint becomes available) | ||
| - [ ] Kubernetes cluster full lifecycle (create works, delete via billing cancel-service) |
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
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
Oops, something went wrong.
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.