mirror of
https://github.com/harivansh-afk/betterNAS.git
synced 2026-04-15 09:01:13 +00:00
Add install script, CI workflows, and release pipeline
- Install script: curl-pipe-sh installer that downloads the right binary for the user's OS/arch from GitHub Releases - CI workflow: runs go vet + go test for both Go modules and builds the web app on push/PR - Release workflow: goreleaser builds cross-platform binaries (linux/darwin, amd64/arm64) on version tags - Node-agent defaults BETTERNAS_CONTROL_PLANE_URL to https://api.betternas.com so users only need username/password
This commit is contained in:
parent
1bbfb6647d
commit
18b4ce1a40
6 changed files with 178 additions and 8 deletions
|
|
@ -15,3 +15,22 @@ For the scaffold it does two things:
|
|||
This is the first real storage-facing surface in the monorepo.
|
||||
|
||||
The user-facing binary should be distributed as `betternas-node`.
|
||||
|
||||
Install the latest release with:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/harivansh-afk/betterNAS/main/scripts/install-betternas-node.sh | sh
|
||||
```
|
||||
|
||||
Then connect a machine to betterNAS with:
|
||||
|
||||
```bash
|
||||
BETTERNAS_USERNAME=your-username \
|
||||
BETTERNAS_PASSWORD=your-password \
|
||||
BETTERNAS_EXPORT_PATH=/path/to/export \
|
||||
BETTERNAS_NODE_DIRECT_ADDRESS=https://your-public-node-url \
|
||||
betternas-node
|
||||
```
|
||||
|
||||
If `BETTERNAS_CONTROL_PLANE_URL` is not set, the node defaults to
|
||||
`https://api.betternas.com`.
|
||||
|
|
|
|||
|
|
@ -59,9 +59,9 @@ type nodeHeartbeatRequest struct {
|
|||
}
|
||||
|
||||
func bootstrapNodeAgentFromEnv(exportPaths []string) (bootstrapResult, error) {
|
||||
controlPlaneURL, err := requiredEnv("BETTERNAS_CONTROL_PLANE_URL")
|
||||
if err != nil {
|
||||
return bootstrapResult{}, err
|
||||
controlPlaneURL := strings.TrimSpace(env("BETTERNAS_CONTROL_PLANE_URL", "https://api.betternas.com"))
|
||||
if controlPlaneURL == "" {
|
||||
return bootstrapResult{}, fmt.Errorf("BETTERNAS_CONTROL_PLANE_URL is required")
|
||||
}
|
||||
|
||||
username, err := requiredEnv("BETTERNAS_USERNAME")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue