APL Shared Code

f5.apl_common

This covers the contents of the standard APL include file, f5.apl_common, that is used by the built-in iApp Templates.

A boolean true/false choice box

define choice boolean {"true", "false"}

A yes/no choice box with Yes as the default answer

define choice yesno default "Yes" display "small" {"Yes", "No"}

A yes/no choice box with No as the default answer

define choice noyes default "No" display "small" {"No", "Yes"}

The standard way of presenting the option to offload SSL and select SSL certs and keys

define section ssl_section {
    noyes offload_ssl
    optional ( offload_ssl == "Yes" ) {
        choice cert default "/Common/default.crt" display "large" tcl { tmsh::run_proc f5.app_utils:get_ssl_certs }
        choice key default "/Common/default.key" display "large" tcl { tmsh::run_proc f5.app_utils:get_ssl_keys }
    }
}

The list of load balancing methods for LTM

define choice lb_method default "round-robin" display "xlarge" {
    "Dynamic Ratio (member)" => "dynamic-ratio-member",
    "Dynamic Ratio (node)" => "dynamic-ratio-node",
    "Fastest (application)" => "fastest-app-response",
    "Fastest (node)" => "fastest-node",
    "Least Connections (member)" => "least-connections-member",
    "Least Connections (node)" => "least-connections-node",
    "Least Sessions" => "least-sessions",
    "Observed (member)" => "observed-member",
    "Observed (node)" => "observed-node",
    "Predictive (member)" => "predictive-member",
    "Predictive (node)" => "predictive-node",
    "Round Robin" => "round-robin",
    "Ratio (member)" => "ratio-member",
    "Ratio (node)" => "ratio-node",
    "Ratio (session)" => "ratio-session",
    "Ratio Least Connections (member)" => "ratio-least-connections-memeber",
    "Ratio Least Connections (node)" => "ratio-least-connections-node",
    "Weighted Least Connections (member)" => "weighted-least-connections-member",
    "Weighted Least Connections (node)" => "weighted-least-connections-node"
}

The list of load balancing methods for GTM

define choice lb_method_gtm default "round-robin" display "xlarge" {
    "Completion Rate" => "completion-rate",
    "CPU" => "cpu",
    "Drop Packet" => "drop-packet",
    "Fallback IP" => "fallback-ip",
    "Fewest Hops" => "fewest-hops",
    "Global Availability" => "global-availability",
    "Kilobytes Per Second" => "kilobytes-per-second",
    "Least Connections" => "least-connections",
    "Lowest Round Trip Time" => "lowest-round-trip-time",
    "Packet Rate" => "packet-rate",
    "Quality Of Servic" => "quality-of-service",
    "Ratio" => "ratio",
    "Return To DNS" => "return-to-dns",
    "Round Robin" => "round-robin",
    "Static Persistence" => "static-persistence",
    "Topology" => "topology",
    "Virtual Server Capacity" => "virtual-server-capacity",
    "Virtual Server Score" => "virtual-server-score"
}

The list of supported languages for ASM

define choice language_choice default "utf-8" display "xlarge" {
    "Arabic (iso-8859-6)" => "iso-8859-6",
    "Baltic (iso-8859-4)" => "iso-8859-4",
    "Baltic (iso-8859-13)" => "iso-8859-13",
    "Baltic (windows-1257)" => "windows-1257",
    "Central European (iso-8859-2)" => "iso-8859-2",
    "Central European (windows-1250)" => "windows-1250",
    "Chinese (big5)" => "big5",
    "Chinese (gb2312)" => "gb2312",
    "Chinese (gbk)" => "gbk",
    "Chinese (gb18030)" => "gb18030",
    "Cyrillic (iso-8859-5)" => "iso-8859-5",
    "Cyrillic (koi8-r)" => "koi8-r",
    "Cyrillic (windows-1251)" => "windows-1251",
    "Greek (iso-8859-7)" => "iso-8859-7",
    "Greek (windows-1253)" => "windows-1253",
    "Hebrew (iso-8859-8)" => "iso-8859-8",
    "Hebrew (windows-1255)" => "windows-1255",
    "Japanese (euc-jp)" => "euc-jp",
    "Japanese (shift_jis)" => "shift_jis",
    "Korean (euc-kr)" => "euc-kr",
    "Nordic (iso-8859-10)" => "iso-8859-10",
    "Romanian (iso-8859-16)" => "iso-8859-16",
    "South European (iso-8859-3)" => "iso-8859-3",
    "Thai (windows-874)" => "windows-874",
    "Unicode (utf-8)" => "utf-8",
    "Western European (iso-8859-1)" => "iso-8859-1",
    "Western European (iso-8859-15)" => "iso-8859-15",
    "Western European (windows-1252)" => "windows-1252"
}

The BIG-IP API Reference documentation contains community-contributed content. F5 does not monitor or control community code contributions. We make no guarantees or warranties regarding the available code, and it may contain errors, defects, bugs, inaccuracies, or security vulnerabilities. Your access to and use of any code available in the BIG-IP API reference guides is solely at your own risk.