Menu

Git versioning and deletion of objects

Help
Daniel
2025-10-06
2025-10-08
  • Daniel

    Daniel - 2025-10-06

    Dear all,

    We are using JS7 2.8.1 with a Git repository, where all object types are mapped to "local".
    Adding or modifying objects and commiting them works fine, but I was not able to properly delete objects from the repository:

    • The objects were removed through JOC, also dropped from the recycle bin.
    • The local repo checkout does not have any files left. Also the latest repository version has the JSON files dropped.
    • I call "Store to Git Repository" with all folders marked. Deleted objects aren't shown there in this pop-up.
    • But then: the JSON files for deleted objects appear in the local repository directory and get committed and pushed as soon as I execute the "Push" command.

    So, where do those objects come from that are resurrected when calling "Store to Git Repository"? And how can I properly get rid of them?

    Best regards,
    Daniel

     
    • Santiago Aucejo

      Santiago Aucejo - 2025-10-07

      Hello Daniel,
      Please have a look at the docs at https://kb.sos-berlin.com/display/JS7/JS7+-+Git+Repository+Interface#JS7GitRepositoryInterface-GitOperations .

      if you want to delete objects from the local repository you should use the "Delete from Git Repository" operation instead of the "Store to Git Repository" operation you are using.

      When you use the "Store to Git Repository" operation in your case, the following will happen:

      • items from that folder, that have been previously deployed to one or more controllers will be recognized and "stored" to the local Git repository
      • the transfer of configurations over Git takes deployed items into account as these items are considered "tested by a user".

      So, where do those objects come from that are resurrected when calling "Store to Git Repository"?

      As mentioned above, the objects you see after storing again, are the objects known through the deployment history.

      Best Regards
      Santiago

       

      Last edit: Santiago Aucejo 2025-10-07
  • Daniel

    Daniel - 2025-10-07

    Hello Santiago,

    Thank you for your fast response. So, does it mean: "Store to Git Repository" also exports a job as JSON file to the local directory although the job

    • is not deployed on any controller
    • is neither scheduled nor ordered
    • was removed from the inventory
    • was dropped in the recycle bin
    • was already dropped in the repo (locally and remote)

    -- just because it was once in the system somewhere in the past?

    Our problem is: We might update jobs and forget to update them in the repository, so it might happen, we just want "to store everything", so we mark the folders and tell JS7 to export all definitions recursively. And then, suddenly old jobs appear again in the export. This might lead to confusion, especially if someone runs an "Update from Repository" later and those outdated jobs are present again as drafts.

    So, what is the proper workflow to get rid of a job (or schedule or whatever) everywhere: in the inventory and the repo, in a way that it won't resurrect in any further operation?

    Best Regards
    Daniel

     
    • Santiago Aucejo

      Santiago Aucejo - 2025-10-08

      Hello Daniel,
      if a workflow is not deployed, meaning

      • the workflow is currently not deployed to any controller or
      • deleted from any controller due to a "remove" or "revoke" operation,

      then it should not reappear when you "store everything" to the local Git repository.

      Best Regards
      Santiago

       
  • Daniel

    Daniel - 2025-10-08

    Hello Santiago,

    Good to know that my assumption was the same.

    Unfortunately, I see a different behavior:

    • I've checked the working copy, was clean.
    • There is no job "dwtest" in the Inventory (any more).
    • I click on a folder, select "Store to Git Repository". In the popup, there is no "dwtest" workflow.
    • After clicking on "Submit", I get a new untracked file in the repo (dwtest.workflow.json)

    Can you reproduce this?

    I also wonder where this job data comes from if everything was wiped. Are there any leftovers in the database?

    Best Regards
    Daniel

     
  • Santiago Aucejo

    Santiago Aucejo - 2025-10-08

    Hello Daniel,
    thank you for your findings.
    I can reproduce the issue and have raised an issue in our issue management to be resolved with release 2.8.2.
    To track to progress you can find the issue here:

    In the description of the issue i have posted a rather ugly workaround, but it should work at least.

    Thank you and Best Regards
    Santiago

     

Log in to post a comment.

MongoDB Logo MongoDB