94 lines
2.1 KiB
Plaintext
94 lines
2.1 KiB
Plaintext
![]() |
# Extensions Management Commands
|
||
|
|
||
|
use ../lib_provisioning/extensions *
|
||
|
|
||
|
# List available extensions
|
||
|
export def "main extensions list" [
|
||
|
--type: string = "" # Filter by type: provider, taskserv, or all
|
||
|
--helpinfo (-h) # Show help
|
||
|
]: nothing -> nothing {
|
||
|
if $helpinfo {
|
||
|
print "List available extensions"
|
||
|
return
|
||
|
}
|
||
|
|
||
|
match $type {
|
||
|
"provider" => {
|
||
|
print "Available Provider Extensions:"
|
||
|
list-providers
|
||
|
}
|
||
|
"taskserv" => {
|
||
|
print "Available TaskServ Extensions:"
|
||
|
list-taskservs
|
||
|
}
|
||
|
_ => {
|
||
|
print "Available Extensions:"
|
||
|
print "\nProviders:"
|
||
|
list-providers
|
||
|
|
||
|
print "\nTaskServs:"
|
||
|
list-taskservs
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# Show extension details
|
||
|
export def "main extensions show" [
|
||
|
name: string # Extension name
|
||
|
--helpinfo (-h) # Show help
|
||
|
]: nothing -> nothing {
|
||
|
if $helpinfo {
|
||
|
print "Show details for a specific extension"
|
||
|
return
|
||
|
}
|
||
|
|
||
|
let provider = (get-provider $name)
|
||
|
let taskserv = (get-taskserv $name)
|
||
|
|
||
|
if ($provider | is-not-empty) {
|
||
|
print $"Provider Extension: ($name)"
|
||
|
$provider
|
||
|
} else if ($taskserv | is-not-empty) {
|
||
|
print $"TaskServ Extension: ($name)"
|
||
|
$taskserv
|
||
|
} else {
|
||
|
print $"Extension '($name)' not found"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# Initialize extensions
|
||
|
export def "main extensions init" [
|
||
|
--helpinfo (-h) # Show help
|
||
|
]: nothing -> nothing {
|
||
|
if $helpinfo {
|
||
|
print "Initialize extension registry"
|
||
|
return
|
||
|
}
|
||
|
|
||
|
init-registry
|
||
|
print "Extension registry initialized"
|
||
|
}
|
||
|
|
||
|
# Show current profile
|
||
|
export def "main profile show" [
|
||
|
--helpinfo (-h) # Show help
|
||
|
]: nothing -> nothing {
|
||
|
if $helpinfo {
|
||
|
print "Show current access profile"
|
||
|
return
|
||
|
}
|
||
|
|
||
|
show-profile | table
|
||
|
}
|
||
|
|
||
|
# Create example profiles
|
||
|
export def "main profile create-examples" [
|
||
|
--helpinfo (-h) # Show help
|
||
|
]: nothing -> nothing {
|
||
|
if $helpinfo {
|
||
|
print "Create example profile files"
|
||
|
return
|
||
|
}
|
||
|
|
||
|
create-example-profiles
|
||
|
}
|