问题
we are testing a setup to automate building of NSF's using headless designer.
when a developer pushes a change to a repository on github ultimately this will result in an update of an NSF that resides on a Domino server.
local odp -> github -> local nsf with headless designer -> replace design nsf on domino server
however we noticed that the process stops sometimes. as far as we can see headless designer cannot "copy" (or translate) the design elements from the ODP into a new local NSF. so only an empty skeleton NSF is created.
we noticed that the stop does NOT occurs when the name property in the .project file of the ODP has changed.
so somehow it looks as designer still has the ODP in memory and does not notice any changes, unless it "finds" a "new" project via the project description "name".
anyone experienced something similar ? or recommendations how to start designer without any cache?
回答1:
An (in-?)elegant solution which I use, since I want to keep things tidy and separate for each build, is to compute a unique filename for the NSF. This will create a separate NSF for each build and while it will retain things like the Application name and template name, it is unique in enough other ways to not cause issues for the DDE headless build.
Defining in CI Config ]1 Using Env Vars in PowerShell ScriptFor example, I use an app specific prefix, defined in my GitLab CI config, which then is used with the unique build number (both set as environment variables), which my modified version of Egor Margineanu's PowerShell script picks up for the build.
Bottom Line
The unique namespacing means no conflict from DDE's perspective.
来源:https://stackoverflow.com/questions/42559623/headless-designer-and-odp-project-file