Skip to content

Commit

Permalink
snapshot
Browse files Browse the repository at this point in the history
  • Loading branch information
twpayne committed May 10, 2020
1 parent 6784d5a commit 4e6d491
Show file tree
Hide file tree
Showing 9 changed files with 19 additions and 21 deletions.
2 changes: 2 additions & 0 deletions internal/v2/chezmoi/chezmoi.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@ package chezmoi
import (
"fmt"
"os"
"runtime"
)

// Configuration constants.
const (
posixFileModes = runtime.GOOS != "windows"
pathSeparator = '/'
pathSeparatorStr = string(pathSeparator)
ignorePrefix = "."
Expand Down
5 changes: 0 additions & 5 deletions internal/v2/chezmoi/chezmoi_posix.go

This file was deleted.

3 changes: 0 additions & 3 deletions internal/v2/chezmoi/chezmoi_windows.go

This file was deleted.

2 changes: 1 addition & 1 deletion internal/v2/chezmoi/encryptiontool_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ func testEncryptionToolEncryptFile(t *testing.T, et EncryptionTool) {
defer func() {
assert.NoError(t, os.RemoveAll(tempFile.Name()))
}()
if osHasPOSIXFileModes {
if posixFileModes {
require.NoError(t, tempFile.Chmod(0o600))
}
_, err = tempFile.Write(expectedPlaintext)
Expand Down
16 changes: 10 additions & 6 deletions internal/v2/chezmoi/gitdiffsystem.go
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ func (s *GitDiffSystem) Readlink(name string) (string, error) {
// RemoveAll implements System.RemoveAll.
func (s *GitDiffSystem) RemoveAll(name string) error {
fromFileMode, _, err := s.getFileMode(name)
if err != nil {
if err != nil && !os.IsNotExist(err) {
return err
}
return s.unifiedEncoder.Encode(&gitDiffPatch{
Expand Down Expand Up @@ -201,11 +201,15 @@ func (s *GitDiffSystem) Set(bucket, key, value []byte) error {
// WriteFile implements System.WriteFile.
func (s *GitDiffSystem) WriteFile(filename string, data []byte, perm os.FileMode) error {
fromFileMode, _, err := s.getFileMode(filename)
if err != nil {
return err
}
fromData, err := s.sr.ReadFile(filename)
if err != nil {
var fromData []byte
switch {
case err == nil:
fromData, err = s.sr.ReadFile(filename)
if err != nil {
return err
}
case os.IsNotExist(err):
default:
return err
}
toFileMode, err := filemode.NewFromOSFileMode(perm)
Expand Down
2 changes: 1 addition & 1 deletion internal/v2/chezmoi/gpgencryptiontool.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ func (t *GPGEncryptionTool) Encrypt(plaintext []byte) (ciphertext []byte, err er
err = multierr.Append(err, os.RemoveAll(tempFile.Name()))
}()

if osHasPOSIXFileModes {
if posixFileModes {
if err = tempFile.Chmod(0o600); err != nil {
return
}
Expand Down
2 changes: 1 addition & 1 deletion internal/v2/chezmoi/gpgencryptiontool_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ func TestGPGEncryptionTool(t *testing.T) {
assert.NoError(t, os.RemoveAll(tempDir))
}()

if osHasPOSIXFileModes {
if posixFileModes {
require.NoError(t, os.Chmod(tempDir, 0o700))
}

Expand Down
6 changes: 3 additions & 3 deletions internal/v2/chezmoi/realsystem.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func NewRealSystem(fs vfs.FS, persistentState PersistentState) *RealSystem {

// Chmod implements System.Glob.
func (s *RealSystem) Chmod(name string, mode os.FileMode) error {
if !osHasPOSIXFileModes {
if !posixFileModes {
return nil
}
return s.FS.Chmod(name, mode)
Expand Down Expand Up @@ -78,7 +78,7 @@ func (s *RealSystem) RunScript(scriptname string, data []byte) (err error) {

// Make the script private before writing it in case it contains any
// secrets.
if osHasPOSIXFileModes {
if posixFileModes {
if err = f.Chmod(0o700); err != nil {
return
}
Expand Down Expand Up @@ -129,7 +129,7 @@ func WriteFile(fs vfs.FS, filename string, data []byte, perm os.FileMode) (err e
// Set permissions after truncation but before writing any data, in case the
// file contained private data before, but before writing the new contents,
// in case the contents contain private data after.
if osHasPOSIXFileModes {
if posixFileModes {
if err = f.Chmod(perm); err != nil {
return
}
Expand Down
2 changes: 1 addition & 1 deletion internal/v2/chezmoi/targetstateentry.go
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ func (t *TargetStateFile) Equal(destStateEntry DestStateEntry) (bool, error) {
log.Printf("other is a %T, not a *DestStateFile\n", destStateEntry)
return false, nil
}
if osHasPOSIXFileModes && destStateFile.perm != t.perm {
if posixFileModes && destStateFile.perm != t.perm {
log.Printf("other has perm %o, want %o", destStateFile.perm, t.perm)
return false, nil
}
Expand Down

0 comments on commit 4e6d491

Please sign in to comment.