持续交付部署

    • 编写参数配置文件

      1. env:
      2. MYSQL_HOST: c7n-mysql.c7n-system.svc
      3. MYSQL_PORT: "3306"
      4. MYSQL_USER: root
      5. MYSQL_PASS: password
      6. SQL_SCRIPT: |
      7. CREATE USER IF NOT EXISTS 'choerodon'@'%' IDENTIFIED BY 'password';
      8. CREATE DATABASE IF NOT EXISTS devops_service DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
      9. CREATE DATABASE IF NOT EXISTS workflow_service DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
      10. GRANT ALL PRIVILEGES ON devops_service.* TO choerodon@'%';
      11. GRANT ALL PRIVILEGES ON workflow_service.* TO choerodon@'%';
      12. FLUSH PRIVILEGES;
    • 执行安装

      1. helm upgrade --install create-c7ncd-db c7n/mysql-client \
      2. -f create-c7ncd-db.yaml \
      3. --create-namespace \
      4. --version 0.1.0 \
      5. --namespace c7n-system
    • 若需了解项目详情及各项参数含义,请移步 open-hand/workflow-service

      1. env:
      2. open:
      3. EUREKA_CLIENT_SERVICEURL_DEFAULTZONE: http://choerodon-register.c7n-system:8000/eureka/
      4. SPRING_DATASOURCE_URL: jdbc:mysql://c7n-mysql.c7n-system:3306/workflow_service?useUnicode=true&characterEncoding=utf-8&useSSL=false&useInformationSchema=true&remarks=true&serverTimezone=Asia/Shanghai
      5. SPRING_DATASOURCE_USERNAME: choerodon
      6. SPRING_DATASOURCE_PASSWORD: password
    • 部署服务

    • 验证部署

      • 验证命令
    1. ```
    2. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=workflow-service -o jsonpath="{.items[0].status.podIP}"):8066/actuator/health | jq -r .status
    3. ```
    4. - 出现以下类似信息即为成功部署
    5. ```
    6. UP
    • 若需了解项目详情及各项参数含义,请移步 。
    • 如何获取 GITLAB_PRIVATETOKEN 请查看这里
    • 编写参数配置文件 gitlab-service.yaml

      1. env:
      2. open:
      3. EUREKA_CLIENT_SERVICEURL_DEFAULTZONE: http://choerodon-register.c7n-system:8000/eureka/
      4. GITLAB_URL: http://gitlab.example.choerodon.io
      5. GITLAB_PRIVATETOKEN: xxxxxxxxxxxxxx
      1. helm upgrade --install gitlab-service c7n/gitlab-service \
      2. -f gitlab-service.yaml \
      3. --create-namespace \
      4. --version 0.23.1 \
      5. --namespace c7n-system
    • 验证部署

      • 验证命令
    • 若需了解项目详情及各项参数含义,请移步 。

    • 编写参数配置文件 devops-service.yaml

      1. preJob:
      2. preInitDB:
      3. datasource:
      4. url: jdbc:mysql://c7n-mysql.c7n-system:3306/?useUnicode=true&characterEncoding=utf-8&useSSL=false&useInformationSchema=true&remarks=true&serverTimezone=Asia/Shanghai
      5. username: choerodon
      6. password: password
      7. datasources:
      8. # 多数据源初始化初始化菜单数据
      9. # 支持框架数据和devops进行分库 指定菜单初始化地址
      10. platform:
      11. url: jdbc:mysql://c7n-mysql.c7n-system:3306/?useUnicode=true&characterEncoding=utf-8&useSSL=false&useInformationSchema=true&remarks=true&serverTimezone=Asia/Shanghai
      12. username: choerodon
      13. password: password
      14. driver: com.mysql.jdbc.Driver
      15. env:
      16. open:
      17. SPRING_REDIS_HOST: c7n-redis.c7n-system.svc
      18. SPRING_REDIS_PORT: 6379
      19. EUREKA_CLIENT_SERVICEURL_DEFAULTZONE: http://choerodon-register.c7n-system:8000/eureka/
      20. SPRING_DATASOURCE_USERNAME: choerodon
      21. SPRING_DATASOURCE_PASSWORD: password
      22. SERVICES_GITLAB_URL: http://gitlab.example.choerodon.io/
      23. SERVICES_GITLAB_SSHURL: gitlab.example.choerodon.io:30022
      24. SERVICES_GITLAB_PROJECTLIMIT: 100
      25. SERVICES_HELM_URL: http://chart.example.choerodon.io
      26. SERVICES_HARBOR_BASEURL: https://registry.example.choerodon.io
      27. SERVICES_HARBOR_USERNAME: admin
      28. SERVICES_HARBOR_PASSWORD: Harbor12345
      29. SERVICES_HARBOR_INSECURESKIPTLSVERIFY: true
      30. SERVICES_GATEWAY_URL: http://api.example.choerodon.io
      31. AGENT_VERSION: 0.23.4
      32. AGENT_SERVICEURL: ws://devops.example.choerodon.io/websocket
      33. AGENT_REPOURL: https://openchart.choerodon.com.cn/choerodon/c7n/
      34. AGENT_CERTMANAGERURL: https://openchart.choerodon.com.cn/choerodon/c7n/on/c7n/
      35. SERVICES_SONARQUBE_PASSWORD: admin
      36. SERVICES_SONARQUBE_URL: https://sonarqube.example.choerodon.io
      37. SERVICES_SONARQUBE_USERNAME: admin
      38. ingress:
      39. enabled: true
      40. host: devops.example.choerodon.io
      1. helm upgrade --install devops-service c7n/devops-service \
      2. -f devops-service.yaml \
      3. --version 0.23.7 \
      4. --namespace c7n-system
    • 验证部署

      • 验证命令
    1. ```
    2. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=devops-service -o jsonpath="{.items[0].status.podIP}"):8061/actuator/health | jq -r .status
    3. ```
    4. - 出现以下类似信息即为成功部署
    5. ```
    6. ```