mirror of
https://github.com/DeBrosOfficial/network.git
synced 2025-12-13 03:28:50 +00:00
refactor: streamline repository removal and directory setup in cloneAndBuild function
- Updated the repository removal process to always use root, with a fallback to the 'debros' user if necessary. - Added error handling for ensuring the 'debros' home directory exists and setting its ownership. - Improved clarity in error messages for directory setup failures.
This commit is contained in:
parent
6e80ff28b4
commit
f71ef8e60b
2
Makefile
2
Makefile
@ -21,7 +21,7 @@ test-e2e:
|
|||||||
|
|
||||||
.PHONY: build clean test run-node run-node2 run-node3 run-example deps tidy fmt vet lint clear-ports
|
.PHONY: build clean test run-node run-node2 run-node3 run-example deps tidy fmt vet lint clear-ports
|
||||||
|
|
||||||
VERSION := 0.53.11
|
VERSION := 0.53.12
|
||||||
COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo unknown)
|
COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo unknown)
|
||||||
DATE ?= $(shell date -u +%Y-%m-%dT%H:%M:%SZ)
|
DATE ?= $(shell date -u +%Y-%m-%dT%H:%M:%SZ)
|
||||||
LDFLAGS := -X 'main.version=$(VERSION)' -X 'main.commit=$(COMMIT)' -X 'main.date=$(DATE)'
|
LDFLAGS := -X 'main.version=$(VERSION)' -X 'main.commit=$(COMMIT)' -X 'main.date=$(DATE)'
|
||||||
|
|||||||
@ -1071,13 +1071,13 @@ func cloneAndBuild() {
|
|||||||
// Remove existing repository if it exists (always start fresh)
|
// Remove existing repository if it exists (always start fresh)
|
||||||
if _, err := os.Stat("/home/debros/src"); err == nil {
|
if _, err := os.Stat("/home/debros/src"); err == nil {
|
||||||
fmt.Printf(" Removing existing repository...\n")
|
fmt.Printf(" Removing existing repository...\n")
|
||||||
// Remove as debros user to avoid permission issues
|
// Remove as root since we're running as root
|
||||||
removeCmd := exec.Command("sudo", "-u", "debros", "rm", "-rf", "/home/debros/src")
|
if err := os.RemoveAll("/home/debros/src"); err != nil {
|
||||||
if output, err := removeCmd.CombinedOutput(); err != nil {
|
fmt.Fprintf(os.Stderr, "⚠️ Failed to remove existing repo as root: %v\n", err)
|
||||||
fmt.Fprintf(os.Stderr, "⚠️ Failed to remove existing repo as debros user: %v\n%s\n", err, output)
|
// Try as debros user as fallback (might work if files are owned by debros)
|
||||||
// Try as root as fallback
|
removeCmd := exec.Command("sudo", "-u", "debros", "rm", "-rf", "/home/debros/src")
|
||||||
if err := os.RemoveAll("/home/debros/src"); err != nil {
|
if output, err := removeCmd.CombinedOutput(); err != nil {
|
||||||
fmt.Fprintf(os.Stderr, "⚠️ Failed to remove existing repo as root: %v\n", err)
|
fmt.Fprintf(os.Stderr, "⚠️ Failed to remove existing repo as debros user: %v\n%s\n", err, output)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Wait a moment to ensure filesystem syncs
|
// Wait a moment to ensure filesystem syncs
|
||||||
@ -1087,8 +1087,11 @@ func cloneAndBuild() {
|
|||||||
// Ensure parent directory exists and has correct permissions
|
// Ensure parent directory exists and has correct permissions
|
||||||
if err := os.MkdirAll("/home/debros", 0755); err != nil {
|
if err := os.MkdirAll("/home/debros", 0755); err != nil {
|
||||||
fmt.Fprintf(os.Stderr, "⚠️ Failed to ensure debros home directory exists: %v\n", err)
|
fmt.Fprintf(os.Stderr, "⚠️ Failed to ensure debros home directory exists: %v\n", err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := exec.Command("chown", "debros:debros", "/home/debros").Run(); err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "⚠️ Failed to chown debros home directory: %v\n", err)
|
||||||
}
|
}
|
||||||
exec.Command("chown", "debros:debros", "/home/debros").Run()
|
|
||||||
|
|
||||||
// Clone fresh repository
|
// Clone fresh repository
|
||||||
fmt.Printf(" Cloning repository...\n")
|
fmt.Printf(" Cloning repository...\n")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user