Skip to content

heat: generate config for heat.conf - #137

Open
slagle wants to merge 1 commit into
openstack-k8s-operators:mainfrom
slagle:heat
Open

heat: generate config for heat.conf#137
slagle wants to merge 1 commit into
openstack-k8s-operators:mainfrom
slagle:heat

Conversation

@slagle

@slagle slagle commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

For the heat-engine image, heat-manage db_sync requires the default
heat.conf, otherwise it fails with the error: ERROR: No
'script_location' key found in configuration during heat db sync which
comes from alembic.

For the heat-api iamge, the keystone certificate can't be verified
without the default heat.conf in place.

Signed-off-by: James Slagle jslagle@redhat.com

For the heat-engine image, heat-manage db_sync requires the default
heat.conf, otherwise it fails with the error: ERROR: No
'script_location' key found in configuration during heat db sync which
comes from alembic.

For the heat-api iamge, the keystone certificate can't be verified
without the default heat.conf in place.

Signed-off-by: James Slagle <jslagle@redhat.com>
@openshift-ci

openshift-ci Bot commented Aug 26, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign abays for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@slagle
slagle requested review from elfiesmelfie and rabi August 26, 2026 14:31
@rabi

rabi commented Aug 27, 2026

Copy link
Copy Markdown

Are we sure it's not some packaging issue, as I'm pretty convinced we don't need default heat.conf?

ERROR: No 'script_location' key found in configuration during heat db sync which comes from alembic.

That key is in the package bundled ini https://github.com/openstack/heat/blob/master/heat/db/alembic.ini#L3 and it's looked from there https://github.com/openstack/heat/blob/master/heat/db/migration.py#L59-L62 not from heat.conf AFAIK.

Also db_sync runs with explicit --config-dir https://github.com/openstack-k8s-operators/heat-operator/blob/main/internal/heat/dbsync.go#L32, so there won't be any need for default heat.conf.

For the heat-api iamge, the keystone certificate can't be verified without the default heat.conf in place

heat-api can always read configuration from heat.conf.d https://github.com/openstack/heat/blob/81fc6092fee459fbfe659f2b8f70dcc0c4ba09b9/heat/api/openstack/wsgi.py#L4. Default generated heat.conf would not have any certificates etc.

Do you've the built images somewhere that I can check?

@rabi

rabi commented Aug 27, 2026

Copy link
Copy Markdown

I did build the images from s2i main and the deployed with openstack-k8s-operators/openstack-operator#2042 and did not see any issues. Am I missing something?

Note: I tagged heat-api image as heat-api-cfn after build though it was not required

stack@osp-df-4:~/work/install_yamls$ oc get openstackversion -n openstack -o jsonpath='{.items[0].spec.customContainerImages}' | jq
{
  "heatAPIImage": "quay.io/rabi/openstack-heat-api@sha256:678283d431e092a7b2cc86cd977176e328ab9d9ca3c7e91d84d6f46cb04730f6",
  "heatCfnapiImage": "quay.io/rabi/openstack-heat-api-cfn@sha256:678283d431e092a7b2cc86cd977176e328ab9d9ca3c7e91d84d6f46cb04730f6",
  "heatEngineImage": "quay.io/rabi/openstack-heat-engine@sha256:098295043fad2a0b2bb8642a61f7f9e7fcfff8c2e9dd8d4371ce60d0b1cce729"
}

stack@osp-df-4:~/work/install_yamls$ oc get po | grep heat
heat-api-6c59f956f6-bl4kw                     1/1     Running     0          20m
heat-cfnapi-cc98bf45c-bc6r2                   1/1     Running     0          22m
heat-engine-75c6c7f556-2bzl4                  1/1     Running     0          22m

stack@osp-df-4:~/work/install_yamls$ oc describe po/heat-api-6c59f956f6-bl4kw | grep Image
    Image:           quay.io/rabi/openstack-heat-api@sha256:678283d431e092a7b2cc86cd977176e328ab9d9ca3c7e91d84d6f46cb04730f6
    Image ID:        quay.io/rabi/openstack-heat-api-cfn@sha256:678283d431e092a7b2cc86cd977176e328ab9d9ca3c7e91d84d6f46cb04730f6
  Normal  Pulled          26m   kubelet            spec.containers{heat-api}: Successfully pulled image "quay.io/rabi/openstack-heat-api@sha256:678283d431e092a7b2cc86cd977176e328ab9d9ca3c7e91d84d6f46cb04730f6" in 530ms (530ms including waiting). Image size: 608479537 bytes.

stack@osp-df-4:~/work/install_yamls$ oc exec po/heat-api-6c59f956f6-bl4kw -- ls -alt /etc/heat
total 4
drwxr-xr-x. 1 heat heat   25 Aug 27 04:47 .
drwxr-xr-x. 1 root root   78 Aug 27 04:47 ..
drwxrwsrwt. 3 root heat  180 Aug 27 04:47 heat.conf.d
drwxr-xr-x. 2 heat heat   37 Aug 27 04:26 templates
-rw-r-----. 1 heat heat 3130 Aug 27 04:12 api-paste.ini
stack@osp-df-4:~/work/install_yamls$ oc exec po/heat-engine-75c6c7f556-2bzl4 -- ls -alt /etc/heat
total 0
drwxr-xr-x. 1 heat heat  25 Aug 27 04:45 .
drwxr-xr-x. 1 root root  67 Aug 27 04:45 ..
drwxrwsrwt. 3 root heat 180 Aug 27 04:45 heat.conf.d
drwxr-xr-x. 2 heat heat  26 Aug 27 04:29 environment.d
drwxr-xr-x. 2 heat heat  37 Aug 27 04:29 templates

stack@osp-df-4:~/work/install_yamls$ oc exec openstackclient -- openstack stack list

stack@osp-df-4:~/work/install_yamls$

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants