Jenkinsfile 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. properties([
  2. parameters([
  3. // New preferred params:
  4. string(name: 'baseBranch', defaultValue: 'ahx-dev', description: '分支名(如 master, dev)'),
  5. choice(name: 'namespace', choices: ['ahxpm'], description: 'K8S namespace(如 default)'),
  6. choice(name: 'action', choices: ['upgrade', 'upgrade:selected'], description: '选择操作类型')
  7. // Backward compatible legacy param:
  8. // string(name: 'actionParameter', defaultValue: 'refs/heads/dev', description: '参数路径(如 refs/heads/dev)')
  9. ])
  10. ])
  11. node {
  12. checkout scm
  13. def deployAction = params.action ?: 'upgrade'
  14. def deployBaseBranch = params.baseBranch ?: 'dev'
  15. def deployNamespace = params.namespace ?: 'ahxpm'
  16. println "deploy namespace: ${deployNamespace}"
  17. def yaml2Map = load "./sharedLibs/yaml2Map.groovy"
  18. def stages = load "./sharedLibs/stages.k8s.groovy"
  19. def pipeline = load "./sharedLibs/pipelines.k8s.java.groovy"
  20. def GLOBAL_CONFIG = yaml2Map.read('global.yaml').project
  21. def WORKING_SPACE = 'ahx-oidc/DEV'
  22. dir(WORKING_SPACE) {
  23. def PROJECT_CONFIG = yaml2Map.read('cfg.yaml').project
  24. def CONFIG = yaml2Map.merge(PROJECT_CONFIG, GLOBAL_CONFIG)
  25. CONFIG.pipeline = PROJECT_CONFIG.pipeline
  26. println 'configs: ' + CONFIG
  27. println 'deployNamespace: ' + deployNamespace
  28. pipeline.run(CONFIG, deployAction, stages, deployBaseBranch, deployNamespace)
  29. }
  30. }