Dependency Integrity Check

Action ID: cnoe:verify:dependency
NPM Package:

@cnoe-io/plugin-scaffolder-actions

Description

Verifies dependencies using a specified list of verifiers to ensure project integrity.

Input Schema

PropertyTypeDescriptionRequired
verifiersarrayThe list of verifiers

Output Schema

No output schema defined for this action.

Usage Examples

Verify Node.js dependencies with fixed verifiers before publishing

Runs dependency checks using a fixed set of verifiers for a Node.js service. Use this after fetching the template and before publishing to ensure policy compliance and vulnerability scanning. This example shows the action between fetch:template and publish:github.

Copy
steps:
  - id: fetch-template
    action: fetch:template
    input:
      url: https://github.com/acme/templates/node-service?ref=main
      targetPath: .
      values:
        serviceName: ${{ parameters.name }}
        owner: ${{ parameters.owner }}

  - id: verify-dependencies
    action: cnoe:verify:dependency
    input:
      verifiers:
        - npm-audit
        - license-policy
        - osv-scan

  - id: publish-repository
    action: publish:github
    input:
      repoUrl: github.com?owner=${{ parameters.owner }}&repo=${{ parameters.name }}
      repoVisibility: private

Parameterize verifiers for a polyglot monorepo

Lets users choose which verifiers to apply for different package managers in a monorepo. Use this when teams select verifiers per workspace or tech stack. The verification runs after fetch:template and before publish:gitlab.

Copy
steps:
  - id: fetch-monorepo-template
    action: fetch:template
    input:
      url: https://git.example.com/org/templates/monorepo?ref=main
      targetPath: .
      values:
        repoName: ${{ parameters.name }}
        owner: ${{ parameters.owner }}

  - id: verify-dependencies
    action: cnoe:verify:dependency
    input:
      verifiers: ${{ parameters.dependencyVerifiers }}

  - id: publish-repository
    action: publish:gitlab
    input:
      repoUrl: gitlab.com?owner=${{ parameters.owner }}&repo=${{ parameters.name }}