Documentation
¶
Index ¶
- Constants
- Variables
- func CheckExistRuntime(rtname string, runtimes map[string][]string) bool
- func CheckRuntimeConsistencyWithFileExtension(ext string, runtime string) bool
- func ConvertToMap(op OpenWhiskInfo) (rt map[string][]string)
- func DefaultRuntimes(op OpenWhiskInfo) (rt map[string]string)
- func FileExtensionRuntimes(op OpenWhiskInfo) (ext map[string]string)
- func FileRuntimeExtensions(op OpenWhiskInfo) (rte map[string]string)
- func ListOfSupportedRuntimes(runtimes map[string][]string) (rt []string)
- type Limit
- type OpenWhiskInfo
- type Runtime
- type SupportInfo
Constants ¶
View Source
const ( NODEJS_FILE_EXTENSION = "js" SWIFT_FILE_EXTENSION = "swift" PYTHON_FILE_EXTENSION = "py" JAVA_FILE_EXTENSION = "java" JAR_FILE_EXTENSION = "jar" CSHARP_FILE_EXTENSION = "cs" PHP_FILE_EXTENSION = "php" ZIP_FILE_EXTENSION = "zip" RUBY_FILE_EXTENSION = "rb" GO_FILE_EXTENSION = "go" RUST_FILE_EXTENSION = "rs" NODEJS_RUNTIME = "nodejs" SWIFT_RUNTIME = SWIFT_FILE_EXTENSION PYTHON_RUNTIME = "python" JAVA_RUNTIME = JAVA_FILE_EXTENSION DOTNET_RUNTIME = ZIP_FILE_EXTENSION PHP_RUNTIME = PHP_FILE_EXTENSION RUBY_RUNTIME = "ruby" GO_RUNTIME = GO_FILE_EXTENSION RUST_RUNTIME = "rust" HTTP_CONTENT_TYPE_KEY = "Content-Type" HTTP_CONTENT_TYPE_VALUE = "application/json; charset=UTF-8" RUNTIME_NOT_SPECIFIED = "NOT SPECIFIED" BLACKBOX = "blackbox" HTTPS = "https://" )
Variables ¶
View Source
var DefaultRunTimes map[string]string
View Source
var FileExtensionRuntimeKindMap map[string]string
View Source
var FileRuntimeExtensionsMap map[string]string
View Source
var RUNTIME_DETAILS = []byte(`{
"runtimes": {
"nodejs": [
{
"kind": "nodejs:6",
"default": false,
"image": {
"prefix": "openwhisk",
"name": "nodejs6action",
"tag": "nightly"
},
"deprecated": true,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
},
{
"kind": "nodejs:8",
"default": false,
"image": {
"prefix": "openwhisk",
"name": "action-nodejs-v8",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
},
{
"kind": "nodejs:10",
"default": true,
"image": {
"prefix": "openwhisk",
"name": "action-nodejs-v10",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
},
"stemCells": [
{
"count": 2,
"memory": "256 MB"
}
]
},
{
"kind": "nodejs:12",
"default": false,
"image": {
"prefix": "openwhisk",
"name": "action-nodejs-v12",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"python": [
{
"kind": "python:2",
"default": false,
"image": {
"prefix": "openwhisk",
"name": "python2action",
"tag": "1.13.0-incubating"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
},
{
"kind": "python:3",
"default": true,
"image": {
"prefix": "openwhisk",
"name": "python3action",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"swift": [
{
"kind": "swift:5.4",
"default": true,
"image": {
"prefix": "openwhisk",
"name": "action-swift-v4.2",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"java": [
{
"kind": "java:8",
"default": true,
"image": {
"prefix": "openwhisk",
"name": "java8action",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
},
"requireMain": true
}
],
"php": [
{
"kind": "php:7.3",
"default": false,
"deprecated": false,
"image": {
"prefix": "openwhisk",
"name": "action-php-v7.3",
"tag": "nightly"
},
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
},
{
"kind": "php:7.4",
"default": true,
"deprecated": false,
"image": {
"prefix": "openwhisk",
"name": "action-php-v7.4",
"tag": "nightly"
},
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"ruby": [
{
"kind": "ruby:2.5",
"default": true,
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
},
"image": {
"prefix": "openwhisk",
"name": "action-ruby-v2.5",
"tag": "nightly"
}
}
],
"go": [
{
"kind": "go:1.17",
"default": true,
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
},
"image": {
"prefix": "openwhisk",
"name": "action-golang-v1.17",
"tag": "nightly"
}
}
],
"dotnet": [
{
"kind": "dotnet:2.2",
"default": true,
"deprecated": false,
"requireMain": true,
"image": {
"prefix": "openwhisk",
"name": "action-dotnet-v2.2",
"tag": "nightly"
},
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"ballerina": [
{
"kind": "ballerina:0.990",
"default": true,
"image": {
"prefix": "openwhisk",
"name": "action-ballerina-v0.990.2",
"tag": "nightly"
},
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
}
}
],
"rust": [
{
"kind": "rust:1.34",
"default": true,
"deprecated": false,
"attached": {
"attachmentName": "codefile",
"attachmentType": "text/plain"
},
"image": {
"prefix": "openwhisk",
"name": "actionloop-rust-v1.34",
"tag": "latest"
}
}
]
},
"blackboxes": [
{
"prefix": "openwhisk",
"name": "dockerskeleton",
"tag": "nightly"
}
]
}`)
View Source
var SupportedRunTimes map[string][]string
Functions ¶
func ConvertToMap ¶
func ConvertToMap(op OpenWhiskInfo) (rt map[string][]string)
func DefaultRuntimes ¶
func DefaultRuntimes(op OpenWhiskInfo) (rt map[string]string)
func FileExtensionRuntimes ¶
func FileExtensionRuntimes(op OpenWhiskInfo) (ext map[string]string)
func FileRuntimeExtensions ¶
func FileRuntimeExtensions(op OpenWhiskInfo) (rte map[string]string)
func ListOfSupportedRuntimes ¶
Types ¶
type Limit ¶
type Limit struct { Apm uint `json:"actions_per_minute"` Tpm uint `json:"triggers_per_minute"` ConAction uint `json:"concurrent_actions"` }
Structs used to denote the OpenWhisk Runtime information
type OpenWhiskInfo ¶
type OpenWhiskInfo struct { Support SupportInfo `json:"support"` Desc string `json:"description"` ApiPath []string `json:"api_paths"` Runtimes map[string][]Runtime `json:"runtimes"` Limits Limit `json:"limits"` }
func ParseOpenWhisk ¶
func ParseOpenWhisk(apiHost string) (op OpenWhiskInfo, err error)
We could get the openwhisk info from bluemix through running the command `curl -k https://openwhisk.ng.bluemix.net` hard coding it here in case of network unavailable or failure.
type SupportInfo ¶
Click to show internal directories.
Click to hide internal directories.