- This solution is deployed using Terraform which is available in the Google Cloud Shell, which is also the preferred way to deploy the solution for testing and demo purposes
- While some Terraform knowledge is useful, it is not necessary
- This solution requires a dedicated GCP project
- Use the Open in Cloud Shell button above to clone the git repository (recommended) or manually clone the repository
- Setup a Service Account for Terraform and make sure your user can impersonate the service account
- Create a dedicated GCP Project for this solution
- In the newly created GCP Project in IAM grant
roles/ownerto the Terraform Service Account
Create a Terraform variable file and define all necessary variables. This will setup the solution specific to your needs.
- Copy the
terraform.tfvarsfile from theexamplesfolder to the base folder of your solution e.g. usingcp examples/terraform.tfvars . - Edit the
terraform.tfvarsfile and adapt to your needs. Check thevariables.tffile for the definition and further information on available variables
- Initialize Terraform with
terraform init - Apply Terraform Configuration with
terraform apply
The solution expects that files are uploaded to the upload GCS Bucket.
Once a document is uploaded, a Google Cloud Workflow will be triggered to process the document.
If terraform takes a long time, you can try speeding it up by adding the parameter --parallelism to terraform apply (default is 10) e.g.
terraform apply --parallelism=20If you use a GCS backend bucket for terraform and get an error during terraform init it may be due to the Application Default Credentials not being set to the right project. Replace <your-project> and run:
gcloud auth application-default login --project <your-project>