Skip to content

Commit

Permalink
Remove import os/user
Browse files Browse the repository at this point in the history
  • Loading branch information
Guillaume J. Charmes committed Sep 6, 2013
1 parent eed00a4 commit b07314e
Showing 1 changed file with 19 additions and 12 deletions.
31 changes: 19 additions & 12 deletions utils/utils.go
Expand Up @@ -14,7 +14,6 @@ import (
"net/http"
"os"
"os/exec"
"os/user"
"path/filepath"
"runtime"
"strconv"
Expand Down Expand Up @@ -802,7 +801,7 @@ func StripComments(input []byte, commentMarker []byte) []byte {
var output []byte
for _, currentLine := range lines {
var commentIndex = bytes.Index(currentLine, commentMarker)
if ( commentIndex == -1 ) {
if commentIndex == -1 {
output = append(output, currentLine...)
} else {
output = append(output, currentLine[:commentIndex]...)
Expand Down Expand Up @@ -867,18 +866,26 @@ func ParseRepositoryTag(repos string) (string, string) {
return repos, ""
}

type User struct {
Uid string // user id
Gid string // primary group id
Username string
Name string
HomeDir string
}

// UserLookup check if the given username or uid is present in /etc/passwd
// and returns the user struct.
// If the username is not found, an error is returned.
func UserLookup(uid string) (*user.User, error) {
func UserLookup(uid string) (*User, error) {
file, err := ioutil.ReadFile("/etc/passwd")
if err != nil {
return nil, err
}
for _, line := range strings.Split(string(file), "\n") {
data := strings.Split(line, ":")
if len(data) > 5 && (data[0] == uid || data[2] == uid) {
return &user.User{
return &User{
Uid: data[2],
Gid: data[3],
Username: data[0],
Expand All @@ -890,13 +897,13 @@ func UserLookup(uid string) (*user.User, error) {
return nil, fmt.Errorf("User not found in /etc/passwd")
}

type DependencyGraph struct{
type DependencyGraph struct {
nodes map[string]*DependencyNode
}

type DependencyNode struct{
id string
deps map[*DependencyNode]bool
type DependencyNode struct {
id string
deps map[*DependencyNode]bool
}

func NewDependencyGraph() DependencyGraph {
Expand All @@ -917,7 +924,7 @@ func (graph *DependencyGraph) NewNode(id string) string {
return id
}
nd := &DependencyNode{
id: id,
id: id,
deps: map[*DependencyNode]bool{},
}
graph.addNode(nd)
Expand Down Expand Up @@ -979,7 +986,7 @@ func (graph *DependencyGraph) GenerateTraversalMap() ([][]string, error) {
// If at least one dep hasn't been processed yet, we can't
// add it.
ok := true
for dep, _ := range node.deps {
for dep := range node.deps {
if !processed[dep] {
ok = false
break
Expand All @@ -991,7 +998,7 @@ func (graph *DependencyGraph) GenerateTraversalMap() ([][]string, error) {
}
}
Debugf("Round %d: found %d available nodes", len(result), len(tmp_processed))
// If no progress has been made this round,
// If no progress has been made this round,
// that means we have circular dependencies.
if len(tmp_processed) == 0 {
return nil, fmt.Errorf("Could not find a solution to this dependency graph")
Expand All @@ -1004,4 +1011,4 @@ func (graph *DependencyGraph) GenerateTraversalMap() ([][]string, error) {
result = append(result, round)
}
return result, nil
}
}

0 comments on commit b07314e

Please sign in to comment.