--- # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: MIT-0 jenkins: systemMessage: "Jenkins configured automatically by Jenkins Configuration as Code" credentials: system: domainCredentials: - credentials: - usernamePassword: scope: GLOBAL id: "AWS_ACCOUNT_CREDENTIALS" username: "" password: "" description: "(Required) The AWS access key ID and secret access key for the IAM User you will use with Jenkins" - string: scope: GLOBAL id: "MASTER_PASSWORD" secret: "" description: "(Required) The password to be used to all SAP systems (you can change them in the future)" - string: scope: GLOBAL id: "APPLICATION_CODE" secret: "demo" description: "(Optional) Application code to be used as tags for your environment. Default: demo" - string: scope: GLOBAL id: "APPLICATION_NAME" secret: "demo" description: "(Optional) Application name to be used as tags for your environment. Default: demo" - string: scope: GLOBAL id: "ENVIRONMENT_TYPE" secret: "dev" description: "(Optional) Environment type to be used as tags for your environment. Example: dev, test, prod. Default: dev" - string: scope: GLOBAL id: "ENABLE_HA" secret: "false" description: "(Optional) Whether to enable HA for the installation or not .Allowed value: false. Default: false" - string: scope: GLOBAL id: "AWS_REGION" secret: "us-east-1" description: "(Optional) The region you want to create your resources at. Example: ap-south-1. Default: us-east-1" - string: scope: GLOBAL id: "VPC_ID" secret: "" description: "(Required) The VPC ID for Terraform to put the instances into. Example: vpc-b2fa0ccf or vpc-017e0ba5c0b2e5e88" - string: scope: GLOBAL id: "SUBNET_IDS" secret: "" description: "(Required) The Subnet IDs (comma separated) inside the given VPC to spin the instances into. Example: subnet-fec01a98,subnet-1fa23g45" - string: scope: GLOBAL id: "SECURITY_GROUP_ID" secret: "" description: "(Required) The Security Group ID inside the given VPC to attach to the instances. Example: sg-01e616cc71d44cf70" - string: scope: GLOBAL id: "PRIVATE_DNS_ZONE_NAME" secret: "" description: "(Required) The DNS Zone name (already existing in Route53) to add SAP installation to. Example: sapteam.net" - string: scope: GLOBAL id: "KMS_KEY_ARN" secret: "" description: "(Required) The KMS Key ARN to be used for encryption of this installation. Example: arn:aws:kms:region:123456789000:key/ 00000000-0000-0000-0000-000000000000" - string: scope: GLOBAL id: "SSH_KEYPAIR_NAME" secret: "" description: "(Required) The AWS KeyPair name (already existing on AWS account) you want to use to SSH into the new created instances" - file: scope: GLOBAL id: "SSH_KEYPAIR_FILE" fileName: "CHANGE-ME.pem" secretBytes: "" description: "(Required) The actual KeyPair .pem file generated by your AWS account to use to SSH into created instances" - string: scope: GLOBAL id: "AMI_ID" secret: "" description: "(Required) The AMI ID to be used as instances' images. Example: ami-0e459d519030c2bd7" - string: scope: GLOBAL id: "S3_ROOT_FOLDER_INSTALL_FILES" secret: "" description: "(Required) S3 Root folder to pull the installation media files. Example: s3://sapgspdemo-sap-binaries-demo" - string: scope: GLOBAL id: "EC2_INSTANCES_NAME_PREFIX" secret: "demo" description: "(Optional) The prefix to be added to AWS Instances names by Terraform. Default: demo" - string: scope: GLOBAL id: "INPUT_CUSTOM_TIMEZONE" secret: "" description: "(Optional) The Timezone you want to set in all the hosts . Example : Asia/Kolkata. Default: America/Chicago " - string: scope: GLOBAL id: "SAP_SID" secret: "AD0" description: "(Optional) The SAP SID to be set for SAP installations (you cannot change this in the future). Default: AD0" - string: scope: GLOBAL id: "ASCS_INSTANCE_TYPE" secret: "m5.xlarge" description: "(Optional) The instance type to set to ASCS instance. Default: m5.xlarge" - string: scope: GLOBAL id: "ASCS_INSTANCE_NUMBER" secret: "00" description: "(Optional) The instance number for ASCS instance. Default: 00" - string: scope: GLOBAL id: "ERS_INSTANCE_TYPE" secret: "m5.xlarge" description: "(Optional) The instance type to set to ERS instance. Default: m5.xlarge" - string: scope: GLOBAL id: "ERS_INSTANCE_NUMBER" secret: "10" description: "(Optional) The instance number for ERS instance. Default: 10" - string: scope: GLOBAL id: "PRODUCT_ID_ASCS" secret: "NW_ABAP_ASCS:NW750.SYB.ABAP" description: "(Optional) Product ID to install ASCS software. Default: NW_ABAP_ASCS:NW750.SYB.ABAP" - string: scope: GLOBAL id: "PRODUCT_ID_ERS" secret: "NW_ABAP_ERS:NW750.SYB.ABAP" description: "(Optional) Product ID to install ERS software. Default: NW_ABAP_ASCS:NW750.SYB.ABAP" - string: scope: GLOBAL id: "PAS_INSTANCE_TYPE" secret: "m5.xlarge" description: "(Optional) The instance type to set to PAS instance. Default: m5.xlarge" - string: scope: GLOBAL id: "PAS_INSTANCE_NUMBER" secret: "01" description: "(Optional) The instance number for PAS instance. Default: 00" - string: scope: GLOBAL id: "PRODUCT_ID_PAS" secret: "NW_ABAP_CI:NW750.SYB.ABAP" description: "(Optional) Product ID to install PAS software. Default: NW_ABAP_CI:NW750.SYB.ABAP" - string: scope: GLOBAL id: "ASE_SID" secret: "AD0" description: "(Optional) The ASE SID to be set for DB installation (you cannot change this in the future). Default: AD0" - string: scope: GLOBAL id: "ASE_INSTANCE_TYPE" secret: "m5.4xlarge" description: "(Optional) The instance type to set to ASE instance. Default: m5.4xlarge" - string: scope: GLOBAL id: "ASE_INSTANCE_NUMBER" secret: "02" description: "(Optional) The instance number for ASE instance. Default: 00" - string: scope: GLOBAL id: "PRODUCT_ID_PAS_DB" secret: "NW_ABAP_DB:NW750.SYB.ABAP" description: "(Optional) Product ID to install DB software. Default: NW_ABAP_DB:NW750.SYB.ABAP" jobs: - script: > folder('SAP ASE+ASCS+PAS 3 Instances') - script: > multibranchPipelineJob('SAP ASE+ASCS+PAS 3 Instances/Spin up and install') { factory { workflowBranchProjectFactory { scriptPath('jenkins-pipelines/sap-pipeline-ase-pas-ascs/Jenkinsfile') } } branchSources { branchSource { source { git { id('sap3modules') remote('https://github.com/aws-samples/aws-sap-on-ase-with-jenkins-terraform-ansible.git') } } strategy { defaultBranchPropertyStrategy { props { noTriggerBranchProperty() } } } } git { id('sap3modules') includes('*') remote('https://github.com/aws-samples/aws-sap-on-ase-with-jenkins-terraform-ansible.git') } } } - script: > multibranchPipelineJob('SAP ASE+ASCS+PAS 3 Instances/Destroy env') { factory { workflowBranchProjectFactory { scriptPath('jenkins-pipelines/sap-pipeline-destroy-ase-pas-ascs/Jenkinsfile') } } branchSources { branchSource { source { git { id('destroySAP3modules') remote('https://github.com/aws-samples/aws-sap-on-ase-with-jenkins-terraform-ansible.git') } } strategy { defaultBranchPropertyStrategy { props { noTriggerBranchProperty() } } } } git { id('destroySAP3modules') includes('*') remote('https://github.com/aws-samples/aws-sap-on-ase-with-jenkins-terraform-ansible.git') } } }