metadata: name: shellExecute description: Step executes defined script longDescription: Step executes defined script provided in the 'sources' parameter spec: inputs: secrets: - name: githubTokenCredentialsId description: Jenkins credentials ID containing the github token. type: jenkins params: - name: sources type: "[]string" scope: - PARAMETERS - STAGES - STEPS description: Scripts paths that must be present in the current workspace or https links to scripts. Only https urls from github are allowed and must be in the format :https://{githubBaseurl}/api/v3/repos/{owner}/{repository}/contents/{path to script} Authentication for the download is only supported via the 'githubToken' param. Make sure the script has the necessary execute permissions. - name: githubToken description: "GitHub personal access token as per https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line" scope: - GENERAL - PARAMETERS - STAGES - STEPS type: string secret: true aliases: - name: access_token resourceRef: - name: githubTokenCredentialsId type: secret - type: vaultSecret default: github name: githubVaultSecretName - name: scriptArguments type: "[]string" scope: - PARAMETERS - STAGES - STEPS description: scriptArguments that are needed to be passed to scripts. the scriptArguments list is a flat list and has a positional relationship to the `sources` param. For e.g. The scriptArguments string at position 1 will be considered as the argument(s) for script at position 1 in `sources` list. For multiple arguments for a script please add them as a comma seperated string. mandatory: false containers: - name: shell image: node:lts-buster workingDir: /home/node