2 changed files with 65 additions and 1 deletions
@ -0,0 +1,64 @@ |
|||
#!groovy |
|||
|
|||
library identifier: '3scale-toolbox-jenkins@add-new-features', |
|||
retriever: modernSCM([$class: 'GitSCMSource', |
|||
remote: 'https://github.com/nmasse-itix/3scale-toolbox-jenkins.git', |
|||
traits: [[$class: 'jenkins.plugins.git.traits.BranchDiscoveryTrait']]]) |
|||
|
|||
def service = null |
|||
|
|||
node() { |
|||
stage('Checkout Source') { |
|||
checkout scm |
|||
} |
|||
|
|||
stage("Prepare") { |
|||
service = toolbox.prepareThreescaleService( |
|||
openapi: [filename: "testcase-03/swagger.json"], |
|||
environment: [ baseSystemName: toolbox.generateRandomBaseSystemName(), |
|||
publicBasePath: "/v1", |
|||
publicStagingWildcardDomain: params.PUBLIC_STAGING_WILDCARD_DOMAIN != "" ? params.PUBLIC_STAGING_WILDCARD_DOMAIN : null, |
|||
publicProductionWildcardDomain: params.PUBLIC_PRODUCTION_WILDCARD_DOMAIN != "" ? params.PUBLIC_PRODUCTION_WILDCARD_DOMAIN : null, |
|||
oidcIssuerEndpoint: params.OIDC_ISSUER_ENDPOINT, |
|||
privateBaseUrl: params.PRIVATE_BASE_URL ], |
|||
toolbox: [ openshiftProject: params.NAMESPACE, |
|||
destination: params.TARGET_INSTANCE, |
|||
image: "quay.io/redhat/3scale-toolbox:master", // TODO: remove me once the final image is released |
|||
insecure: params.DISABLE_TLS_VALIDATION == "yes", |
|||
secretName: params.SECRET_NAME], |
|||
service: [:], |
|||
applications: [ |
|||
[ name: "my-test-app", description: "This is used for tests", plan: "test", account: params.DEVELOPER_ACCOUNT_ID ] |
|||
], |
|||
applicationPlans: [ |
|||
[ systemName: "test", name: "Test", defaultPlan: true, published: true ], |
|||
[ systemName: "silver", name: "Silver" ], |
|||
[ systemName: "gold", name: "Gold" ], |
|||
] |
|||
) |
|||
|
|||
echo "toolbox version = " + service.toolbox.getToolboxVersion() |
|||
} |
|||
|
|||
stage("Import OpenAPI") { |
|||
service.importOpenAPI() |
|||
echo "Service with system_name ${service.environment.targetSystemName} created !" |
|||
} |
|||
|
|||
stage("Create an Application Plan") { |
|||
service.applyApplicationPlans() |
|||
} |
|||
|
|||
stage("Create an Application") { |
|||
service.applyApplication() |
|||
} |
|||
|
|||
stage("Run integration tests") { |
|||
// NOT IMPLEMENTED (YET) |
|||
} |
|||
|
|||
stage("Promote to production") { |
|||
service.promoteToProduction() |
|||
} |
|||
|
|||
} |
|||
Loading…
Reference in new issue