0
votes

we are trying to build an automation building environment for the Domino xpage database, The approach is using the headless designer feature , there are some links which I have followed are

presentation on integration work flow

Demo Xpage project

After this I tried to build the project just using maven as the above demo project contains a pom.xml . pom.xml code:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <artifactId>test</artifactId>
    <groupId>Forum</groupId>
    <version>1.0.0</version>
    <packaging>domino-nsf</packaging>

    <properties>
                <ddehd.designerexec>${notes-designer}</ddehd.designerexec>
                <ddehd.notesdata>${notes-data}</ddehd.notesdata>
        <ddehd.targetdbname>forum1.nsf</ddehd.targetdbname>
        <ddehd.odpdirectory>${basedir}/forum</ddehd.odpdirectory>

    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.openntf.maven</groupId>
                <artifactId>headlessdesigner-maven-plugin</artifactId>
                <version>1.3.0</version>
                <extensions>true</extensions>
                <configuration>

                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

I have done setup in maven settings.xml for the path of designer.exe and notes data for the headless designer purpose.So that this path is used in pom.xml for the specific projects. till here all the concepts are very much clear.

setting.xml changes

  <profiles>
     <profile>
      <id>test</id>


  <properties>
    <notes-program>C:\Program Files (x86)\IBM\Notes</notes-program>
    <notes-designer>C:\Program Files (x86)\IBM\Notes\designer.exe</notes-designer>
    <notes-data>C:\Program Files (x86)\IBM\Notes\Data\</notes-data>
  </properties>

    </profile>
   </profiles>
 <activeProfiles>
    <activeProfile>test</activeProfile>
  </activeProfiles>

Now I go the command line at the project path and enter 'mvn package' it works all as required. that is , it opens the designer , gets the ondisk project files (the current directory files of xpage project) and builds the new nsf ,

Till here all works perfect ,

But now when I am trying perform the same thing but just from jenkins by crating new Item with maven settings , The designer gets open but only seems in task manager , In this case there is no designer.exe command line opens at the build.

Jenkis tries to build the project till I manually end the designer.exe task from task manager.

I am just wondering is there any settings or permission access for the jenkins to work with headless designer ,

Any kind of suggestion would be helpful.

1
Is Jenkins running as Windows service? It might not see the directory - stwissel
Yes jenkins is running as a windows service - Ajit Hogade
Did you try running Jenkins as a regular app? - stwissel
Thanx it worked when I have run jenkins as a regular application instead of windows services. But now the other problems which I am facing is inside the 'program files (X86)/jenkins/workspaces/project_dir' Directory where the jenkins is having the project , I start build and the designer opens with splash screen and only shows loading... , But on the other hand when I copied whole jenkins to desktop and starts the jenkins via command line every thing works perfectly fine. Is there any permission issues with 'Program File (x86)' directory. - Ajit Hogade
Can you please post this as a answer , as I am not aware of why jenkins is not getting directory when it is running as a windows service , accepting the answer might help some one. - Ajit Hogade

1 Answers

2
votes

Domino Designer needs to run as a regular user. It wouldn't run when started as a Windows service. Also make sure your projects are NOT somewhere in the Program Files(x86) directory structure.

The right place for data files (both the NSF and the On_disk_Project) is in [Users]\[account-name-of-user-you-used]\LocalData\IBM\Notes\data]

Basically where data directory in a shared client install (no designer, just client) would be too