Packages

The Package entity schema is used to define an OpenWhisk package within a manifest.

Fields

Grammar

<packageName>:
    version: <version>
    license: <string>
    repositories: <list of Repository>
    actions: <list of Action>
    sequences: <list of Sequence>
    triggers: <list of Trigger>
    rules: <list of Rule>
    feeds: <list of Feed>
    compositions: <list of Composition>
    apis: <list of API>

Example

my_whisk_package:
  description: A complete package for my awesome action to be deployed
  version: 1.2.0
  license: Apache-2.0
  actions:
    my_awsome_action:
      <Action schema>
  triggers:
    trigger_for_awesome_action:
      <Trigger schema>
  rules:
    rule_for_awesome_action>
      <Rule schema>

Requirements

  • The Package name MUST be less than or equal to 256 characters.
  • The Package entity schema includes all general Entity Schema fields in addition to any fields declared above.
  • A valid Package license value MUST be one of the Linux SPDX license values; for example: Apache-2.0 or GPL-2.0+, or the value ‘unlicensed’.
  • Multiple (mixed) licenses MAY be described using using NPM SPDX license syntax.
  • A valid Package entity MUST have one or more valid Actions defined.

Notes

  • Currently, the ‘version’ value is not stored in Apache OpenWhisk, but there are plans to support it in the future.
  • Currently, the ‘license’ value is not stored in Apache OpenWhisk, but there are plans to support it in the future.
  • The Trigger and API entities within the OpenWhisk programming model are considered outside the scope of the Package. This means that Trigger and API information will not be returned when using the OpenWhisk Package API:
    • $ wsk package list <package name>
  • However, their information may be retrieved using respectively:
    • $ wsk trigger list -v
    • $ wsk api list -v