kopia lustrzana https://github.com/cblgh/lieu
rodzic
5231ff3571
commit
56d3660b68
100
cli.go
100
cli.go
|
@ -32,77 +32,77 @@ https://github.com/cblgh/lieu for more information.
|
||||||
`
|
`
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
exists := util.CheckFileExists("lieu.toml")
|
exists := util.CheckFileExists("lieu.toml")
|
||||||
if !exists {
|
if !exists {
|
||||||
fmt.Println("lieu: can't find config, saving an example config in the working directory")
|
fmt.Println("lieu: can't find config, saving an example config in the working directory")
|
||||||
util.WriteMockConfig()
|
util.WriteMockConfig()
|
||||||
fmt.Println("lieu: lieu.toml written to disk")
|
fmt.Println("lieu: lieu.toml written to disk")
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
config := util.ReadConfig()
|
config := util.ReadConfig()
|
||||||
|
|
||||||
var cmd string
|
var cmd string
|
||||||
if len(os.Args) > 1 {
|
if len(os.Args) > 1 {
|
||||||
cmd = os.Args[1]
|
cmd = os.Args[1]
|
||||||
} else {
|
} else {
|
||||||
cmd = "search"
|
cmd = "help"
|
||||||
}
|
}
|
||||||
|
|
||||||
switch cmd {
|
switch cmd {
|
||||||
case "help":
|
case "help":
|
||||||
fmt.Println(help)
|
fmt.Println(help)
|
||||||
case "precrawl":
|
case "precrawl":
|
||||||
if config.General.URL == "https://example.com/" {
|
if config.General.URL == "https://example.com/" {
|
||||||
fmt.Println("lieu: the url is not set (example.com)")
|
fmt.Println("lieu: the url is not set (example.com)")
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
crawler.Precrawl(config)
|
crawler.Precrawl(config)
|
||||||
case "crawl":
|
case "crawl":
|
||||||
exists := util.CheckFileExists(config.Crawler.Webring)
|
exists := util.CheckFileExists(config.Crawler.Webring)
|
||||||
if !exists {
|
if !exists {
|
||||||
fmt.Printf("lieu: webring file %s does not exist\n", config.Data.Webring)
|
fmt.Printf("lieu: webring file %s does not exist\n", config.Crawler.Webring)
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
sourceLen := len(util.ReadList(config.Crawler.Webring, "\n"))
|
sourceLen := len(util.ReadList(config.Crawler.Webring, "\n"))
|
||||||
if sourceLen == 0 {
|
if sourceLen == 0 {
|
||||||
fmt.Printf("lieu: nothing to crawl; the webring file %s is empty\n", config.Data.Source)
|
fmt.Printf("lieu: nothing to crawl; the webring file %s is empty\n", config.Crawler.Webring)
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
crawler.Crawl(config)
|
crawler.Crawl(config)
|
||||||
case "ingest":
|
case "ingest":
|
||||||
exists := util.CheckFileExists(config.Data.Source)
|
exists := util.CheckFileExists(config.Data.Source)
|
||||||
if !exists {
|
if !exists {
|
||||||
fmt.Printf("lieu: data source %s does not exist\n", config.Data.Source)
|
fmt.Printf("lieu: data source %s does not exist\n", config.Data.Source)
|
||||||
fmt.Println("lieu: try running `lieu crawl`")
|
fmt.Println("lieu: try running `lieu crawl`")
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
sourceLen := len(util.ReadList(config.Data.Source, "\n"))
|
sourceLen := len(util.ReadList(config.Data.Source, "\n"))
|
||||||
if sourceLen == 0 {
|
if sourceLen == 0 {
|
||||||
fmt.Printf("lieu: nothing to ingest; data source %s is empty\n", config.Data.Source)
|
fmt.Printf("lieu: nothing to ingest; data source %s is empty\n", config.Data.Source)
|
||||||
fmt.Println("lieu: try running `lieu crawl`")
|
fmt.Println("lieu: try running `lieu crawl`")
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
fmt.Println("lieu: creating a new database & initiating ingestion")
|
fmt.Println("lieu: creating a new database & initiating ingestion")
|
||||||
ingest.Ingest(config)
|
ingest.Ingest(config)
|
||||||
case "search":
|
case "search":
|
||||||
exists := util.CheckFileExists(config.Data.Database)
|
exists := util.CheckFileExists(config.Data.Database)
|
||||||
if !exists {
|
if !exists {
|
||||||
util.DatabaseDoesNotExist(config.Data.Database)
|
util.DatabaseDoesNotExist(config.Data.Database)
|
||||||
}
|
}
|
||||||
interactiveMode(config.Data.Database)
|
interactiveMode(config.Data.Database)
|
||||||
case "host":
|
case "host":
|
||||||
exists := util.CheckFileExists(config.Data.Database)
|
exists := util.CheckFileExists(config.Data.Database)
|
||||||
if !exists {
|
if !exists {
|
||||||
util.DatabaseDoesNotExist(config.Data.Database)
|
util.DatabaseDoesNotExist(config.Data.Database)
|
||||||
}
|
}
|
||||||
open := util.CheckPortOpen(config.General.Port)
|
open := util.CheckPortOpen(config.General.Port)
|
||||||
if !open {
|
if !open {
|
||||||
fmt.Printf("lieu: port %d is not open; try another one\n", config.General.Port)
|
fmt.Printf("lieu: port %d is not open; try another one\n", config.General.Port)
|
||||||
util.Exit()
|
util.Exit()
|
||||||
}
|
}
|
||||||
server.Serve(config)
|
server.Serve(config)
|
||||||
default:
|
default:
|
||||||
fmt.Println("Lieu: no such command, currently. Try `lieu help`")
|
fmt.Println("Lieu: no such command, currently. Try `lieu help`")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue