Working with feature branches
When working withing a repository that contains multiple stacks and demos as we at Stackable have it is recommended to develop and test stacks ands demos in a feature branch before merging them into main.
The following sections covers stacks but it works exactly the same way for demos.
The workflow is as follows:
1. Change plainYaml attribute to local
Modify you stack to use local files. If you have the follow stack:
stacks:
data-lakehouse-iceberg-trino-spark:
description: Data lakehouse using Iceberg lakehouse on S3, Trino as query engine, Spark for streaming ingest and Superset for data visualization
stackableRelease: 22.11
labels:
- foo
manifests:
- plainYaml: https://raw.githubusercontent.com/stackabletech/stackablectl/main/stacks/data-lakehouse-iceberg-trino-spark/hive-metastores.yaml
- plainYaml: https://raw.githubusercontent.com/stackabletech/stackablectl/main/stacks/data-lakehouse-iceberg-trino-spark/trino.yaml
- plainYaml: https://raw.githubusercontent.com/stackabletech/stackablectl/main/stacks/data-lakehouse-iceberg-trino-spark/zookeeper.yaml
change it to
stacks:
data-lakehouse-iceberg-trino-spark:
description: Data lakehouse using Iceberg lakehouse on S3, Trino as query engine, Spark for streaming ingest and Superset for data visualization
stackableRelease: 22.11
labels:
- foo
manifests:
- plainYaml: stacks/data-lakehouse-iceberg-trino-spark/hive-metastores.yaml
- plainYaml: main/stacks/data-lakehouse-iceberg-trino-spark/trino.yaml
- plainYaml: main/stacks/data-lakehouse-iceberg-trino-spark/zookeeper.yaml
Afterwards always add the stacks.yaml to your stackablectl invocations, to use the local stacks.yaml, which in turn uses the local files for spinning up the stack.
You can do this by using the flag --additional-releases-file
, --additional-stacks-file
or --additional-demos-file
.