mirror of
https://github.com/Studio-Saelix/sencho.git
synced 2026-07-28 12:49:03 +00:00
60f893a81f
Drops `requirePaid` from `POST /api/fleet/update-all` so Community admins can dispatch bulk node updates. Per-node OTA was already Community- reachable (admin-only); this completes the move so the full Remote OTA surface ships at Community. Frontend mirrors the backend: removes `canBulkUpdate` from NodeUpdatesSheet so the "Update all (N)" affordance is purely data- driven on `updatableRemoteCount > 0`. Docs realigned to drop fence-spec and Skipper-only phrasing on the Update all bulk action: - features/licensing.mdx: Community line now lists Remote OTA (per-node and Update all); Skipper Fleet Actions parenthetical drops "bulk update all" - features/remote-updates.mdx: Note rewritten to role-only requirement - features/fleet-view.mdx: Update all (n) bullet drops the tier clause - features/overview.mdx: Fleet View and Remote updates blurbs drop the Skipper/Admiral fences - operations/upgrade.mdx: Note rephrased without naming tiers Test coverage: - fleet.test.ts: tier-gating spec flipped to assert Community access - fleet-pilot-update.test.ts: bulk-OTA dispatch suite now spies tier to Community so it doubles as a regression guard
87 lines
3.1 KiB
Plaintext
87 lines
3.1 KiB
Plaintext
---
|
|
title: Upgrading Sencho
|
|
description: How to update Sencho, what happens during upgrades, and the version policy.
|
|
---
|
|
|
|
## Upgrade steps
|
|
|
|
Upgrading Sencho is a two-command process. Pull the latest image and recreate the container:
|
|
|
|
```bash
|
|
docker compose pull
|
|
docker compose up -d
|
|
```
|
|
|
|
Or if you're running with `docker run`:
|
|
|
|
```bash
|
|
docker pull saelix/sencho:latest
|
|
docker stop sencho && docker rm sencho
|
|
# Re-run your original docker run command
|
|
```
|
|
|
|
Sencho will apply any necessary database migrations automatically on startup. No manual steps are required.
|
|
|
|
<Note>
|
|
Remote nodes can be updated directly from the Fleet View without dropping to a shell. See [Remote Updates](/features/remote-updates) for details.
|
|
</Note>
|
|
|
|
---
|
|
|
|
## Automatic migrations
|
|
|
|
Sencho handles all schema changes internally. When the application starts, it checks whether the database needs updating and applies any pending migrations automatically. This covers:
|
|
|
|
- **New tables and columns** for features introduced in newer versions
|
|
- **Legacy config migration** from very early versions that used a JSON config file
|
|
- **Admin account migration** from single-admin storage to the multi-user system
|
|
- **Encryption of sensitive values** (node API tokens, registry credentials) that were previously stored in plaintext
|
|
- **SSO and RBAC setup** for single sign-on provider config and role-based access
|
|
- **Legacy cleanup** of obsolete fields from pre-0.7 versions (SSH/TLS columns)
|
|
|
|
You never need to run SQL commands, migration scripts, or any manual database operations.
|
|
|
|
---
|
|
|
|
## Backup before upgrading
|
|
|
|
Always back up your data directory before upgrading. If something goes wrong, restoring from backup is the only recovery path. Sencho does not support downgrading or rolling back database migrations.
|
|
|
|
```bash
|
|
# Copy both the database and the encryption key
|
|
cp /path/to/sencho-data/sencho.db /path/to/backup/sencho-pre-upgrade.db
|
|
cp /path/to/sencho-data/encryption.key /path/to/backup/encryption-pre-upgrade.key
|
|
```
|
|
|
|
See the [Backup & Restore guide](/operations/backup) for full backup procedures.
|
|
|
|
---
|
|
|
|
## Pinning a specific version
|
|
|
|
If you prefer to control exactly which version you run, pin the image tag in your `docker-compose.yml`:
|
|
|
|
```yaml
|
|
image: saelix/sencho:0.38.0
|
|
```
|
|
|
|
Check [GitHub Releases](https://github.com/studio-saelix/sencho/releases) for available versions and changelogs.
|
|
|
|
---
|
|
|
|
## Version policy
|
|
|
|
Sencho follows [Semantic Versioning](https://semver.org/) (`MAJOR.MINOR.PATCH`):
|
|
|
|
| Change type | Version bump | Example |
|
|
|-------------|-------------|---------|
|
|
| Bug fixes, performance improvements | Patch | 0.38.0 → 0.38.1 |
|
|
| New features | Minor | 0.38.x → 0.39.0 |
|
|
| Breaking changes | Major | 0.x.y → 1.0.0 |
|
|
|
|
<Note>
|
|
While the version is below 1.0, minor releases (0.x.0) may occasionally include breaking changes. These are always documented in the release notes. Once Sencho reaches 1.0, breaking changes will only occur in major releases.
|
|
</Note>
|
|
|
|
Breaking changes are marked with `BREAKING CHANGE` in the [release notes](https://github.com/studio-saelix/sencho/releases). Subscribe to the repository's releases to be notified of new versions.
|