cookiecutter template for wanna-ml projects
In order to set up a WANNA ML project, one must have the following things:
- group of GCP projects with suffixes per environment (usually
-test
,-stage
,-prod
), we call them GCP project bundles - a bucket with name
wanna-<project_name>-<env>
- a service account with name
sa-wanna-<project_name>
- a pubsub notification channel named
ms-teams-wanna-<project name>-topic
Assuming all terraform is done and deployed we can quickly bootstrap a wanna-ml project using cookiecutter and answer a few questions like so:
pipx
is installed or alternatively you havecookiecutter
in your$PATH
pipx install cookiecutter
cookiecutter https://github.com/avast/wanna-ml-cookiecutter.git
Project name without wanna- prefix (project_name): genie-ai
project_owner_fullname (Joao Da Silva):
project_owner_email ([email protected]):
project_version (0.0.0):
project_description (Link to project page on Confluence):
gcp_project_id (your-gcp-project-id):
GCP Project bundle without tenant name (wanna):
gcp_region (europe-west1):
gcp_network_name (europe-west1-net):
gcp_subnetwork_name (europe-west1-subnet):
gcp_service_account_name (sa-wanna-genie-ai):
use_jupyter_notebooks [y/n] (y):
You may notice that with few fields we can bootstrap a project, whilst leaving the others to default will do just fine.
project_name
does not contain anywanna
words in itgcp_project_id
the initialtest
gcp project idgcp_project_bundle_name
the gcp project bundle where wanna-ml project will be deployed to. Just the project bundle, not the tenant name.
Once you have completed the cookiecutter you can cd
to the newly created folder,
read and run the README.md top down to explore how wanna-ml works and what it can do for you.