Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Patches do not support inserting into the middle of existing arrays #2741

Open
jackwilsdon opened this issue Oct 19, 2023 · 1 comment
Open
Labels
kind/bug Something isn't working

Comments

@jackwilsdon
Copy link
Contributor

What happened?
Patches do not support inserting into the middle (or start) of existing arrays.

What did you expect to happen instead?
Patches can insert values into the middle (or start) of an existing array, per the JSON Patch specification: https://datatracker.ietf.org/doc/html/rfc6902#appendix-A.2

How can we reproduce the bug? (as minimally and precisely as possible)

  1. Save this devspace.yaml:
    version: v2beta1
    
    hooks:
      - events:
          - event
        command: echo first
      - events:
          - event
        command: echo second
      - events:
          - event
        command: echo third
    
    profiles:
      - name: insert-first
        patches:
          - op: add
            path: hooks[0]
            value:
              events:
                - event
              command: echo new first
      - name: insert-last
        patches:
          - op: add
            path: hooks
            value:
              events:
                - event
              command: echo new last
  2. Run devspace print -p insert-first and get the following error:
    fatal yaml: unmarshal errors:
      line 5: mapping key "command" already defined at line 2
      line 6: mapping key "events" already defined at line 3
    
  3. Run devspace print -p insert-last and get the following output (correctly added to end of hooks):
    version: v2beta1
    name: test
    hooks:
        - events:
            - event
          command: echo first
        - events:
            - event
          command: echo second
        - events:
            - event
          command: echo third
        - events:
            - event
          command: echo new last

Local Environment:

  • DevSpace Version: 6.3.3
  • Operating System: macOS Sonoma 14.0
  • ARCH of the OS: arm64
@jackwilsdon jackwilsdon added the kind/bug Something isn't working label Oct 19, 2023
@lizardruss
Copy link
Collaborator

Thanks for reporting this! Yes it looks to work for simple values, but not for objects. We'll look into a fix!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants