如何通过云效Flow完成自动化构建—构建集群,云效流水线Flow是持续交付的载体,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线过程的持续交付。通过持续向团队提供及时反馈,让交付过程高效顺畅,云效Flow为了支持用户个性化的自动化构建。
 
云效构建集群,云效Flow 支持用户个性化的构建场景,提供三种类型的构建集群的能力支持。用户在流水线编排时,可以为任务设置不同的构建集群。
 

北京和香港构建集群

 
为解决用户下载海外构建依赖或者连接海外服务的场景需求,Flow 分别提供了北京构建集群和香港构建集群。
 
使用构建集群
 
在任务节点选择构建集群,默认使用北京构建集群。
 
 

自有构建集群

 
如果有特殊的构建环境需求,用户也可在 Flow 中创建并使用私有的构建集群。
 
云效流水线 Flow 支持使用用户阿里云 ECS 或者自有主机作为构建集群。
 
对于上述的主机类型,需要确认以下配置:
  1. 支持的 OS 类型:Linux
  2. 推荐配置:4 核 8G 或以上
  3. 安装并启动 Docker Daemon:https://docs.docker.com/engine/install/
  4. 验证 Docker 运行状态:在主机上执行命令 sudo docker ps; echo $?,输出应该为 0
  5. 对于使用阿里云ECS主机作为构建集群的情况,需要确保云助手处于运行状态
 
创建自有构建集群
 
通过 构建集群管理 -> 新建构建集群,开始创建自有构建集群。
 
 
你可以创建两种类型的主机组:
 
使用自有构建集群
 
在任务节点选择构建集群,切换为自有构建集群。
 
 
图2.使用构建集群
 

构建语言支持

 
云效流水线 Flow 通过多种构建步骤,支持不同语言的构建能力。下面描述构建环境中安装的软件清单,及不同语言场景下的使用方法。
 

公共软件

 
所有构建环境都包含的软件:
  1. gcc/g++ 4.8.4
  2. make 3.8.1
  3. curl 7.35.0
  4. wget 1.15
  5. unzip 6.00
  6. git 1.9.1
  7. python 3.5(不在PATH中,需要使用/usr/alibaba/install/python-3.5.0/bin/python3来引用)
 
各语言构建环境中的软件及使用方法
 

 
对应的构建能力都是通过基础构建机支持,基础环境已经支持了上述构建能力,如上述能力无法支持你的构建需求,请你联系我们的客服以获取更多的支持。
 

设置依赖下载访问凭证

 
环境变量
 
在构建过程中,需要设置仓库的访问凭证并下载构建依赖,为保护访问凭证的安全性,Flow 支持通过环境变量设置访问凭证,关于环境变量请查看:环境变量
 
当然,作为企业统一管控的仓库访问凭证,我们更建议您使用通用变量组进行管理,关于通用变量组请查看:通用变量组
 
以下,提供了如何使用环境变量配置 Java、NPM 和 GoLang 仓库访问凭证的指南。
 
Java
 
1、在settings.xml中添加私库的地址和账号/密码(环境变量)。
 
<servers>
<server>
<id>rdc-releases</id>
<username>${MVN_USERNAME}</username>
<password>${MVN_PASSWORD}</password>
</server>
<server>
<id>rdc-snapshots</id>
<username>${MVN_USERNAME}</username>
<password>${MVN_PASSWORD}</password>
</server>
</servers> <profiles>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<id>rdc-private-repo</id>
<repositories>
<repository>
<id>rdc-releases</id>
<url>https://packages.aliyun.com/maven/repository/2000093-release/</url>
</repository>
<repository>
<id>rdc-snapshots</id>
<url>https://packages.aliyun.com/maven/repository/2000093-snapshot/</url>
</repository>
</repositories>
</profile>
</profiles>

  

将其中相关的<url>内容替换成您自己的私库地址。

 
2、在流水线中配置账号密码的环境变量。
 
 
 
3、在流水线运行命令中, 使用settings.xml。
 
 
 
NPM 和 GoLang
 
1、在流水线中配置账号密码的环境变量。
 
 
2、在npm install或go get之前,添加如下命令。
 
git config --global url."https://${GIT_USERNAME}:${GIT_PASSWORD}@codeup.aliyun.com".insteadOf "https://codeup.aliyun.com"

   

 
 
其中:
 
GIT_USERNAME:是您在第 1 步中配置的私有 git 仓库的用户名环境变量的名称。
 
GIT_PASSWORD:是您在第 1 步中配置的私有 git 仓库的密码环境变量的名称。
 
将其中的codeup.aliyun.com部分替换成您实际使用的 git 仓库的域名,比如github.com
 
云效Flow支持用户个性化的自动化构建。 提供三种类型的构建集群的能力支持。用户在流水线编排时,可以为任务设置不同的构建集群。云效流水线Flow是持续交付的载体,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线过程的持续交付。通过持续向团队提供及时反馈,让交付过程高效顺畅。

如何通过云效Flow完成自动化构建—构建集群的更多相关文章

  1. 如何通过云效Flow完成自动化部署—主机部署

    如何通过云效Flow完成自动化部署-主机部署,云效流水线Flow是持续交付的载体,通过构建自动化.集成自动化.验证自动化.部署自动化,完成从开发到上线过程的持续交付.通过持续向团队提供及时反馈,让交付 ...

  2. 如何使用云效Flow做质量检测,保障高质量的交付速度

    使用云效Flow做质量检测,保障高质量的交付速度,云效「Flow」 提供代码扫描. 安全扫描和各种自动化测试能力,支持人工测试卡点.自动化验证卡点等多种质量红线,确保业务质量.云效流水线 Flow 流 ...

  3. 云效Flow如何实现阿里云ECS多环境发布

    一.背景 云效Flow基于标签功能实现阿里云ECS多环境发布,在软件开发和部署过程中,我们的软件往往需要在不同的运行环境中运行,例如:开发人员本地开发环境.测试团队的测试环境.还有类生产环境和生产环境 ...

  4. 利用ansible进行自动化构建etcd集群

    上一篇进行了手动安装etcd集群,此篇利用自动化工具ansible为三个节点构建etcd集群 环境: master:192.168.101.14,node1:192.168.101.15,node2: ...

  5. Ansible自动化部署K8S集群

    Ansible自动化部署K8S集群 1.1 Ansible介绍 Ansible是一种IT自动化工具.它可以配置系统,部署软件以及协调更高级的IT任务,例如持续部署,滚动更新.Ansible适用于管理企 ...

  6. [k8s]kubespray(ansible)自动化安装k8s集群

    kubespray(ansible)自动化安装k8s集群 https://github.com/kubernetes-incubator/kubespray https://kubernetes.io ...

  7. [自动化]基于kolla-ceph的自动化部署ceph集群

    kolla-ceph来源: 项目中的部分代码来自于kolla和kolla-ansible kolla-ceph的介绍: 1.镜像的构建很方便, 基于容器的方式部署,创建.删除方便 2.kolla-ce ...

  8. [自动化]基于kolla的自动化部署ceph集群

    kolla-ceph来源: 项目中的部分代码来自于kolla和kolla-ansible kolla-ceph的介绍: 1.镜像的构建很方便, 基于容器的方式部署,创建.删除方便 2.kolla-ce ...

  9. windows+nginx+iis+redis+Task.MainForm构建分布式架构 之 (nginx+iis构建服务集群)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,由标题就能看出此内容不是一篇分享文章能说完的,所以我打算分几篇分享文章来讲解,一步一步实现分 ...

随机推荐

  1. 12-SpringCloud GateWay

    GateWay和Zuul说明 Zuul开发人员窝里斗,实属明日黄花 重点关注Gate Way GateWay是什么 上一代zuul 1.x官网 Gateway官网 概述 Cloud全家桶中有个很重要的 ...

  2. Redis(三):新数据类型

    配置文件redis.conf详解 bind=127.0.0.1 # 表示只能在本机中访问redis,将该行注释掉,即可接收任何IP地址的访问 protected-mode # 设置为no,表示关闭保护 ...

  3. rasa form的中断形式 自然机器语言学习 人工智能

    Forms形式 最常见的对话模式之一是从用户那里收集一些信息以便做某事(预订餐厅.调用 API.搜索数据库等).这也称为**槽填充**. 用法# 要在 Rasa Open Source 中使用表单,您 ...

  4. cs_play

    # -*-coding:utf-8-*-__author__ = "logan.xu"###构造函数#class Role:# n = 123# # 类变量 比如 n = 123# ...

  5. JavaScript之创建对象的模式

    使用Object的构造函数可以创建对象或者使用对象字面量来创建单个对象,但是这些方法有一个明显的缺点:使用相同的一个接口创建很多对象,会产生大量的重复代码. (一)工厂模式 这种模式抽象了创建具体对象 ...

  6. AN INTEGER FORMULA FOR FIBONACCI NUMBERS

    https://blog.paulhankin.net/fibonacci/ This code, somewhat surprisingly, generates Fibonacci numbers ...

  7. Mac shell 调节音量

    $ osascript -e 'get volume settings' $ osascript -e 'output volume of (get volume settings)' $ osasc ...

  8. Java基础之类加载器

    Java类加载器是用户程序和JVM虚拟机之间的桥梁,在Java程序中起了至关重要的作用,理解它有利于我们写出更优雅的程序.本文首先介绍了Java虚拟机加载程序的过程,简述了Java类加载器的加载方式( ...

  9. 密码学系列之:bcrypt加密算法详解

    目录 简介 bcrypt的工作原理 bcrypt算法实现 bcrypt hash的结构 hash的历史 简介 今天要给大家介绍的一种加密算法叫做bcrypt, bcrypt是由Niels Provos ...

  10. 每日学习——C++习题

    1.题目要求:求圆的面积,数据成员为半径r,定义为私有成员,要求用成员函数实现在键盘上输入圆半径,计算圆面积.输出圆面积三个功能,要求三个成员函数在类内声明,在类外定义 //定义类 class Cir ...