This application allows run orchestration across different Keboola Connection projects.
Trigger has two modes:
- Only trigger external orchestration. Application ends when a new orchestration job is enqueued.
- Wait until finish mode. Application waits until enqueued job is finished and check job for success status.
First, create a new token in the KBC project with your orchestration. The token should have granted access for Orchestrator configurations. Setup an comprehensible description for the token, like "Orchestration Trigger - Orchestration name" etc.
curl -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "X-StorageApi-Token: **STORAGE_API_TOKEN**" \
--data-binary "description=**NEW_TOKEN_DESCRIPTION**&componentAccess[]=orchestrator" \
'https://connection.keboola.com/v2/storage/tokens'
Then you can setup the Orchestrator Trigger app.
#kbcToken- KBC Storage API tokenkbcUrl- KBC Storage API endpoint- https://connection.keboola.com for
USstack - https://connection.eu-central-1.keboola.com for
EUstack
- https://connection.keboola.com for
orchestrationId(integer) - ID of triggered orchestrationwaitUntilFinish(boolean, default false false) - Wait for job finish and check jobs status
- Clone this repository:
git clone https://github.com/keboola/app-orchestrator-trigger.git
cd app-orchestrator-trigger
- Create
.envfile an fill variables:
TEST_STORAGE_API_TOKEN=
TEST_STORAGE_API_URL=
TEST_COMPONENT_ID=
TEST_COMPONENT_CONFIG_ID=
TEST_COMPONENT_ID and TEST_COMPONENT_CONFIG_ID variables are because Orchestration requires at least one configured task in order to run.
The easiest way is create new empty transformation bucket. Then use "transformation" for TEST_COMPONENT_ID and bucket id for TEST_COMPONENT_CONFIG_ID.
- Build Docker image
docker-compose build
-
Run the test suite using this command
Tests will delete all configured orchestrations in your KBC project!
docker-compose run --rm dev composer ci
For information about deployment and integration with KBC, please refer to the deployment section of developers documentation