Commit 9adb9d89 authored by guozhipeng's avatar guozhipeng

部署命令

parent 5d0d1b2d
...@@ -164,6 +164,33 @@ common(){ ...@@ -164,6 +164,33 @@ common(){
echo "${account}" echo "${account}"
echo "子账户已登录成功!" echo "子账户已登录成功!"
# 获取当前脚本的完整路径
SCRIPT_PATH=$(readlink -f "$0")
# 项目根目录
javaBase=$(dirname ${SCRIPT_PATH})
# 源文件
defaultEnvFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/__default-env-from.json
mtaFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/mta-from.yaml
xsSecurityFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/xs-security-from.json
cdsrcPrivateFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/.cdsrc-private-from.json
# 目标文件
defaultEnv=$(dirname ${javaBase})/default-env.json
resourcesDefaultEnv=$(dirname ${javaBase})/srv/src/main/resources/default-env.json
dbDefaultEnv=$(dirname ${javaBase})/db/default-env.json
mta=$(dirname ${javaBase})/mta.yaml
xsSecurity=$(dirname ${javaBase})/xs-security.json
cdsrcPrivate=$(dirname ${javaBase})/.cdsrc-private.json
echo -e "\033[30;42m rm -rf gen/mta.mtar 替换文件中,请稍后。。。 \033[0m"
starttime100=`date +%s`
secondsToTime ${starttime} ${starttime100}
cat ${defaultEnvFrom} > ${defaultEnv}
cat ${defaultEnvFrom} > ${resourcesDefaultEnv}
cat ${defaultEnvFrom} > ${dbDefaultEnv}
cat ${mtaFrom} > ${mta}
cat ${xsSecurityFrom} > ${xsSecurity}
cat ${cdsrcPrivateFrom} > ${cdsrcPrivate}
#删除部署文件 #删除部署文件
echo -e "\033[30;42m rm -rf gen/mta.mtar 部署文件删除中,请稍后。。。 \033[0m" echo -e "\033[30;42m rm -rf gen/mta.mtar 部署文件删除中,请稍后。。。 \033[0m"
starttime10=`date +%s` starttime10=`date +%s`
...@@ -227,8 +254,36 @@ tes(){ ...@@ -227,8 +254,36 @@ tes(){
nameStr="【测试】" nameStr="【测试】"
applicationsName='lianchuangjie-tes' applicationsName='lianchuangjie-tes'
url='https://lianchuangjie-tes.unibetter-ic.com' url='https://lianchuangjie-tes.unibetter-ic.com'
# 获取当前脚本的完整路径
SCRIPT_PATH=$(readlink -f "$0")
# 项目根目录
javaBase=$(dirname ${SCRIPT_PATH})
# 源文件
defaultEnvFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/__default-env-from.json
mtaFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/mta-from.yaml
xsSecurityFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/xs-security-from.json
cdsrcPrivateFrom=$(dirname ${javaBase})/tools/mtaFile/${buildEvn}/.cdsrc-private-from.json
# 目标文件
defaultEnv=$(dirname ${javaBase})/default-env.json
resourcesDefaultEnv=$(dirname ${javaBase})/srv/src/main/resources/default-env.json
dbDefaultEnv=$(dirname ${javaBase})/db/default-env.json
mta=$(dirname ${javaBase})/mta.yaml
xsSecurity=$(dirname ${javaBase})/xs-security.json
cdsrcPrivate=$(dirname ${javaBase})/.cdsrc-private.json
echo -e "\033[30;42m rm -rf gen/mta.mtar 替换文件中,请稍后。。。 \033[0m"
starttime100=`date +%s`
secondsToTime ${starttime} ${starttime100}
cat ${defaultEnvFrom} > ${defaultEnv}
cat ${defaultEnvFrom} > ${resourcesDefaultEnv}
cat ${defaultEnvFrom} > ${dbDefaultEnv}
cat ${mtaFrom} > ${mta}
cat ${xsSecurityFrom} > ${xsSecurity}
cat ${cdsrcPrivateFrom} > ${cdsrcPrivate}
#执行编译操作 #执行编译操作
common #common
} }
#编译预生产环境 #编译预生产环境
...@@ -237,8 +292,9 @@ pre(){ ...@@ -237,8 +292,9 @@ pre(){
nameStr="【预生产】" nameStr="【预生产】"
applicationsName='lianchuangjie-pre' applicationsName='lianchuangjie-pre'
url='https://lianchuangjie-pre.unibetter-ic.com' url='https://lianchuangjie-pre.unibetter-ic.com'
#执行编译操作 #执行编译操作
common #common
} }
#编译生产环境 #编译生产环境
...@@ -247,8 +303,9 @@ pro(){ ...@@ -247,8 +303,9 @@ pro(){
nameStr="" nameStr=""
applicationsName='sap' applicationsName='sap'
url='https://sap.unibetter-ic.com' url='https://sap.unibetter-ic.com'
#执行编译操作 #执行编译操作
common #common
} }
#校验分支 #校验分支
......
{
"requires": {
"[hybrid]": {
"db": {
"binding": {
"type": "cf",
"apiEndpoint": "https://api.cf.cn40.platform.sapcloud.cn",
"org": "Shenzhen-Lianchuangjie-Technology-Co-Ltd-test-cnrc164l",
"space": "gzpTest",
"instance": "lianchuangjie-pre-db",
"key": "lianchuangjie-pre-db-key",
"resolved": false
},
"kind": "hana",
"vcap": {
"name": "db"
}
}
}
}
}
\ No newline at end of file
{
"VCAP_SERVICES": {
"hana": [
{
"name": "lianchuangjie-pre-db",
"tags": [
"hana"
],
"credentials": {
"database_id": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf",
"host": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn",
"port": "443",
"driver": "com.sap.db.jdbc.Driver",
"url": "jdbc:sap://b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn:443?encrypt=true&validateCertificate=true&currentschema=09F765A12CA149BAAA44783BD5B50AE7",
"schema": "09F765A12CA149BAAA44783BD5B50AE7",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN\nMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT\nHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN\nNDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs\nIEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi\nMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+\najWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0\n2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp\nwgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM\npG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD\nnU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po\nsMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx\nZre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd\nLvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX\nKyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe\nXoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL\ntgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv\nTiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN\nAQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw\nGXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H\nPNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF\nO4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ\nREtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik\nAdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv\n/PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+\np6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw\nMUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF\nqUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK\novfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+\n-----END CERTIFICATE-----",
"hdi_user": "09F765A12CA149BAAA44783BD5B50AE7_7NWVE2OK1UXQHONV24ZL8E65S_DT",
"hdi_password": "Kv9ThXlgennPwdbCPFaYQnYT3aFhUDTmSBOfUr2w.jsfP5yBBLC6CimTm20rfewfgJGkoU8WPg6MUJpBmmqmi8Xy0qvVXB4-8yBGA-zbh21e0yRkgG02Dc70cp-ih4y4",
"user": "09F765A12CA149BAAA44783BD5B50AE7_7NWVE2OK1UXQHONV24ZL8E65S_RT",
"password": "Cc0PXnXhhCk8ps75m.2HtR0LsxoxR9yBefyJu6LGdQmiooI1smURN56K6ZHiWZVv4d_z5qne6kTANvvliY6iabwtRKiC-5O6N_B-AelDXSo5o-6ZfDsVuyC5fu9RQIvr"
}
}
]
}
}
\ No newline at end of file
_schema-version: '3.1'
ID: lianchuangjie
version: 1.0.0-SNAPSHOT
description: "A simple CAP project."
parameters:
enable-parallel-deployments: true
build-parameters:
before-all:
- builder: custom
commands:
- npm ci
- npx cds build --production
modules:
- name: lianchuangjie-pre-srv
type: java
path: srv
parameters:
buildpack: sap_java_buildpack_jakarta
readiness-health-check-type: http
readiness-health-check-http-endpoint: /actuator/health/readiness
routes:
- route: lianchuangjie-pre-srv.unibetter-ic.com
properties:
SPRING_PROFILES_ACTIVE: cloud,sandbox
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 17.+ }'
build-parameters:
builder: custom
commands:
- mvn clean package -DskipTests=true --batch-mode
build-result: target/*-exec.jar
provides:
- name: srv-api # required by consumers of CAP services (e.g. approuter)
properties:
srv-url: "${protocol}://${routes/0/route}"
requires:
- name: lianchuangjie-pre-db
- name: lianchuangjie-pre-auth
- name: app-api
properties:
CDS_MULTITENANCY_APPUI_URL: ~{url}
- name: lianchuangjie-pre-db-deployer
type: hdb
path: db
parameters:
buildpack: nodejs_buildpack
build-parameters:
builder: custom
commands:
- npm run build
requires:
- name: lianchuangjie-pre-db
- name: orders
type: html5
path: app/orders
build-parameters:
builder: custom
commands:
- npm run build
supported-platforms:
[ ]
build-result: .
- name: lianchuangjie-pre
type: approuter.nodejs
path: app\router
parameters:
#keep-existing-routes: true
disk-quota: 1024M
memory: 512M
routes:
- route: lianchuangjie-pre.unibetter-ic.com
requires:
- name: srv-api
group: destinations
properties:
name: srv-api # must be used in xs-app.json as well
url: ~{srv-url}
forwardAuthToken: true
- name: lianchuangjie-pre-auth
build-parameters:
requires:
- name: orders
artifacts:
- './*'
target-path: orders
provides:
- name: app-api
properties:
app-protocol: ${protocol}
app-uri: "${protocol}://${routes/0/route}"
url: "${protocol}://${routes/0/route}"
resources:
- name: lianchuangjie-pre-auth
type: org.cloudfoundry.managed-service
parameters:
service: xsuaa
service-plan: application
path: ./xs-security.json
config:
xsappname: lianchuangjie-pre-${org}-${space}
tenant-mode: dedicated
- name: lianchuangjie-pre-db
type: com.sap.xs.hdi-container
parameters:
service: hana
service-plan: hdi-shared
{
"xsappname": "lianchuangjie-pre",
"tenant-mode": "dedicated",
"scopes": [
{
"name": "$XSAPPNAME.Administrators",
"description": "Administrators"
}
],
"attributes": [],
"role-templates": [
{
"name": "Administrators",
"description": "generated",
"scope-references": [
"$XSAPPNAME.Administrators"
],
"attribute-references": []
}
],
"role-collections": [
{
"name": "Lianchuangjie_Administrators",
"description": "Lianchuangjie Administrators",
"role-template-references": [
"$XSAPPNAME.Administrators"
]
}
],
"oauth2-configuration": {
"redirect-uris": [
"https://*.unibetter-ic.com/**"
]
}
}
{
"requires": {
"[hybrid]": {
"db": {
"binding": {
"type": "cf",
"apiEndpoint": "https://api.cf.cn40.platform.sapcloud.cn",
"org": "Shenzhen-Lianchuangjie-Technology-Co-Ltd-test-cnrc164l",
"space": "gzpTest",
"instance": "lianchuangjie-test-db",
"key": "lianchuangjie-test-db-key",
"resolved": false
},
"kind": "hana",
"vcap": {
"name": "db"
}
}
}
}
}
{
"VCAP_SERVICES": {
"hana": [
{
"name": "lianchuangjie-test-db",
"tags": [
"hana"
],
"credentials": {
"database_id": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf",
"host": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn",
"port": "443",
"driver": "com.sap.db.jdbc.Driver",
"url": "jdbc:sap://b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn:443?encrypt=true&validateCertificate=true&currentschema=DEC349A60E1E418694DD98B0D203ED39",
"schema": "DEC349A60E1E418694DD98B0D203ED39",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN\nMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT\nHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN\nNDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs\nIEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi\nMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+\najWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0\n2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp\nwgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM\npG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD\nnU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po\nsMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx\nZre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd\nLvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX\nKyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe\nXoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL\ntgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv\nTiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN\nAQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw\nGXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H\nPNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF\nO4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ\nREtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik\nAdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv\n/PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+\np6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw\nMUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF\nqUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK\novfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+\n-----END CERTIFICATE-----",
"hdi_user": "DEC349A60E1E418694DD98B0D203ED39_7T938RVN2SOKDT8C1R6SWU2UP_DT",
"hdi_password": "Rm3q6gUne0bF3y6oGRgGsFDY.8aQs5_SRtD-qDjDELWyREaN2aGCNNphwivVncXkmLspPVX2XV44rdDH6ZYnkgq123yxHANbLxI_H_NcxLr9eoG_9SduO21YyyvZLuhY",
"user": "DEC349A60E1E418694DD98B0D203ED39_7T938RVN2SOKDT8C1R6SWU2UP_RT",
"password": "Zu8veuwQFG3tvEqAqpnVnl13jZbJEh4CBzWX9i0bY6w9x9TaxP4Jzsy1VXqEyGRLsS4EEaatuYajgnPGrW.oiwKMGG8BZB4s1KVYC01pTDHrdvzFZx-tj-qLBY3PrENK"
}
}
]
}
}
_schema-version: '3.1'
ID: lianchuangjie
version: 1.0.0-SNAPSHOT
description: "A simple CAP project."
parameters:
enable-parallel-deployments: true
build-parameters:
before-all:
- builder: custom
commands:
- npm ci
- npx cds build --production
modules:
- name: lianchuangjie-test-srv
type: java
path: srv
parameters:
buildpack: sap_java_buildpack_jakarta
readiness-health-check-type: http
readiness-health-check-http-endpoint: /actuator/health/readiness
routes:
- route: lianchuangjie-test-srv.unibetter-ic.com
properties:
SPRING_PROFILES_ACTIVE: cloud,sandbox
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 17.+ }'
build-parameters:
builder: custom
commands:
- mvn clean package -DskipTests=true --batch-mode
build-result: target/*-exec.jar
provides:
- name: srv-api # required by consumers of CAP services (e.g. approuter)
properties:
srv-url: "${protocol}://${routes/0/route}"
requires:
- name: lianchuangjie-test-db
- name: lianchuangjie-test-auth
- name: app-api
properties:
CDS_MULTITENANCY_APPUI_URL: ~{url}
- name: lianchuangjie-test-db-deployer
type: hdb
path: db
parameters:
buildpack: nodejs_buildpack
build-parameters:
builder: custom
commands:
- npm run build
requires:
- name: lianchuangjie-test-db
- name: orders
type: html5
path: app/orders
build-parameters:
builder: custom
commands:
- npm run build
supported-platforms:
[ ]
build-result: .
- name: lianchuangjie-test
type: approuter.nodejs
path: app\router
parameters:
#keep-existing-routes: true
disk-quota: 1024M
memory: 512M
routes:
- route: lianchuangjie-test.unibetter-ic.com
requires:
- name: srv-api
group: destinations
properties:
name: srv-api # must be used in xs-app.json as well
url: ~{srv-url}
forwardAuthToken: true
- name: lianchuangjie-test-auth
build-parameters:
requires:
- name: orders
artifacts:
- './*'
target-path: orders
provides:
- name: app-api
properties:
app-protocol: ${protocol}
app-uri: "${protocol}://${routes/0/route}"
url: "${protocol}://${routes/0/route}"
resources:
- name: lianchuangjie-test-auth
type: org.cloudfoundry.managed-service
parameters:
service: xsuaa
service-plan: application
path: ./xs-security.json
config:
xsappname: lianchuangjie-test-${org}-${space}
tenant-mode: dedicated
- name: lianchuangjie-test-db
type: com.sap.xs.hdi-container
parameters:
service: hana
service-plan: hdi-shared
{
"xsappname": "lianchuangjie-test",
"tenant-mode": "dedicated",
"scopes": [
{
"name": "$XSAPPNAME.Administrators",
"description": "Administrators"
}
],
"attributes": [],
"role-templates": [
{
"name": "Administrators",
"description": "generated",
"scope-references": [
"$XSAPPNAME.Administrators"
],
"attribute-references": []
}
],
"role-collections": [
{
"name": "Lianchuangjie_Administrators",
"description": "Lianchuangjie Administrators",
"role-template-references": [
"$XSAPPNAME.Administrators"
]
}
],
"oauth2-configuration": {
"redirect-uris": [
"https://*.unibetter-ic.com/**"
]
}
}
{
"requires": {
"[hybrid]": {
"db": {
"binding": {
"type": "cf",
"apiEndpoint": "https://api.cf.cn40.platform.sapcloud.cn",
"org": "Shenzhen-Lianchuangjie-Technology-Co-Ltd-test-cnrc164l",
"space": "gzpTest",
"instance": "lianchuangjie-test-db",
"key": "lianchuangjie-test-db-key",
"resolved": false
},
"kind": "hana",
"vcap": {
"name": "db"
}
}
}
}
}
{
"VCAP_SERVICES": {
"hana": [
{
"name": "lianchuangjie-test-db",
"tags": [
"hana"
],
"credentials": {
"database_id": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf",
"host": "b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn",
"port": "443",
"driver": "com.sap.db.jdbc.Driver",
"url": "jdbc:sap://b8eb3a33-6c01-42aa-af6e-d1e099b381cf.hana.prod-cn40.hanacloud.sapcloud.cn:443?encrypt=true&validateCertificate=true&currentschema=DEC349A60E1E418694DD98B0D203ED39",
"schema": "DEC349A60E1E418694DD98B0D203ED39",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3\nd3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD\nQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT\nMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j\nb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB\nCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97\nnh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt\n43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P\nT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4\ngdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO\nBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR\nTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw\nDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr\nhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg\n06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF\nPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls\nYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk\nCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN\nMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT\nHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN\nNDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs\nIEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi\nMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+\najWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0\n2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp\nwgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM\npG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD\nnU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po\nsMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx\nZre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd\nLvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX\nKyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe\nXoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL\ntgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv\nTiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN\nAQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw\nGXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H\nPNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF\nO4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ\nREtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik\nAdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv\n/PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+\np6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw\nMUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF\nqUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK\novfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+\n-----END CERTIFICATE-----",
"hdi_user": "DEC349A60E1E418694DD98B0D203ED39_7T938RVN2SOKDT8C1R6SWU2UP_DT",
"hdi_password": "Rm3q6gUne0bF3y6oGRgGsFDY.8aQs5_SRtD-qDjDELWyREaN2aGCNNphwivVncXkmLspPVX2XV44rdDH6ZYnkgq123yxHANbLxI_H_NcxLr9eoG_9SduO21YyyvZLuhY",
"user": "DEC349A60E1E418694DD98B0D203ED39_7T938RVN2SOKDT8C1R6SWU2UP_RT",
"password": "Zu8veuwQFG3tvEqAqpnVnl13jZbJEh4CBzWX9i0bY6w9x9TaxP4Jzsy1VXqEyGRLsS4EEaatuYajgnPGrW.oiwKMGG8BZB4s1KVYC01pTDHrdvzFZx-tj-qLBY3PrENK"
}
}
]
}
}
_schema-version: '3.1'
ID: lianchuangjie
version: 1.0.0-SNAPSHOT
description: "A simple CAP project."
parameters:
enable-parallel-deployments: true
build-parameters:
before-all:
- builder: custom
commands:
- npm ci
- npx cds build --production
modules:
- name: lianchuangjie-test-srv
type: java
path: srv
parameters:
buildpack: sap_java_buildpack_jakarta
readiness-health-check-type: http
readiness-health-check-http-endpoint: /actuator/health/readiness
routes:
- route: lianchuangjie-test-srv.unibetter-ic.com
properties:
SPRING_PROFILES_ACTIVE: cloud,sandbox
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 17.+ }'
build-parameters:
builder: custom
commands:
- mvn clean package -DskipTests=true --batch-mode
build-result: target/*-exec.jar
provides:
- name: srv-api # required by consumers of CAP services (e.g. approuter)
properties:
srv-url: "${protocol}://${routes/0/route}"
requires:
- name: lianchuangjie-test-db
- name: lianchuangjie-test-auth
- name: app-api
properties:
CDS_MULTITENANCY_APPUI_URL: ~{url}
- name: lianchuangjie-test-db-deployer
type: hdb
path: db
parameters:
buildpack: nodejs_buildpack
build-parameters:
builder: custom
commands:
- npm run build
requires:
- name: lianchuangjie-test-db
- name: orders
type: html5
path: app/orders
build-parameters:
builder: custom
commands:
- npm run build
supported-platforms:
[ ]
build-result: .
- name: lianchuangjie-test
type: approuter.nodejs
path: app\router
parameters:
#keep-existing-routes: true
disk-quota: 1024M
memory: 512M
routes:
- route: lianchuangjie-test.unibetter-ic.com
requires:
- name: srv-api
group: destinations
properties:
name: srv-api # must be used in xs-app.json as well
url: ~{srv-url}
forwardAuthToken: true
- name: lianchuangjie-test-auth
build-parameters:
requires:
- name: orders
artifacts:
- './*'
target-path: orders
provides:
- name: app-api
properties:
app-protocol: ${protocol}
app-uri: "${protocol}://${routes/0/route}"
url: "${protocol}://${routes/0/route}"
resources:
- name: lianchuangjie-test-auth
type: org.cloudfoundry.managed-service
parameters:
service: xsuaa
service-plan: application
path: ./xs-security.json
config:
xsappname: lianchuangjie-test-${org}-${space}
tenant-mode: dedicated
- name: lianchuangjie-test-db
type: com.sap.xs.hdi-container
parameters:
service: hana
service-plan: hdi-shared
{
"xsappname": "lianchuangjie-test",
"tenant-mode": "dedicated",
"scopes": [
{
"name": "$XSAPPNAME.Administrators",
"description": "Administrators"
}
],
"attributes": [],
"role-templates": [
{
"name": "Administrators",
"description": "generated",
"scope-references": [
"$XSAPPNAME.Administrators"
],
"attribute-references": []
}
],
"role-collections": [
{
"name": "Lianchuangjie_Administrators",
"description": "Lianchuangjie Administrators",
"role-template-references": [
"$XSAPPNAME.Administrators"
]
}
],
"oauth2-configuration": {
"redirect-uris": [
"https://*.unibetter-ic.com/**"
]
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment