Вы знакомитесь с OpenWhisk и пишете простое действие JavaScript с помощью hello.js?
cat hello.js function main() { return {payload: 'Hello World'}; }
Если да, хотели бы вы автоматизировать развертывание этого экшена hello world?
Если это так, продолжайте читать эту статью. Я собираюсь показать вам, как использовать openwhisk-wskdeploy для автоматизации развертывания действия Hello World.
Условие:
Шаг 1. Создайте файл манифеста (manifest.yaml) с помощью:
packages: helloworld: actions: helloworld: location: src/hello.js runtime: nodejs:6 outputs: payload: type: string description: a simple greeting message, Hello World.
Шаг 2. Создайте файл развертывания (deployment.yaml) с помощью:
application: name: SampleHelloWorld namespace: _ packages: helloworld: actions: helloworld:
Этот файл развертывания является совершенно необязательным. Вы можете развернуть helloworld
, просто используя файл манифеста из шага 1.
Шаг 3. Убедитесь, что структура каталогов похожа на следующую:
ls -1R ~/SampleHelloWorldApp/ deployment.yaml manifest.yaml src/ ./src: hello.js
Шаг 4. Разверните действие Hello World
./wskdeploy -p ~/SampleHelloWorldApp/ ____ ___ _ _ _ _ _ /\ \ / _ \ _ __ ___ _ __ | | | | |__ (_)___| | __ /\ /__\ \ | | | | '_ \ / _ \ '_ \| | | | '_ \| / __| |/ / / \____ \ / | |_| | |_) | __/ | | | |/\| | | | | \__ \ < \ \ / \/ \___/| .__/ \___|_| |_|__/\__|_| |_|_|___/_|\_\ \___\/ |_| Packages: Name: helloworld * action: helloworld bindings: Triggers: Rules Do you really want to deploy this? (y/N): y Deploying pacakge helloworld ... Done! Deploying action helloworld/helloworld ... Done! Deployment completed successfully.
Шаг 5. Проверьте развертывание
wsk action invoke --blocking --result helloworld/helloworld { "payload": "Hello World" }
Наслаждаться!
Следите за более сложной автоматизацией развертывания с помощью действий, триггеров и правил.