Nuitka / Nuitka-Action

Action to build with Nuitka on GitHub in your workflows
MIT License
111 stars 22 forks source link

Copy multiple folder data #40

Closed systelbbbb closed 5 months ago

systelbbbb commented 5 months ago

Copy multiple folder data include-data-dir=data=data include-data-dir=abc=abc How to write in Action

kayhayen commented 5 months ago

Use a yaml list,

include-data-dir:
  - abc=abc
  - data=ata

That should work, does it not?

systelbbbb commented 5 months ago

The workflow is not valid. .github/workflows/python-package.yml (Line: 45, Col: 11): A sequence was not expected

include-data-dir:
    - config=config
    - table=table

Unable to start actions

kayhayen commented 5 months ago

That sound like an unsolved problem. The options that take filepaths, so far they never accept "," separation, which for module names taking options, isn't as much of a problem.

For now you can resort to # nuitka-project: style options as described in Nuitka user manual. I will try and figure something out here. From what I can tell, value types are not something you can specify in the action.yml and then it's really bad, if only strings were allowed as values.

kayhayen commented 5 months ago

So, we had bool in our action description, and that was flagged as an error, saying type was not allowed. I checked somewhat and found conflicting information, which says:

The value of this parameter is a string specifying the data type of the input. This must be one of: boolean, choice, number, environment or string.

However, I had an idea, namely that \n could be interpreted by the github action parsing code exclusively as a separator. It however definitely should not do that for the values of copyright and trademark and potentially others.

kayhayen commented 5 months ago

So, on factory and staging branches, this now works, you can specify that Nuitka version or wait for the release of 2.0 to use it, the parsing is part of Nuitka itself these days, so it has to be changed. Luckily we know the option type in Nuitka, and therefore easily can split the values accordingly only if those are list options. This should now work:

include-data-dir: |
    config=config
    table=table
systelbbbb commented 5 months ago

shell: C:\Program Files\Git\bin\bash.EXE --noprofile --norc -e -o pipefail {0} env: pythonLocation: C:\hostedtoolcache\windows\Python\3.8.10\x64 NUITKA_CACHE_DIR: D:\a_actions\Nuitka\Nuitka-Action\main/nuitka/cache PYTHON_VERSION: 3.8 NUITKA_WORKFLOW_INPUTS: { "nuitka-version": "main", "standalone": "true", "static-libpython": "no", "output-dir": "o", "mingw64": "true", "show-progress": "true", "show-memory": "true", "assume-yes-for-downloads": "yes", "include-data-dir": "config=config\ntable=table\n",

..... OSError: [WinError 123] The filename, directory name, or volume label syntax is incorrect: 'o\app.dist\config\ntable=table\n' Nuitka-Reports:INFO: Compilation crash report written to file 'nuitka-crash-report.xml'. Please include it in your bug report.

According to your method, it still prompts an error

kayhayen commented 5 months ago

Hard to tell if you used the correct Nuitka version though.

kayhayen commented 5 months ago

"nuitka-version": "main"

Actually it is, I assume it's resolved and you are not good at reading. This is also a duplicate with a better report existing, so I am closing it.