cf-java-client icon indicating copy to clipboard operation
cf-java-client copied to clipboard

Metadata manifest attribute not supported

Open JNKielmann opened this issue 6 months ago • 1 comments

The cloud foundry app manifest supports a metadata attribute for setting labels and annotations: https://docs.cloudfoundry.org/devguide/deploy-apps/manifest-attributes.html#metadata

However, this attribute seems to be ignored by the cf-java-client.

How to reproduce

Here is a minimal example that reproduces the issue:

ManifestV3 manifest = ApplicationManifestUtilsV3.read(Path.of("test-manifest-with-labels.yaml"));
ApplicationManifestUtilsV3.write(Path.of("test-manifest-result.yaml"), manifest);

Content of test-manifest-with-labels.yaml:

---
applications:
- name: test-app
  memory: 1G
  instances: 1
  metadata:
    labels:
      test-label: "test-value"

Content of test-manifest-result.yaml after the snippet above has run:

---
applications:
- name: test-app
  memory: 1G
  instances: 1

As you can see, the metadata information has been removed. When using the cf-java-client to deploy such a manifest, the metadata labels and annotations are therefore discarded. I would expect the attributes mentioned in the cloud foundry documentation to be supported by this client library, including the metadata attribute.

JNKielmann avatar Jul 18 '25 12:07 JNKielmann

Hi @JNKielmann !

Unfortunately, we are behind the v3 API by quite a bit. All contributions are welcome though, please feel free to open a PR to fix this issue. The code itself should be fairly trivial, but please ensure you add an integration test.

Kehrlann avatar Aug 18 '25 09:08 Kehrlann