cloudfoundry / cloudfoundry/cf-java-client

Metadata manifest attribute not supported

Open
#1,296 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
334
Forks
319
PR merge metrics
No merged PRs in 30d

Description

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.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin at ApplicationManifestUtilsV3.read and write, using the provided manifest and output as the reproduction. Trace how metadata is represented during that round trip, preserve the labels and annotations described in the issue, and verify that the resulting manifest retains them.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.