ioBroker / testing-action-adapter

Shared Github Actions for ioBroker testing workflows: Adapter test step
1 stars 2 forks source link

Make tests fail if engines clause is not fulfilled. #8

Open mcm1957 opened 1 week ago

mcm1957 commented 1 week ago

Testing-action-adapter does NOT fail although engines requirements aer not fulfilled. Testing should fail in such a case. (I think there is a npm option for convert the warnings to errors)...

Run ioBroker/testing-action-adapter@v1
  with:
    node-version: 18.x
    os: ubuntu-latest
    build: true
    install-command: npm ci
    package-cache: npm
    build-command: npm run build
    extra-tests: false
Run actions/checkout@v4
Syncing repository: jbeenenga/ioBroker.heizungssteuerung
Getting Git version info
Temporarily overriding HOME='/home/runner/work/_temp/4[2](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:2)43a179-faf1-4cf6-bddc-80fd9090d40b' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
/usr/bin/git config --global --add safe.directory /home/runner/work/ioBroker.heizungssteuerung/ioBroker.heizungssteuerung
Deleting the contents of '/home/runner/work/ioBroker.heizungssteuerung/ioBroker.heizungssteuerung'
Initializing the repository
  /usr/bin/git init /home/runner/work/ioBroker.heizungssteuerung/ioBroker.heizungssteuerung
  hint: Using 'master' as the name for the initial branch. This default branch name
  hint: is subject to change. To configure the initial branch name to use in all
  hint: of your new repositories, which will suppress this warning, call:
  hint:
  hint:     git config --global init.defaultBranch <name>
  hint:
  hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
  hint: 'development'. The just-created branch can be renamed via this command:
  hint:
  hint:     git branch -m <name>
  Initialized empty Git repository in /home/runner/work/ioBroker.heizungssteuerung/ioBroker.heizungssteuerung/.git/
  /usr/bin/git remote add origin https://github.com/jbeenenga/ioBroker.heizungssteuerung
Disabling automatic garbage collection
Setting up auth
Fetching the repository
Determining the checkout info
/usr/bin/git sparse-checkout disable
/usr/bin/git config --local --unset-all extensions.worktreeConfig
Checking out the ref
/usr/bin/git log -1 --format='%H'
'f40f[3](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:3)26e2f365bedadd4625ad9a207cc68e68de2'
Run actions/setup-node@v[4](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:4)
Found in cache @ /opt/hostedtoolcache/node/18.20.4/x64
Environment details
/opt/hostedtoolcache/node/18.20.4/x64/bin/npm config get cache
/home/runner/.npm
npm cache is not found
Run npm ci
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'iobroker.heizungssteuerung@2.0.0',
npm warn EBADENGINE   required: { node: '>= 20' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'jackspeak@4.0.1',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'path-scurry@2.0.0',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'lru-cache@11.0.1',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'rimraf@6.0.1',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'glob@11.0.0',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'minimatch@10.0.1',
npm warn EBADENGINE   required: { node: '20 || >=22' },
npm warn EBADENGINE   current: { node: 'v18.20.4', npm: '10.7.0' }
npm warn EBADENGINE }
npm warn deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm warn deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated sinon@1[5](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:5).2.0: 16.1.1

added 54[6](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:6) packages, and audited 54[7](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:7) packages in 6s

94 packages are looking for funding
  run `npm fund` for details

