A mockup of what an automated API Lifecycle could look like
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

162 lines
5.0 KiB

apiVersion: v1
kind: Template
metadata:
name: testcase-05
objects:
- kind: "BuildConfig"
apiVersion: "v1"
metadata:
name: "testcase-05-${TARGET_INSTANCE}-v0.9"
namespace: ${NAMESPACE}
spec:
source:
git:
uri: ${GIT_REPO}
strategy:
type: "JenkinsPipeline"
jenkinsPipelineStrategy:
jenkinsfilePath: testcase-05/Jenkinsfile
env:
- name: SECRET_NAME
value: ${SECRET_NAME}
- name: NAMESPACE
value: ${NAMESPACE}
- name: TARGET_INSTANCE
value: ${TARGET_INSTANCE}
- name: PUBLIC_STAGING_WILDCARD_DOMAIN
value: ${PUBLIC_STAGING_WILDCARD_DOMAIN}
- name: PUBLIC_PRODUCTION_WILDCARD_DOMAIN
value: ${PUBLIC_PRODUCTION_WILDCARD_DOMAIN}
- name: DEVELOPER_ACCOUNT_ID
value: ${DEVELOPER_ACCOUNT_ID}
- name: PRIVATE_BASE_URL
value: ${PRIVATE_BASE_URL}
- name: OIDC_ISSUER_ENDPOINT
value: ${OIDC_ISSUER_ENDPOINT}
- name: DISABLE_TLS_VALIDATION
value: ${DISABLE_TLS_VALIDATION}
- name: OPENAPI_SPECIFICATION_FILE
value: openapi-spec-v0.9.yaml
- kind: "BuildConfig"
apiVersion: "v1"
metadata:
name: "testcase-05-${TARGET_INSTANCE}-v1.0"
namespace: ${NAMESPACE}
spec:
source:
git:
uri: ${GIT_REPO}
strategy:
type: "JenkinsPipeline"
jenkinsPipelineStrategy:
jenkinsfilePath: testcase-05/Jenkinsfile
env:
- name: SECRET_NAME
value: ${SECRET_NAME}
- name: NAMESPACE
value: ${NAMESPACE}
- name: TARGET_INSTANCE
value: ${TARGET_INSTANCE}
- name: PUBLIC_STAGING_WILDCARD_DOMAIN
value: ${PUBLIC_STAGING_WILDCARD_DOMAIN}
- name: PUBLIC_PRODUCTION_WILDCARD_DOMAIN
value: ${PUBLIC_PRODUCTION_WILDCARD_DOMAIN}
- name: DEVELOPER_ACCOUNT_ID
value: ${DEVELOPER_ACCOUNT_ID}
- name: PRIVATE_BASE_URL
value: ${PRIVATE_BASE_URL}
- name: OIDC_ISSUER_ENDPOINT
value: ${OIDC_ISSUER_ENDPOINT}
- name: DISABLE_TLS_VALIDATION
value: ${DISABLE_TLS_VALIDATION}
- name: OPENAPI_SPECIFICATION_FILE
value: openapi-spec-v1.0.yaml
- kind: "BuildConfig"
apiVersion: "v1"
metadata:
name: "testcase-05-${TARGET_INSTANCE}-v1.1"
namespace: ${NAMESPACE}
spec:
source:
git:
uri: ${GIT_REPO}
strategy:
type: "JenkinsPipeline"
jenkinsPipelineStrategy:
jenkinsfilePath: testcase-05/Jenkinsfile
env:
- name: SECRET_NAME
value: ${SECRET_NAME}
- name: NAMESPACE
value: ${NAMESPACE}
- name: TARGET_INSTANCE
value: ${TARGET_INSTANCE}
- name: PUBLIC_STAGING_WILDCARD_DOMAIN
value: ${PUBLIC_STAGING_WILDCARD_DOMAIN}
- name: PUBLIC_PRODUCTION_WILDCARD_DOMAIN
value: ${PUBLIC_PRODUCTION_WILDCARD_DOMAIN}
- name: DEVELOPER_ACCOUNT_ID
value: ${DEVELOPER_ACCOUNT_ID}
- name: PRIVATE_BASE_URL
value: ${PRIVATE_BASE_URL}
- name: OIDC_ISSUER_ENDPOINT
value: ${OIDC_ISSUER_ENDPOINT}
- name: DISABLE_TLS_VALIDATION
value: ${DISABLE_TLS_VALIDATION}
- name: OPENAPI_SPECIFICATION_FILE
value: openapi-spec-v1.1.yaml
- kind: "BuildConfig"
apiVersion: "v1"
metadata:
name: "testcase-05-${TARGET_INSTANCE}-v2.0"
namespace: ${NAMESPACE}
spec:
source:
git:
uri: ${GIT_REPO}
strategy:
type: "JenkinsPipeline"
jenkinsPipelineStrategy:
jenkinsfilePath: testcase-05/Jenkinsfile
env:
- name: SECRET_NAME
value: ${SECRET_NAME}
- name: NAMESPACE
value: ${NAMESPACE}
- name: TARGET_INSTANCE
value: ${TARGET_INSTANCE}
- name: PUBLIC_STAGING_WILDCARD_DOMAIN
value: ${PUBLIC_STAGING_WILDCARD_DOMAIN}
- name: PUBLIC_PRODUCTION_WILDCARD_DOMAIN
value: ${PUBLIC_PRODUCTION_WILDCARD_DOMAIN}
- name: DEVELOPER_ACCOUNT_ID
value: ${DEVELOPER_ACCOUNT_ID}
- name: PRIVATE_BASE_URL
value: ${PRIVATE_BASE_URL}
- name: OIDC_ISSUER_ENDPOINT
value: ${OIDC_ISSUER_ENDPOINT}
- name: DISABLE_TLS_VALIDATION
value: ${DISABLE_TLS_VALIDATION}
- name: OPENAPI_SPECIFICATION_FILE
value: openapi-spec-v2.0.yaml
parameters:
- name: SECRET_NAME
value: 3scale-toolbox
- name: NAMESPACE
value: api-lifecycle
- name: TARGET_INSTANCE
value: 3scale-saas
- name: GIT_REPO
value: https://github.com/nmasse-itix/API-Lifecycle-Mockup.git
- name: PUBLIC_STAGING_WILDCARD_DOMAIN
required: false
- name: PUBLIC_PRODUCTION_WILDCARD_DOMAIN
required: false
- name: DEVELOPER_ACCOUNT_ID
required: true
- name: PRIVATE_BASE_URL
required: true
- name: DISABLE_TLS_VALIDATION
value: "no"
- name: OIDC_ISSUER_ENDPOINT
required: true