This module implements a custom version of what the Temporal autosetup image is doing. Because Temporal does not recommend the autosetup be used in production, we had to add some modifications. It ensures that the temporalDB schema will get upgraded if the temporal version is updated.
tools/bin/test_temporal_migration.sh
is available to test that a bump of the temporal version won't break the docker compose build. Here is what
the script does:
- checkout master
- build the docker image
- run docker compose up in the background
- Sleep for 75 secondes
- shutdown docker compose
- checkout the commit being tested
- build the docker image
- run docker compose up.
At the end of the script you should be able to access a local airbyte in localhost:8000
.
Airbyte publishes an image called airbyte/temporal-auto-setup which is built for both Intel-based and ARM-based systems.
This is because at the time of this writing, Temporal only offers their temporalio/auto-setup image for Intel-based (amd64) systems.
Airbyte re-publishes this image
as airbyte/temporal-auto-setup:1.13.0-amd64
, and also runs the build-temporal.sh
script in this repository on an ARM-based system to build and
publish airbyte/temporal-auto-setup:1.13.0-arm64
.
Finally, Airbyte creates and publishes a manifest list with both images as airbyte/temporal-auto-setup:1.13.0 like so:
docker manifest create airbyte/temporal-auto-setup:1.13.0 \
--amend airbyte/temporal-auto-setup:1.13.0-amd64 \
--amend airbyte/temporal-auto-setup:1.13.0-arm64
This process will need to be replicated for any future version upgrades beyond 1.13.0
. See the original issue for more info.