walt.tf โ Infrastructure as code for walt
With the contents of this repository, you can create the set of services that walt depends on. The Terraform HCL files assume you'll use the Aiven services.
In order to be able to create the infrastructure and configure walt, you'll need the following:
- Make - To execute the ready-to-use commands
- Python >= 3.8 - To install and run walt
- Terraform - To provision the infrastructure
- jq - To generate walt's config and certificate files
Follow these instructions once you cloned the repository.
Before you proceed, you must open variables.tf in you editor and define the
variables according to your Aiven account.
Note: You'll be prompted for confirmation by
terraform apply
In case you want all steps below to be executed at once, run make all.
Otherwise, here are the steps:
-
After cloning the repo, ensure the requirements are met:
$ make assert-requirements -
Install walt:
$ make install-walt -
Create infrastructure with terraform:
$ make terraform-apply -
Generate certificate files:
$ make generate-certs -
Generate walt's config file:
$ make generate-config -
Check the contents of walt's config file:
$ cat config.toml -
Create database tables on Postgre:
$ make create-tables
After reviewing config.toml, you might want to change it as you see fit. To
better understand what each config entry represents, check walt's
README.
From here, you're hopefully ready to consume/produce results:
$ walt -c config.toml consume
$ walt -c config.toml produce
Yo may want to run produce and consume in different shell
sessions/tabs/windows.
Code in this repository is distributed under the terms of the BSD 3-Clause License (BSD-3-Clause).
See LICENSE for details.