7 vulnerabilities (1 moderate, 2 high, 4 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
Run if true; then

> iobroker.heizungssteuerung@2.0.0 prebuild
> rimraf build

> iobroker.heizungssteuerung@2.0.0 build
> build-adapter ts

Compiling TypeScript with ESBuild...

  build/main.js                   1[8](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:8).7kb
  build/models/tempTarget.js       7[9](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:9)0b 
  build/models/periods.js          781b 
  build/main.js.map               31.4kb
  build/models/periods.js.map      371b 
  build/models/tempTarget.js.map   218b 

⚡ Done in 6ms

Type-checking ./tsconfig.build.json with tsc...
✔ Type-checking ./tsconfig.build.json succeeded!
Run if [[ "false" == "false" ]] ; then
Skipping extra-tests step...
Run if npm run | grep -q "test:unit" ; then
No unit tests defined, skipping...
Run npm run test:integration

> iobroker.heizungssteuerung@2.0.0 test:integration
> mocha test/integration --exit

2024-09-17T06:47:56.[10](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:11)2Z testing:integration:ControllerSetup Creating ControllerSetup...
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup   directories:
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup     controller: /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.js-controller
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup     adapter:    /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup     data:       /tmp/test-iobroker.heizungssteuerung/iobroker-data
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup   appName:      iobroker
2024-09-17T06:47:56.103Z testing:integration:ControllerSetup   adapterName:  heizungssteuerung

Running tests in /tmp/test-iobroker.heizungssteuerung

  Adapter integration tests
2024-09-17T06:47:56.118Z testing:integration:ControllerSetup Testing if JS-Controller is running...
2024-09-17T06:47:56.120Z testing:integration:ControllerSetup   => false
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup Creating AdapterSetup...
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup   directories:
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup     controller: /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.js-controller
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup     adapter:    /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup   appName:           iobroker
2024-09-17T06:47:56.120Z testing:integration:AdapterSetup   adapterName:       heizungssteuerung
2024-09-17T06:47:56.121Z testing:integration:ControllerSetup Preparing the test directory. JS-Controller version: "dev"...
2024-09-17T06:47:56.123Z testing:integration:ControllerSetup Testing if JS-Controller is installed...
2024-09-17T06:47:56.123Z testing:integration:ControllerSetup   => false
2024-09-17T06:47:56.123Z testing:integration:ControllerSetup (Re-)installing JS Controller...
npm warn config production Use `--omit=dev` instead.

added 228 packages, and audited 229 packages in 21s

14 packages are looking for funding
  run `npm fund` for details

14 moderate severity vulnerabilities

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
2024-09-17T06:48:17.617Z testing:integration:ControllerSetup   => done!
2024-09-17T06:48:17.618Z testing:integration:AdapterSetup Copying adapter files to test directory...
2024-09-17T06:48:18.206Z testing:integration:AdapterSetup Saving the adapter in package.json
2024-09-17T06:48:18.208Z testing:integration:AdapterSetup Deleting old remains of this adapter
2024-09-17T06:48:18.208Z testing:integration:AdapterSetup Installing adapter
npm warn config production Use `--omit=dev` instead.
npm error code EBADENGINE
npm error engine Unsupported engine
npm error engine Not compatible with your version of node/npm: iobroker.heizungssteuerung@2.0.0
npm error notsup Not compatible with your version of node/npm: iobroker.heizungssteuerung@2.0.0
npm error notsup Required: {"node":">= 20"}
npm error notsup Actual:   {"npm":"10.7.0","node":"v18.20.4"}

npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-09-17T06_48_18_277Z-debug-0.log
2024-09-17T06:48:18.915Z testing:integration:AdapterSetup   => done!
2024-09-17T06:48:18.916Z testing:integration:DBConnection starting DB instances...
2024-09-17T06:48:18.916Z testing:integration:DBConnection creating objects DB
2024-09-17T06:48:18.916Z testing:integration:DBConnection   => objects DB type: jsonl
2024-09-17T06:48:18.917Z testing:integration:DBConnection   => objects DB lib found at /tmp/test-iobroker.heizungssteuerung/node_modules/@iobroker/db-objects-jsonl/build/cjs/index.js
Server Data File: /tmp/test-iobroker.heizungssteuerung/iobroker-data/objects.jsonl
Server  Redis inMem-objects listening on port 9001
 Redis Objects: Use Redis connection: 127.0.0.1:19001
 Objects client ready ... initialize now
 Objects client initialize lua scripts
 Objects connected to redis: 127.0.0.1:19001
 Redis Objects: Use Redis connection: 127.0.0.1:19001
 Objects client ready ... initialize now
 Objects create System PubSub Client
 Objects client initialize lua scripts
 Objects connected to redis: 127.0.0.1:19001
2024-09-17T06:48:19.179Z testing:integration:DBConnection   => done!
2024-09-17T06:48:19.180Z testing:integration:DBConnection creating states DB
2024-09-17T06:48:19.180Z testing:integration:DBConnection   => states DB type: jsonl
2024-09-17T06:48:19.180Z testing:integration:DBConnection   => states DB lib found at /tmp/test-iobroker.heizungssteuerung/node_modules/@iobroker/db-states-jsonl/build/cjs/index.js
Server Data File: /tmp/test-iobroker.heizungssteuerung/iobroker-data/states.jsonl
Server  Redis inMem-states listening on port 9000
 Redis States: Use Redis connection: 127.0.0.1:19000
 States connected to redis: 127.0.0.1:19000
 Redis States: Use Redis connection: 127.0.0.1:19000
 States create System PubSub Client
 States connected to redis: 127.0.0.1:19000
2024-09-17T06:48:19.203Z testing:integration:DBConnection   => done!
2024-09-17T06:48:19.203Z testing:integration:DBConnection DB instances started
2024-09-17T06:48:19.203Z testing:integration:ControllerSetup Moving databases to different ports...
2024-09-17T06:48:19.204Z testing:integration:ControllerSetup   => done!
2024-09-17T06:48:19.204Z testing:integration:ControllerSetup Disabling admin instances...
2024-09-17T06:48:19.207Z testing:integration:ControllerSetup   => done!
2024-09-17T06:48:19.207Z testing:integration:AdapterSetup Removing old adapter instances...
2024-09-17T06:48:19.208Z testing:integration:AdapterSetup   => done!
2024-09-17T06:48:19.208Z testing:integration:AdapterSetup Adding adapter instance...
2024-09-17T06:48:24.560Z testing:integration:AdapterSetup   => done!
2024-09-17T06:48:24.560Z testing:integration:DBConnection Stopping DB instances...
2024-09-17T06:48:24.612Z testing:integration:DBConnection DB instances stopped
2024-09-17T06:48:24.612Z testing:integration:DBConnection Creating DB backup...
2024-09-17T06:48:24.612Z testing:integration:DBConnection No DB instance is running, nothing to stop...
    Adapter startup
2024-09-17T06:48:24.619Z testing:integration:ControllerSetup Cleaning SQLite directory...
2024-09-17T06:48:24.619Z testing:integration:ControllerSetup Cleaning log directory...
2024-09-17T06:48:24.619Z testing:integration:DBConnection Restoring DB backup...
2024-09-17T06:48:24.619Z testing:integration:DBConnection No DB instance is running, nothing to stop...
2024-09-17T06:48:24.626Z testing:integration:DBConnection starting DB instances...
2024-09-17T06:48:24.626Z testing:integration:DBConnection creating objects DB
2024-09-17T06:48:24.626Z testing:integration:DBConnection   => objects DB type: jsonl
2024-09-17T06:48:24.627Z testing:integration:DBConnection   => objects DB lib found at /tmp/test-iobroker.heizungssteuerung/node_modules/@iobroker/db-objects-jsonl/build/cjs/index.js
Server Data File: /tmp/test-iobroker.heizungssteuerung/iobroker-data/objects.jsonl
Server  Redis inMem-objects listening on port 9001
 Redis Objects: Use Redis connection: 127.0.0.1:19001
 Objects client ready ... initialize now
 Objects client initialize lua scripts
 Objects connected to redis: 127.0.0.1:19001
 Redis Objects: Use Redis connection: 127.0.0.1:19001
 Objects client ready ... initialize now
 Objects create System PubSub Client
 Objects client initialize lua scripts
 Objects connected to redis: 127.0.0.1:19001
2024-09-17T06:48:24.712Z testing:integration:DBConnection   => done!
2024-09-17T06:48:24.712Z testing:integration:DBConnection creating states DB
2024-09-17T06:48:24.712Z testing:integration:DBConnection   => states DB type: jsonl
2024-09-17T06:48:24.713Z testing:integration:DBConnection   => states DB lib found at /tmp/test-iobroker.heizungssteuerung/node_modules/@iobroker/db-states-jsonl/build/cjs/index.js
Server Data File: /tmp/test-iobroker.heizungssteuerung/iobroker-data/states.jsonl
Server  Redis inMem-states listening on port 9000
 Redis States: Use Redis connection: 127.0.0.1:19000
 States connected to redis: 127.0.0.1:19000
 Redis States: Use Redis connection: 127.0.0.1:19000
 States create System PubSub Client
 States connected to redis: 127.0.0.1:19000
2024-09-17T06:48:24.721Z testing:integration:DBConnection   => done!
2024-09-17T06:48:24.721Z testing:integration:DBConnection DB instances started
2024-09-17T06:48:24.721Z testing:integration:TestHarness Creating instance
2024-09-17T06:48:24.721Z testing:integration:TestHarness   directories:
2024-09-17T06:48:24.721Z testing:integration:TestHarness     controller: /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.js-controller
2024-09-17T06:48:24.721Z testing:integration:TestHarness     adapter:    /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung
2024-09-17T06:48:24.721Z testing:integration:TestHarness   appName:           iobroker
2024-09-17T06:48:24.721Z testing:integration:TestHarness   adapterName:       heizungssteuerung
2024-09-17T06:48:24.727Z testing:unit:adapterTools locating adapter main file in /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung...
2024-09-17T06:48:24.727Z testing:unit:adapterTools   => trying /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung/main.js
2024-09-17T06:48:24.728Z testing:unit:adapterTools   => found main.js
2024-09-17 06:48:[25](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:27).206  - info: heizungssteuerung.0 (2186) starting. Version 1.7.0 in /tmp/test-iobroker.heizungssteuerung/node_modules/iobroker.heizungssteuerung, node: v18.20.4, js-controller: 6.0.12-alpha.0-20240913-9a3639aed
2024-09-17 06:48:25.228  - debug: heizungssteuerung.0 (2186) tempSensorMap created: {}
2024-09-17 06:48:25.228  - debug: heizungssteuerung.0 (2186) humSensorMap created: {}
2024-09-17 06:48:25.228  - debug: heizungssteuerung.0 (2186) engineMap created: {}
The adapter started successfully.
      ✔ The adapter starts (5493ms)
2024-09-17T06:48:[30](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:33).219Z testing:integration:TestHarness Stopping adapter instance...
2024-09-17T06:48:30.220Z testing:integration:TestHarness   => giving it 5000ms to terminate
2024-09-17 06:48:30.221  - info: heizungssteuerung.0 (2186) Got terminate signal TERMINATE_YOURSELF
2024-09-17 06:48:30.222  - info: heizungssteuerung.0 (2186) terminating
2024-09-17 06:48:30.222  - info: heizungssteuerung.0 (2186) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
2024-09-17 06:48:30.724  - info: heizungssteuerung.0 (2186) terminating
2024-09-17T06:48:30.7[34](https://github.com/jbeenenga/ioBroker.heizungssteuerung/actions/runs/10897954577/job/30240273981?pr=145#step:2:37)Z testing:integration:TestHarness Adapter process terminated:
2024-09-17T06:48:30.734Z testing:integration:TestHarness   Code:   11
2024-09-17T06:48:30.734Z testing:integration:TestHarness   Signal: null
2024-09-17T06:48:30.734Z testing:integration:TestHarness Adapter terminated
2024-09-17T06:48:30.734Z testing:integration:DBConnection Stopping DB instances...
2024-09-17T06:48:30.739Z testing:integration:DBConnection DB instances stopped

  1 passing