We have an automated generate/deployment, but I’m running into some issues.
We have .55 deployed. I expect .56 - with Data migration based on .55.
However, for a reason unknown to me, it throws an error; (base64 decode)
“Cannot create a deployment package because the version control source, MAIN > 2023-06-22 14:52 does not have an up-to-date program object archive. \r\n\r\nMake sure to generate definition and source code of MAIN - 2023-06-22 14:52 before continuing."
How can I generate the Definition/Source for this version, without creation a new version? I’ve tried generating a version based on .54, but it create a new version. I’ve tried generating, removing, etc. When I set the Data Migration based on .54 its works. BUT of course the upgrade script will fail due to existing domains etc.
Currently we have these;
In the past i could go back a version, re-generate that version, and all would be good. But with the new flow of working, I’m kinda lost.
What to do?!
Thanks!
Alexander
Page 1 / 1
Hey Alexander,
I expect that the .55 version is currently not generated fully/correctly and that is why the SF is providing you with this error while trying to create a deployment package.
It should be possible to specify a specific model version when generating the definition (see the image below), generating the definition should also refresh the program objects for said version.
In your case it should be possible to select the 6/22/2023 2:52:16 PM a.k.a. 0.01.055 version as the source model version in this pop-up, and then generate the definition.
After you have done that I wouldn't expect any issues from arising while generating the deployment package for your .56 version, assuming that the source version for the .56 is set to be the .55. You can check this either in Model overview > Branches > Form > Origin branch/Origin model version or by going to the Data migration screen and checking/updating the source there using the Set source for data migration and upgrade task.
Hopefully this helps.
Kind regards,
Renée
Hi Renee,
Thanks for thinking along!
I’ve tried this, following your steps, but I’ve got a feeling I’m missing a minor thingy.
I do not see anything with different from what you describe though. However, doing this, same error.
After generating the version .55, through the - Creation screen and Task ‘Generate Definition’, selecting Specific Model; Branch MAIN/ Version .55 Source Model version .055 I get a New version;
I do not expect a new version, since I only want to correct to Program Objects for an existing version.
Side note; Since the error also stated ‘generate Source’ - should this not be done? I’ve tried it both ways, same outcome.
In the MAIN (branch I’m deploying) the Merging/Origin is empty. And Read only. So I can’t set it.
In the Data Migration I always set the Previously released version manually, to prevent errors. Sometimes It does select the correct version, but more often it select a version 2 or 3 ago…
Alexander
Heyhey,
First of all, executing a Generate definition will always create a new model version, this is not something that you should be worried about, it's just the way that the Software Factory works.
Unfortunately it is rather difficult to determine where things are going wrong based on just your text and that screenshot alone.
Could you perhaps create a ticket for this so that we can dive into it in more detail with a possible reproduction?
Hi Renée,
I was on holiday and not sure what in the end fixed it. Fiddled with some generates and versions and if I remember correctly running and/or editing some scripts manually. However, it worked in the end.
It's just not very transparent. 99 times things go without a hitch. But sometimes weird merging errors, generating problems, data migration not set correctly… And it is often not very clear how to fix things.
With the whole ‘Versions’ out the window and 'Branches’ incoming, we have quite a bit more problems with creating and deploying and such.
Perhaps an Event is an idea? With best practices and such. I see more and more topics regarding this in the community… and in the immortal words of Whitney"I believe the children are our future, Teach them well and let them lead the way”
Blommetje
Hi Renee,
We're having similar issues at VDL. When you select a source version that doesn't have program objects it appears that it doesn't automatically generate them for you. But instead shows the message below in the notification bar.
In this instance I was able to easily regenerate the program object of this version/branch by running creation for that branch, because the named version was the last version in the branch. However, in other branches we have production databases on versions that are not the latest in the branch, and this will become a problem.
For example, in the image below we have specific named version at certain points in time. We have multiple production databases running the 2023.02.01 version of the 2023.02 branch. The program object are currently available. But if they're lost I have no way of generating them again.
So I would like to reiterate the question on how to generate program objects for older versions.
Thanks in advance, Joey
Hi All,
I was facing the same issue and created a new branch for the specific model version. After that switched to that branch and created it fully. When switching back to the MAIN, you can use the created branch as source for data migration and create a smart upgrade script. It seems to work, but it could be easier.