summaryrefslogtreecommitdiff
path: root/fs.go
diff options
context:
space:
mode:
Diffstat (limited to 'fs.go')
-rw-r--r--fs.go115
1 files changed, 6 insertions, 109 deletions
diff --git a/fs.go b/fs.go
index 86de16b..ffc5f05 100644
--- a/fs.go
+++ b/fs.go
@@ -45,115 +45,6 @@ func directoryExists(path string) bool {
return info.IsDir()
}
-// Find the configuration directory
-// Uses:
-// 1. PlANR_DIRECTORY env if set
-// 2. planr
-// 3. .planr
-func ConfigDir() string {
-
- // Return environmental override if set
- if dir, isSet := os.LookupEnv("PLANR_DIRECTORY"); isSet {
-
- if !directoryExists(dir) {
- log.Fatalf("Cannot find planr directory %s", dir);
- }
-
- return dir;
- }
-
- cwd, err := os.Getwd()
-
- if err != nil {
- log.Fatal(err)
- }
-
- var rubricDir string
-
- rubric_search_dirs := [2]string{
- "planr",
- ".planr",
- }
-
- found := traverseUp(cwd, func (path string) bool {
-
- for _, dir := range rubric_search_dirs {
- rubricDir = filepath.Join(path, dir)
-
- if directoryExists(rubricDir) {
- return true
- }
- }
-
- return false
- });
-
- if !found {
- log.Fatal("Could not find planr directory");
- }
-
- return rubricDir
-}
-
-func JoinConfigDir(path_ string, file string) string {
- if path.IsAbs(path_) {
- return path.Join(path_, file)
- }
-
- return path.Join(ConfigDir(), path_, file)
-}
-
-func RootDir() string {
- return path.Join(ConfigDir(), "..")
-}
-
-// Find rubric directory at PLANR_DIR/rubric
-func RubricDir() string {
- rubricDir := path.Join(ConfigDir(), "rubric");
-
- if !directoryExists(rubricDir) {
- log.Fatal("Could not find the rubric directory inside of planr")
- }
-
- return rubricDir
-}
-
-func BuildDir() string {
- buildDir := path.Join(ConfigDir(), "build")
-
- if !directoryExists(buildDir) {
- err := os.Mkdir(buildDir, 0755)
-
- if err != nil {
- log.Fatalf("Cannot create build directory %v\n", err)
- }
- }
-
- return buildDir
-}
-
-func CleanBuildDir() {
- buildDir := path.Join(ConfigDir(), "build")
- if err := os.RemoveAll(buildDir); err != nil {
- log.Fatalf("Cannot clean (removeAll) in build directory %v\n", err)
- }
-}
-
-func (ac AdapterConfig) Dir() string {
- dir := BuildDir()
- dir = path.Join(dir, ac.Name)
-
- if !directoryExists(dir) {
- err := os.Mkdir(dir, 0755)
-
- if err != nil {
- log.Fatalf("Cannot create build/%s directory %v\n", ac.Name, err)
- }
- }
-
- return dir
-}
-
func basename(path string) string {
ext := filepath.Ext(path)
return path[0:len(path) - len(ext)]
@@ -262,3 +153,9 @@ func collectFromDir(
}
}
}
+
+func safeCd(newWd string) {
+ if err := os.Chdir(newWd); err != nil {
+ log.Fatalf("Could not change into directory %v\n", err)
+ }
+}