首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

6. Continuous Integration(持续集成)

Yarn可以很容易地用于各种连续集成系统。为了加速构建,Yarn缓存目录可以跨构建保存。

Yarn预先安装在AppVeyor上,所以你不需要做任何额外的事情就可以将它用作生成的一部分。

为了加速构建,您可以将Yarn的缓存文件夹添加到您的appveyor.yml

代码语言:javascript
复制
cache:
 - "%LOCALAPPDATA%\\Yarn"

CircleCI上预先安装Yarn。按照Yarn文档,您可以快速启动并运行。

Yarn是预装的Codeship Basic

如果您使用Codeship Pro(使用Docker),建议您通过我们的Debian / Ubuntu软件包安装Yarn。

通过yarn.lock存储库根目录中的存在Travis CI来检测Yarn的使用。如果可用,Travis CI将yarn根据需要进行安装,并将yarn作为默认安装命令执行。

如果您的安装阶段需要更多,则需要自己安装Yarn,直到它被预安装在构建映像中。

有几种方法可以安装Yarn;其中一个是使用sudo,另一个没有。如果您正在使用基于容器的环境,使用后者。

sudo-启用构建

代码语言:javascript
复制
sudo: required
before_install: # if "install" is overridden
  # Repo for Yarn
  - sudo apt-key adv --fetch-keys http://dl.yarnpkg.com/debian/pubkey.gpg
  - echo "deb http://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
  - sudo apt-get update -qq
  - sudo apt-get install -y -qq yarn
cache:
  yarn: true

建议您锁定特定版本的Yarn,以便所有版本都使用相同版本的Yarn,并且您可以在切换之前测试新的Yarn版本。您可以通过将版本号添加到apt-get install调用来完成此操作:

代码语言:javascript
复制
sudo apt-get install -y -qq yarn=1.3.2-1

基于容器的构建

基于容器的版本没有sudo特权,所以他们必须依靠其他方式进行安装。例如:

代码语言:javascript
复制
sudo: false
before_install:
  - curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.3.2
  - export PATH=$HOME/.yarn/bin:$PATH
cache:
  yarn: true

Semaphore已经为所有支持的Node.js版本预先安装了Yarn,并且Yarn缓存无需用户交互即可工作。

为了确保您的本地Yarn版本与信号量版本相匹配,请在项目设置中将下面的行添加到您的设置命令中。

代码语言:javascript
复制
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb http://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
# install-package is a tool for caching APT installations in Semaphore
# defining a package version is optional
install-package yarn=<version>

Yarn预先安装在SolanoCI上。按照Yarn文档,您可以快速启动并运行。有关示例配置文件,请查看其示例配置文件之一。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com