registry │ demozenmlcontainerregistry.azurecr.io ┃┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

```

Combine all Stack Components together into a Stack and set it as active (also throw in a local Image Builder for completion):Copyzenml image-builder register local --flavor local

Example Command Output

```

Running with active workspace: 'default' (global)

Running with active stack: 'default' (global)

Successfully registered image_builder `local`.

```

```sh

zenml stack register gcp-demo -a azure-demo -o aks-demo-cluster -c acr-demo-registry -i local --set

```

Example Command Output

```

Stack 'gcp-demo' successfully registered!

Active repository stack set to:'gcp-demo'

```

Finally, run a simple pipeline to prove that everything works as expected. We'll use the simplest pipelines possible for this example:Copyfrom zenml import pipeline, step

@step
def step_1() -> str:
    """Returns the `world` string."""
    return "world"

@step(enable_cache=False)
def step_2(input_one: str, input_two: str) -> None:
    """Combines the two strings at its input and prints them."""
    combined_str = f"{input_one} {input_two}"
    print(combined_str)

@pipeline
def my_pipeline():
    output_step_one = step_1()
    step_2(input_one="hello", input_two=output_step_one)

if __name__ == "__main__":
    my_pipeline()Saving that to a run.py file and running it gives us:

Example Command Output

```

$ python run.py

Registered pipeline simple_pipeline (version 1).

Building Docker image(s) for pipeline simple_pipeline.

Building Docker image demozenmlcontainerregistry.azurecr.io/zenml:simple_pipeline-orchestrator.

Including integration requirements: adlfs==2021.10.0, azure-identity==1.10.0, azure-keyvault-keys, azure-keyvault-secrets, azure-mgmt-containerservice>=20.0.0, azureml-core==1.48.0, kubernetes, kubernetes==18.20.0

No .dockerignore found, including all files inside build context.