mirror of
https://github.com/EnumeratedDev/enit.git
synced 2026-09-16 02:26:11 +00:00
Add file dependencies to services
This commit is contained in:
+23
-6
@@ -248,9 +248,18 @@ func Init() {
|
|||||||
service := servicesWithMetDepends[i]
|
service := servicesWithMetDepends[i]
|
||||||
canStart := true
|
canStart := true
|
||||||
for _, dependency := range service.Dependencies {
|
for _, dependency := range service.Dependencies {
|
||||||
if GetServiceByName(dependency).GetCurrentState() != EnitServiceRunning && GetServiceByName(dependency).GetCurrentState() != EnitServiceCompleted {
|
if strings.HasPrefix(dependency, "/") {
|
||||||
canStart = false
|
// File dependency
|
||||||
break
|
if _, err := os.Stat(dependency); err != nil {
|
||||||
|
canStart = false
|
||||||
|
break
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Service dependency
|
||||||
|
if GetServiceByName(dependency).GetCurrentState() != EnitServiceRunning && GetServiceByName(dependency).GetCurrentState() != EnitServiceCompleted {
|
||||||
|
canStart = false
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if canStart {
|
if canStart {
|
||||||
@@ -293,9 +302,17 @@ func GetServiceByName(name string) *EnitService {
|
|||||||
|
|
||||||
func (service *EnitService) GetUnmetDependencies() (missingDependencies []string) {
|
func (service *EnitService) GetUnmetDependencies() (missingDependencies []string) {
|
||||||
for _, dependency := range service.Dependencies {
|
for _, dependency := range service.Dependencies {
|
||||||
depService := GetServiceByName(dependency)
|
if strings.HasPrefix(dependency, "/") {
|
||||||
if depService == nil {
|
// File dependency
|
||||||
missingDependencies = append(missingDependencies, dependency)
|
if _, err := os.Stat(dependency); err != nil {
|
||||||
|
missingDependencies = append(missingDependencies, dependency)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Service dependency
|
||||||
|
depService := GetServiceByName(dependency)
|
||||||
|
if depService == nil {
|
||||||
|
missingDependencies = append(missingDependencies, dependency)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user