6. Continuous Integration(持续集成)
6.持续集成
Yarn可以很容易地用于各种连续集成系统。为了加速构建,Yarn缓存目录可以跨构建保存。
Yarn预先安装在AppVeyor上,所以你不需要做任何额外的事情就可以将它用作生成的一部分。
为了加速构建,您可以将Yarn的缓存文件夹添加到您的appveyor.yml
:
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-启用构建
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
调用来完成此操作:
sudo apt-get install -y -qq yarn=1.3.2-1
基于容器的构建
基于容器的版本没有sudo
特权,所以他们必须依靠其他方式进行安装。例如:
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版本与信号量版本相匹配,请在项目设置中将下面的行添加到您的设置命令中。
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文档,您可以快速启动并运行。有关示例配置文件,请查看其示例配置文件之一。