- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to get a CI build going with Jenkins. I followed these instructions to get a headless build working: https://community.cypress.com/docs/DOC-10865
This works fine from a command line or from a batch file, but when I call the same batch files from Jenkins I get the following failure message:
Error: mgr.M0027: Argument passed in is not serializable.
Parameter name: value (App=cyprjmgr)
at System.Collections.ListDictionaryInternal.Add(Object key, Object value)
at CyDesigner.Common.Base.CyRsltOrErr`1.get_Value()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyWcdMgr.get_InstallBaseDir()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyDcPlugin.get_DeviceDataPath()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyDcPlugin.PostPluginsLoadedInit()
at CyDesigner.Framework.CyPlugin.InitializePlugins(IEnumerable`1 plugins)
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.LoadPlugins()
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.Run(CyApp app, CyErr& err)
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.Main(String[] args)
The full Jenkins output is shown below. Has anyone else had luck with this?
Started by user anonymous
Building in workspace C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc
[Switchbox_psoc] $ cmd /c call C:\Windows\TEMP\hudson5210422228259853648.bat
C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc>cd PSoC\Switchbox
C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc\PSoC\Switchbox>dir
Volume in drive C has no label.
Volume Serial Number is 747E-8C27
Directory of C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc\PSoC\Switchbox
01/12/2018 01:51 PM <DIR> .
01/12/2018 01:51 PM <DIR> ..
01/12/2018 02:38 PM <DIR> Switchbox.cydsn
01/12/2018 01:51 PM 1,265 Switchbox.cywrk
1 File(s) 1,265 bytes
3 Dir(s) 43,292,274,688 bytes free
C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc\PSoC\Switchbox>"c:\Program Files (x86)\Cypress\PSoC Creator\4.1\PSoC Creator\bin\cyprjmgr.exe" -w "C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc\PSoC\Switchbox\Switchbox.cywrk"
Error: mgr.M0027: Argument passed in is not serializable.
Parameter name: value (App=cyprjmgr)
at System.Collections.ListDictionaryInternal.Add(Object key, Object value)
at CyDesigner.Common.Base.CyRsltOrErr`1.get_Value()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyWcdMgr.get_InstallBaseDir()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyDcPlugin.get_DeviceDataPath()
at CyDesigner.Common.Db.DeviceDb.Catalog.CyDcPlugin.PostPluginsLoadedInit()
at CyDesigner.Framework.CyPlugin.InitializePlugins(IEnumerable`1 plugins)
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.LoadPlugins()
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.Run(CyApp app, CyErr& err)
at CyDesigner.Common.ProjMgmt.PrjMgrTool.CyPrjMgrTool.Main(String[] args)
cyprjmgr [-h] [-ver] [-wrk <workspace_name>] [-clean] [-build] [-rebuild]
[-archive <archive_level> <archive_as_zip>] [-t <toolchain>] [-c <config>]
[-p <TopProject>] [-n <TopDesign>] [-d <selectedDev>]
[-m <paramsFile>] [-import <Source_Project> <Source_Component>]
[-rename <component_name> <new_name>] [-delete <component_name>]
[-exclude <component_name>] [-l <NewPrjName>]
[-s] [-v <visibility>] [-prj <Target_Project>] [-cmp <Target_Component>]
[-addprj <prj_path>] [-cp <path>] [-con <Target_Project>] [-batch <file_name>]
[-updateComp <source_project> <source_component>] [-updatePrj <source_project>]
[-updateInst] [-updateDWInst] [-forceWrite] [-noCustBuild] [-noRefresh]
[-ol <compiler optimization level>] [-warn <High|Low|None>]
[-buildPreCompCust <Project>] [-updateInstIfNeeded]
[-ignoreDepsWarning] [-allowIllegalUpdates] [-export <IDE>] [-pdlPath <path>]
The following options are tool wide:
-h Displays this help message
-ver Displays the version and build number of cyprjmgr
The following options apply to the chosen workspace:
-wrk, -w Specifies the workspace to be used
-prj Specifies the target project on which all the command line
options will be targeted. In case target project is not
specified, Top Project of the workspace becomes the target
project
-p Sets the Top Project in the workspace
-cmp, -o Specifies the target component on which all the library options
will be targeted. In case target component is not specified,
the Top Block of the Target Project becomes the Target Component
-addprj Adds an existing project <prj_path> to the workspace
-l Adds a new empty library project with name <NewPrjName> to the
workspace
-d Sets the selected device of projects to be built
-cp Copies the entire workspace to the location specified by
<path>, all command line options will act on the copy created
The following four options target the entire workspace unless the
target project is set with -prj:
-clean Cleans the workspace/project
-build Builds the workspace/project
-rebuild Rebuilds the workspace/project
-archive Archives the workspace/project with different archiver levels
(complete/typical), and as zip or nozip
The following options apply to the target project:
-t Sets the tool chain the action should use (Keil, ARM etc.)
-c Sets configuration the action should use (Debug, Release)
-ol Sets compiler optimization level
-warn Sets compiler warning level
-n Sets the Top Design of the Top Project
-m Parameters file that will override the default parameter values
of the schematic in the TopDesign of the Top Project
-import Imports the Source Component from the Source Project into the
target project of the workspace
-rename Renames component_name in target project of the workspace to
new_name
-delete Deletes component from the disc
-exclude Excludes component from the target project of the workspace
-s Lists the external dependencies of the target project
-v Sets the visibility of the target component to true/false
-con Checks the consistency of the target project of the workspace
-batch Reads a file containing a series of commands, one on each line.
Executes the commands one by one. When batch option is used, all
other optional switches are ignored
-updateComp Updates a component in the Target Project from the source project
-updatePrj Updates the Target Project from the Source Project
-updateInst Updates the instances on the schematic with the latest components
-forceWrite Makes read-only files writable and then makes the change
-noCustBuild Delay building of customizer DLLs until the end (e.g., during
imports)
-noRefresh Disable updates from the refresh manager (Use with extreme care)
-buildPreCompCust Build customizer for a project
-updateDWInst Updates the design-wide instances with the latest components
-updateInstIfNeeded Update instances to minimum valid version
-ignoreDepsWarning Suppress SystemDepNotFoundOnDisk warning while building
primitives
-allowIllegalUpdates Allows updating instances to latest version, even if illegal
-export Exports the project to the target IDE. Valid targets are EWA, Eclipse and uVision
-generateDescFiles For all specified projects that have 'Generate description files'
enabled, generates the description files.
-verifyDescFileEnabled Verifies that all specified projects have 'Generate description files' enabled.
-verifyDescFileContents Verifies that all specified projects (that have 'Generate description
files' enabled) have generated files that are in-sync with the current
version of their source files.
-pdlPath Sets the path to the PDL file for the project
C:\Program Files (x86)\Jenkins\workspace\Switchbox_psoc\PSoC\Switchbox>exit 6
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE
Solved! Go to Solution.
- Labels:
-
PSoC Creator Software
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It has something to do with the Jenkins service and what user it runs as. I had to create a user with local admin access and run the service with that user.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It has something to do with the Jenkins service and what user it runs as. I had to create a user with local admin access and run the service with that user.