Halt Scaffolding For Seconds

Action ID: roadiehq:utils:sleep
NPM Package:

@roadiehq/scaffolder-backend-module-utils

Description

Halts the scaffolding for the given amount of seconds

Input Schema

PropertyTypeDescriptionRequired
amountnumber-

Output Schema

No output schema defined for this action.

Usage Examples

Wait before registering the new repository in the catalog

Waits 10 seconds after publish:github so the repository is available before catalog:register runs. Use this when Git hosting takes a moment to propagate the newly created repo.

Copy
steps:
  - id: fetch
    action: fetch:template
    input:
      url: ./skeleton
      targetPath: .
      values:
        name: ${{ parameters.name }}
        description: ${{ parameters.description }}

  - id: publish
    action: publish:github
    input:
      repoUrl: github.com?owner=acme-inc&repo=${{ parameters.repoName }}

  - id: wait-for-repo
    action: roadiehq:utils:sleep
    input:
      amount: 10

  - id: register
    action: catalog:register
    input:
      catalogInfoUrl: ${{ steps.publish.output.repoContentsUrl }}/catalog-info.yaml

Parameterized delay to handle throttling before publishing

Uses a parameter to control the delay before pushing to GitHub, which can help avoid API throttling. The step logs a message with debug:log and then proceeds to publish:github.

Copy
steps:
  - id: fetch
    action: fetch:template
    input:
      url: ./template
      targetPath: .
      values:
        repoName: ${{ parameters.repoName }}
        owner: ${{ parameters.owner }}

  - id: delay-before-publish
    action: roadiehq:utils:sleep
    input:
      amount: ${{ parameters.waitSeconds }}

  - id: log-delay
    action: debug:log
    input:
      message: Continuing after ${{ parameters.waitSeconds }} seconds

  - id: publish
    action: publish:github
    input:
      repoUrl: github.com?owner=${{ parameters.owner }}&repo=${{ parameters.repoName }}