项目作者: keboola

项目描述 :
Project migration - Migrate Orchestrations
高级语言: PHP
项目地址: git://github.com/keboola/app-orchestrator-migrate.git
创建时间: 2018-05-16T11:17:44Z
项目社区:https://github.com/keboola/app-orchestrator-migrate

开源协议:MIT License

下载


Project Migration - Migrate Orchestrations

Build Status

You can use Project Migrate application which orchestrates whole process of KBC project migration from one KBC stack to another.

Application migrates Orchestrations between two Keboola Connection projects.

You must run this application in destination project and the project must contain any existing orchestrations.

Application flow

  1. Validates if current project has any orchestrations configured
  2. Creates orchestrations with:
    • New KBC Storage API token with permissions to all storage buckets and configurations
    • Crontab record, tasks and notifications
  3. Fixes IDs of orchestrations configured in tasks (child orchestrations)

All orchestrations are automatically disabled!

Usage

Use #sourceKbcToken and sourceKbcUrl parameters to create asynchronous job.

  • #sourceKbcToken - Source project KBC Storage API token
  • sourceKbcUrl - KBC Storage API endpoint for source project region
  1. curl -X POST \
  2. https://docker-runner.keboola.com/docker/keboola.app-orchestrator-migrate/run \
  3. -H 'Cache-Control: no-cache' \
  4. -H 'X-StorageApi-Token: **STORAGE_API_TOKEN**' \
  5. -d '{
  6. "configData": {
  7. "parameters": {
  8. "#sourceKbcToken": "**SOURCE_PROJECT_KBC_TOKEN**",
  9. "sourceKbcUrl": "**SOURCE_PROJECT_KBC_URL**"
  10. }
  11. }
  12. }'

Development

  • Clone this repository:
  1. git clone https://github.com/keboola/app-orchestrator-migrate.git
  2. cd app-orchestrator-migrate
  • Create .env file an fill variables:
  1. TEST_SOURCE_STORAGE_API_TOKEN=
  2. TEST_SOURCE_STORAGE_API_URL=
  3. TEST_DESTINATION_STORAGE_API_TOKEN=
  4. TEST_DESTINATION_STORAGE_API_URL=
  • Build Docker image
  1. docker-compose build
  • Run the test suite using this command

    Tests will delete all configured orchestrations in both KBC projects!

  1. docker-compose run --rm dev composer ci

Integration

For information about deployment and integration with KBC, please refer to the deployment section of developers documentation