keboola / kbc-project-backup
Backup KBC project
1.19.0
2025-04-17 11:05 UTC
Requires
- php: ^8.2
- keboola/notification-api-php-client: ^3.0
- keboola/php-file-storage-utils: ^0.2.6
- keboola/php-temp: ^2.0
- keboola/retry: ^0.5.1
- keboola/storage-api-client: ^15.2
- microsoft/azure-storage-blob: ^1.5
- monolog/monolog: ^2.3
Requires (Dev)
- cweagans/composer-patches: ^1.7
- keboola/coding-standard: ^15.0
- php-parallel-lint/php-parallel-lint: ^1.4
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^11.3
- symplify/vendor-patches: ^11.3
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
PHP library for easy backup of KBC project into Amazon Simple Cloud Storage Serviceā (S3)
Usage
Library is available as composer package.
Installation
composer require keboola/php-storage-api-backup
Development
Clone github repository and build Docker container
git clone https://github.com/keboola/php-storage-api-backup.git
cd php-storage-api-backup
docker-compose build
Create .env file from this template
TEST_AWS_STORAGE_API_URL= TEST_AWS_STORAGE_API_TOKEN= TEST_AWS_ACCESS_KEY_ID= TEST_AWS_SECRET_ACCESS_KEY= TEST_AWS_REGION= TEST_AWS_S3_BUCKET= TEST_AZURE_STORAGE_API_URL= TEST_AZURE_STORAGE_API_TOKEN= TEST_AZURE_ACCOUNT_NAME= TEST_AZURE_ACCOUNT_KEY= TEST_AZURE_CONTAINER_NAME= TEST_GCP_STORAGE_API_URL= TEST_GCP_STORAGE_API_TOKEN= TEST_GCP_BUCKET= TEST_GCP_SERVICE_ACCOUNT=
TEST_AWS_STORAGE_API_*variables are from the project with AWS S3 backend which you want to backupTEST_AWS_*variables are from the S3 bucket the backup will be stored to (Use aws-cf-template.json CloudFormation stack template to create all required AWS resources)TEST_AZURE_STORAGE_API_*variables are from the project with Azure Blob storage backend which you want to backupTEST_AZURE_ACCOUNT_create new Storage Account in your Azure SubscriptionTEST_AZURE_CONTAINER_NAMEcontainer which will be created in your Storage AccountTEST_GCP_STORAGE_API_*variables are from the project with GCP Storage backend which you want to backupTEST_GCP_BUCKETbucket in your Google StorageTEST_GCP_SERVICE_ACCOUNTService account with permissions to write to the bucket
docker-compose run --rm tests
License
MIT licensed, see LICENSE file.