csrwng
1/21/2017 - 9:20 PM

Inline Jenkinsfile

Inline Jenkinsfile

apiVersion: v1
kind: Template
labels:
  template: inline-jenkinsfile
metadata:
  name: inline-jenkinsfile
parameters:
- name: NAME
  description: The name of the build to create
  displayName: Build Name
  required: true
- description: A secret string used to configure the GitHub webhook.
  displayName: GitHub Webhook Secret
  from: '[a-zA-Z0-9]{40}'
  generate: expression
  name: GITHUB_WEBHOOK_SECRET
  required: true
- description: A secret string used to configure the Generic webhook.
  displayName: Generic Webhook Secret
  from: '[a-zA-Z0-9]{40}'
  generate: expression
  name: GENERIC_WEBHOOK_SECRET
objects:
- apiVersion: v1
  kind: BuildConfig
  metadata:
    labels:
      name: "${NAME}"
    name: "${NAME}"
  spec:
    strategy:
      jenkinsPipelineStrategy:
        jenkinsfile: |-
          node {
            stage("First") {
              echo "Hello World"
            }
          }
      type: JenkinsPipeline
    triggers:
    - github:
        secret: "${GITHUB_WEBHOOK_SECRET}"
      type: GitHub
    - generic:
        secret: "${GENERIC_WEBHOOK_SECRET}"
      type: Generic