Add dockerfile, add data directory flag
This commit is contained in:
parent
1f5dd7a5e0
commit
284a35ab09
9 changed files with 81 additions and 62 deletions
|
@ -3,16 +3,14 @@ package storage
|
|||
import (
|
||||
"log"
|
||||
"os"
|
||||
"os/user"
|
||||
"path"
|
||||
|
||||
"github.com/khlieng/name_pending/Godeps/_workspace/src/github.com/boltdb/bolt"
|
||||
)
|
||||
|
||||
var (
|
||||
AppDir string
|
||||
|
||||
db *bolt.DB
|
||||
appDir string
|
||||
db *bolt.DB
|
||||
|
||||
bucketUsers = []byte("Users")
|
||||
bucketServers = []byte("Servers")
|
||||
|
@ -20,24 +18,13 @@ var (
|
|||
bucketMessages = []byte("Messages")
|
||||
)
|
||||
|
||||
func init() {
|
||||
currentUser, err := user.Current()
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
AppDir = path.Join(currentUser.HomeDir, ".name_pending")
|
||||
|
||||
os.Mkdir(AppDir, 0777)
|
||||
os.Mkdir(path.Join(AppDir, "logs"), 0777)
|
||||
}
|
||||
|
||||
func Initialize() {
|
||||
func Initialize(dir string) {
|
||||
var err error
|
||||
appDir = dir
|
||||
|
||||
log.Println("Storing data at", AppDir)
|
||||
log.Println("Storing data at", dir)
|
||||
|
||||
db, err = bolt.Open(path.Join(AppDir, "data.db"), 0600, nil)
|
||||
db, err = bolt.Open(path.Join(dir, "data.db"), 0600, nil)
|
||||
if err != nil {
|
||||
log.Fatal("Could not open database file")
|
||||
}
|
||||
|
@ -55,7 +42,7 @@ func Close() {
|
|||
db.Close()
|
||||
}
|
||||
|
||||
func Clear() {
|
||||
os.RemoveAll(path.Join(AppDir, "logs"))
|
||||
os.Remove(path.Join(AppDir, "data.db"))
|
||||
func Clear(dir string) {
|
||||
os.RemoveAll(path.Join(dir, "logs"))
|
||||
os.Remove(path.Join(dir, "data.db"))
|
||||
}
|
||||
|
|
|
@ -304,7 +304,7 @@ func (u *User) SearchMessages(server, channel, phrase string) ([]Message, error)
|
|||
func (u *User) openMessageLog() {
|
||||
var err error
|
||||
|
||||
u.messageLog, err = bolt.Open(path.Join(AppDir, "logs", u.UUID+"_log"), 0600, nil)
|
||||
u.messageLog, err = bolt.Open(path.Join(appDir, "logs", u.UUID+"_log"), 0600, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
@ -315,7 +315,7 @@ func (u *User) openMessageLog() {
|
|||
return nil
|
||||
})
|
||||
|
||||
indexPath := path.Join(AppDir, "logs", u.UUID+"_index")
|
||||
indexPath := path.Join(appDir, "logs", u.UUID+"_index")
|
||||
u.messageIndex, err = bleve.Open(indexPath)
|
||||
if err == bleve.ErrorIndexPathDoesNotExist {
|
||||
mapping := bleve.NewIndexMapping()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue