Integrating into CI/CD
While it’s easy to start using Functions straight from web dashboard, it’s a good practice to keep the source in source control management (SCM), also known as version control systems such as:
Bitbucket pipelines
Bitbucket function example can be found here: https://bitbucket.org/rusenas/webhookrelay-function-example/src/master/.
Updates are done using Bitbucket pipelines and the official Webhook Relay pipe which deploys your code.
Setup
Create a new function here https://my.webhookrelay.com/functions (or using
relay
CLI)Get your access token key & secret https://my.webhookrelay.com/tokens
Configure Bitbucket repository settings with access token:
- Go to “Repository settings”
- Click on “Repository variables” (if pipelines are not enabled, enable them)
- Add two environment variables RELAY_KEY (with value from the access token ‘key’) and RELAY_SECRET (with value from the access token ‘secret’)
Create
bitbucket-pipelines.yml
file in your repository root directory:image: golang:1.12 pipelines: default: - step: script: - pipe: webhookrelay/webhookrelay-function-deploy:0.2.4 variables: FUNCTION_NAME: 'name of your functions' # Replace with your function name FUNCTION_FILE: 'function_file_name.lua' # Replace with your function filename RELAY_KEY: $RELAY_KEY RELAY_SECRET: $RELAY_SECRET
That’s it, you can now push your functions and get them updated: