docs: publish Tend Compose continuity evidence
Export the reviewed allowlisted snapshot from private source commit 07c1655921f21ee5e4fc4d85639d199e8867b17d. This records the Docker Compose activation, schema-compatible rollback, and stateful migration resource findings from Observatory Preview 19 dogfooding. AI-Assisted: OpenAI Codex Signed-off-by: Cole Speelman <crspeelman@gmail.com>
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
//go:build linux
|
||||
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
package deploy
|
||||
|
||||
import (
|
||||
"os"
|
||||
"syscall"
|
||||
)
|
||||
|
||||
type fileIdentity struct {
|
||||
mode os.FileMode
|
||||
uid, gid int
|
||||
owned bool
|
||||
}
|
||||
|
||||
func identityFor(info os.FileInfo, fallback os.FileMode) fileIdentity {
|
||||
identity := fileIdentity{mode: fallback}
|
||||
if info == nil {
|
||||
return identity
|
||||
}
|
||||
identity.mode = info.Mode().Perm()
|
||||
if stat, ok := info.Sys().(*syscall.Stat_t); ok {
|
||||
identity.uid = int(stat.Uid)
|
||||
identity.gid = int(stat.Gid)
|
||||
identity.owned = true
|
||||
}
|
||||
return identity
|
||||
}
|
||||
func applyIdentity(file *os.File, identity fileIdentity) error {
|
||||
if identity.owned {
|
||||
if err := file.Chown(identity.uid, identity.gid); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return file.Chmod(identity.mode)
|
||||
}
|
||||
Reference in New Issue
Block a user