Commit 569e8975 by 李二毛

Merge branch 'development' into 'rel/major'

Development

See merge request liermao/microservice-autodevopspipelines!51
parents 8539bf43 186f8768
Pipeline #4177 failed with stages
in 21 seconds
......@@ -28,6 +28,9 @@ staging-major_job:
- bash ./devops/PipeLines/Creation/003_ReleaseMajor.sh
# 004 Create gateway route.
- export KongApiServer='http://127.0.0.1:81'
- export KongRouteDomain='staging-api.geekbuy.cn'
- bash ./devops/PipeLines/Creation/Gateways/Kong/004_CreateGatewayRoute.sh
only:
- rel/major
......
......@@ -10,10 +10,8 @@ GetAppName appName
echo "Starting release for ${appName}, it will dynamicly create k8s environment..."
GetMajor major
GetVersion version
GetNameSpace namespace
declare releaseName="${appName}-v${major}"
echo ""
echo "Please check the image version of each microservice carefully !!!"
......@@ -26,9 +24,11 @@ done
echo ""
GetMajor major
GetReplicas replicas
GetImageUserName registryUserName
ToLower ${Environment} environment
ToLower "${appName}-v${major}" releaseName
helm install /root/AutoDevOpsPipeLinesCharts \
--name=${releaseName} \
......
......@@ -2,15 +2,19 @@
set -e
IFS=$'\n\n'
declare appName=($(grep -oP '(?<=AppName>)[^<]+' "devops/app.props"))
# Import external functions
chmod +x ./devops/PipeLines/Functions.core.sh
source ./devops/PipeLines/Functions.core.sh
GetAppName appName
echo "Start building the gateway for ${appName} route dynamically..."
declare namespace=($(grep -oP '(?<=Namespace>)[^<]+' "devops/app.props"))
declare namespaceOfK8s=$(echo "${appName}-v${major}" | tr 'A-Z' 'a-z')
declare fdnOfK8s="${namespaceOfK8s}.svc.cluster.local"
declare kongServiceUrl=($(grep -oP '(?<=Namespace>)[^<]+' "devops/app.props"))
declare major=($(grep -oP '(?<=Major>)[^<]+' "devops/version.props"))
GetMajor major
GetNameSpace namespace
declare fdnOfK8s="${namespace}.svc.cluster.local"
declare kongServiceBaseUrl="${KongApiServer}/services"
declare kongRouteBaseUrl="${KongApiServer}/routes"
declare releaseVersion="v${major}"
# resilience handle
......@@ -58,33 +62,31 @@ function createRoute()
--retry $4 \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-d "{ \"service\": "{\"id\":\"$svcId\"}",\"paths\": "[\"$6\"]",\"methods\": "$defMethods",\"strip_path\":$7,\"hosts\": "[\"$kongRouteDomain\"]"}";
-d "{ \"service\": "{\"id\":\"$svcId\"}",\"paths\": "[\"$6\"]",\"methods\": "$defMethods",\"strip_path\":$7,\"hosts\": "[\"${KongRouteDomain}\"]"}";
fi
fi
set -e
}
declare services=$(ls -l src/services | awk 'NR>1')
declare servicePrefix=""
declare serviceName=""
declare serviceNameWithVersion=""
declare serviceFullName=""
declare serviceFdn=""
declare serviceUrl=""
declare serviceRouteUrl=""
for service in ${services}
for servicePrefix in `ls ./src/Services|xargs -d '/'`
do
servicePrefix=($(echo ${service} | awk '{print $9}'))
serviceName="${servicePrefix}-api"
GetServiceName ${servicePrefix} serviceName
# replace . to -, compatible with k8s.
serviceName=${serviceName/\./\-}
serviceNameWithVersion="${serviceName}-${releaseVersion}"
serviceFullName="${serviceName}.${fdnOfK8s}"
serviceUrl="http://${serviceFullName}/api/${servicePrefix}"
serviceFdn="${serviceName}.${fdnOfK8s}"
serviceUrl="http://${serviceFdn}/api/${servicePrefix}"
echo "Begin creating service[${serviceNameWithVersion}]"
createService ${kongServiceUrl} ${maxConnectTime} ${maxTime} ${retryCount} ${serviceNameWithVersion} ${serviceUrl}
echo "Begin creating route of service[${serviceNameWithVersion}]"
serviceRouteUrl="/api/${releaseVersion}/${servicePrefix}"
createRoute ${kongServiceUrl} ${maxConnectTime} ${maxTime} ${retryCount} ${serviceNameWithVersion} ${serviceRouteUrl} true
createRoute ${kongRouteBaseUrl} ${maxConnectTime} ${maxTime} ${retryCount} ${serviceNameWithVersion} ${serviceRouteUrl} true
done
echo ""
......
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