commit | a036dcb5eabc38d2afb6edb0b2bef55a182af952 | [log] [tgz] |
---|---|---|
author | David Grove <dgrove-oss@users.noreply.github.com> | Thu Feb 06 15:31:25 2020 -0500 |
committer | GitHub <noreply@github.com> | Thu Feb 06 15:31:25 2020 -0500 |
tree | b2e3f84c8d897188db3021b20acea07d8a94a644 | |
parent | 3619b81371d8ac5d2828ecc92c6f2d43eb2ca3e8 [diff] |
Fixes to v2.5 and v2.6 to get things working again (#43) * pin rack version to 2.0.x * switch from alpine to debian based images for ruby-2.6-actionloop The actionloop goproxy executable fails to run in the ruby-2.6-alpine image, but works just fine in the debian based ruby-2.6 image. Since action-ruby-v2.5 is based on ruby-2.5 (and not ruby-2.5-alpine) it seems better to use the larger image anyways, so not worth debugging why the actionloop proxy isn't running on alpine.
To use as a docker action
wsk action update myAction my_action.rb --docker openwhisk/action-ruby-v2.5
This works on any deployment of Apache OpenWhisk
To use as a kind action
wsk action update myAction my_action.rb --kind ruby:2.5
./gradlew core:ruby2.5Action:distDocker
This will produce the image whisk/action-ruby-v2.5
Build and Push image
docker login ./gradlew core:ruby2.5Action:distDocker -PdockerImagePrefix=$prefix-user -PdockerRegistry=docker.io
Deploy OpenWhisk using ansible environment that contains the kind ruby:2.5
Assuming you have OpenWhisk already deploy localy and OPENWHISK_HOME
pointing to root directory of OpenWhisk core repository.
Set ROOTDIR
to the root directory of this repository.
Redeploy OpenWhisk
cd $OPENWHISK_HOME/ansible ANSIBLE_CMD="ansible-playbook -i ${ROOTDIR}/ansible/environments/local" $ANSIBLE_CMD setup.yml $ANSIBLE_CMD couchdb.yml $ANSIBLE_CMD initdb.yml $ANSIBLE_CMD wipe.yml $ANSIBLE_CMD openwhisk.yml
Or you can use wskdev
and create a soft link to the target ansible environment, for example:
ln -s ${ROOTDIR}/ansible/environments/local ${OPENWHISK_HOME}/ansible/environments/local-ruby wskdev fresh -t local-ruby
To use as docker action push to your own dockerhub account
docker tag whisk/ruby2.5Action $user_prefix/action-ruby-v2.5 docker push $user_prefix/action-ruby-v2.5
Then create the action using your the image from dockerhub
wsk action update myAction my_action.rb --docker $user_prefix/action-ruby-v2.5
The $user_prefix
is usually your dockerhub user id.
Install dependencies from the root directory on $OPENWHISK_HOME repository
./gradlew install
Using gradle to run all tests
./gradlew :tests:test
Using gradle to run some tests
./gradlew :tests:test --tests *ActionContainerTests*
Using IntelliJ: