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
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
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
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
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
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
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:
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:
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
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:
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
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
-- 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
Hello Daniel,
if a workflow is not deployed, meaning
then it should not reappear when you "store everything" to the local Git repository.
Best Regards
Santiago
Hello Santiago,
Good to know that my assumption was the same.
Unfortunately, I see a different behavior:
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
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