| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /**
- * 七个 Java 微服务注册表。promote-image / whole Jenkinsfile 共用。
- */
- def getServiceRegistry() {
- return [
- [prodDir: 'gateway', module: 'alien-gateway', serverPort: '8000', withLib: false, deployName: 'gateway'],
- [prodDir: 'store', module: 'alien-store', serverPort: '50014', withLib: true, deployName: 'store'],
- [prodDir: 'second', module: 'alien-second', serverPort: '50015', withLib: false, deployName: 'second'],
- [prodDir: 'store-platform', module: 'alien-store-platform', serverPort: '50016', withLib: false, deployName: 'store-platform'],
- [prodDir: 'lawyer', module: 'alien-lawyer', serverPort: '50017', withLib: true, deployName: 'lawyer'],
- [prodDir: 'job', module: 'alien-job', serverPort: '50108', withLib: false, deployName: 'job'],
- [prodDir: 'dining', module: 'alien-dining', serverPort: '50019', withLib: false, deployName: 'dining'],
- ]
- }
- def multiParamName(String prodDir) {
- return 'MULTI_' + prodDir.replace('-', '_')
- }
- def filterServices(List registry, Map params) {
- def mode = params.DEPLOY_MODE
- if (mode == 'whole') {
- return registry
- }
- if (mode == 'single') {
- def one = registry.find { it.prodDir == params.SINGLE_SERVICE }
- if (one == null) {
- throw new IllegalArgumentException("未找到 SINGLE_SERVICE=${params.SINGLE_SERVICE}")
- }
- return [one]
- }
- if (mode == 'multi') {
- def selected = []
- registry.each { s ->
- def pn = multiParamName(s.prodDir)
- def v = params[pn]
- if (v instanceof Boolean ? v : 'true'.equalsIgnoreCase(v?.toString())) {
- selected << s
- }
- }
- if (selected.isEmpty()) {
- throw new IllegalArgumentException('multi 模式:请至少勾选一项 MULTI_*')
- }
- return selected
- }
- throw new IllegalArgumentException("未知 DEPLOY_MODE: ${mode}")
- }
- return this
|