mirror of
https://github.com/skoelle/kctl-tui.git
synced 2026-09-17 20:10:24 +00:00
fix: upgrade CI to Go 1.25 and document self-update feature
- Upgrade go-version from 1.24 to 1.25 in build.yml (required by go-selfupdate v1.6.0) - Add kctl-tui update command and interactive startup check to README.md - Document new features in CHANGELOG.md - Update Go version requirement to 1.25+ in README.md and CONTRIBUTING.md - Add Phase 5 (Self-update) to PLAN.md roadmap
This commit is contained in:
@@ -19,7 +19,7 @@ jobs:
|
|||||||
|
|
||||||
- uses: actions/setup-go@v7
|
- uses: actions/setup-go@v7
|
||||||
with:
|
with:
|
||||||
go-version: "1.24"
|
go-version: "1.25"
|
||||||
cache: false
|
cache: false
|
||||||
|
|
||||||
- name: Tidy dependencies (generates/updates go.sum)
|
- name: Tidy dependencies (generates/updates go.sum)
|
||||||
@@ -44,7 +44,7 @@ jobs:
|
|||||||
|
|
||||||
- uses: actions/setup-go@v7
|
- uses: actions/setup-go@v7
|
||||||
with:
|
with:
|
||||||
go-version: "1.24"
|
go-version: "1.25"
|
||||||
cache: false
|
cache: false
|
||||||
|
|
||||||
- name: Tidy dependencies (generates/updates go.sum)
|
- name: Tidy dependencies (generates/updates go.sum)
|
||||||
|
|||||||
@@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- `kctl-tui update` — self-update command that downloads the latest release
|
||||||
|
from GitHub and replaces the running binary
|
||||||
|
- Automatic update check on startup — prompts to update interactively when
|
||||||
|
a newer version is available
|
||||||
|
|
||||||
## [0.2.0] - 2026-08-09
|
## [0.2.0] - 2026-08-09
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|||||||
+1
-1
@@ -13,7 +13,7 @@ go mod download
|
|||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
|
|
||||||
- Go 1.22+
|
- Go 1.25+
|
||||||
- kubectl, k9s, tmux (or psmux on Windows)
|
- kubectl, k9s, tmux (or psmux on Windows)
|
||||||
- An active Kubernetes cluster for integration testing
|
- An active Kubernetes cluster for integration testing
|
||||||
|
|
||||||
|
|||||||
@@ -77,6 +77,14 @@ is still open. For the full requirements, see [SPEC.md](SPEC.md).
|
|||||||
- [x] `--help` flag with full usage documentation.
|
- [x] `--help` flag with full usage documentation.
|
||||||
- [x] CHANGELOG.md, CONTRIBUTING.md, GitHub Issue/PR templates.
|
- [x] CHANGELOG.md, CONTRIBUTING.md, GitHub Issue/PR templates.
|
||||||
|
|
||||||
|
## Phase 5 — Self-update (done)
|
||||||
|
|
||||||
|
- [x] `kctl-tui update` — self-update command using `go-selfupdate` library.
|
||||||
|
Downloads the matching OS/arch asset from GitHub Releases and replaces
|
||||||
|
the running binary atomically.
|
||||||
|
- [x] Interactive update check on startup — queries GitHub Releases in the
|
||||||
|
background, prompts the user to update when a newer version is found.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Bugfix Sprint — between v0.2.0 and v0.3.0
|
## Bugfix Sprint — between v0.2.0 and v0.3.0
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ go build -o kctl-tui ./cmd/kctl-tui
|
|||||||
sudo mv kctl-tui /usr/local/bin/
|
sudo mv kctl-tui /usr/local/bin/
|
||||||
```
|
```
|
||||||
|
|
||||||
Requires Go 1.22+.
|
Requires Go 1.25+.
|
||||||
|
|
||||||
### 📦 Prebuilt binaries
|
### 📦 Prebuilt binaries
|
||||||
|
|
||||||
@@ -203,11 +203,16 @@ kctl-tui # start the TUI (full navigation mode)
|
|||||||
kctl-tui --help # show all commands and flags
|
kctl-tui --help # show all commands and flags
|
||||||
kctl-tui --version # print version
|
kctl-tui --version # print version
|
||||||
kctl-tui --verbose # enable debug logging to stderr
|
kctl-tui --verbose # enable debug logging to stderr
|
||||||
|
kctl-tui update # update to the latest release
|
||||||
kctl-tui doctor # check if all tools, config and connections are OK
|
kctl-tui doctor # check if all tools, config and connections are OK
|
||||||
kctl-tui config check # validate ~/.kctl-tui/config.yaml
|
kctl-tui config check # validate ~/.kctl-tui/config.yaml
|
||||||
kctl-tui panel --context=... --ns=... --team=... # internal (called by tmux)
|
kctl-tui panel --context=... --ns=... --team=... # internal (called by tmux)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
When starting `kctl-tui` without a subcommand, a background check queries
|
||||||
|
GitHub Releases for a newer version. If one is found, you are prompted to
|
||||||
|
update interactively before the TUI starts.
|
||||||
|
|
||||||
## 🛠️ Development
|
## 🛠️ Development
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
Reference in New Issue
Block a user