我目前正在使用GitLab作为Cordova项目的主要存储库和PhoneGap Build for Continuous Integration,但这些并不能很好地协同工作,据我所知GitLab有自己的构建器。
您能告诉我这个功能是否存在,如果存在,我应该使用哪些功能?
答案 0 :(得分:3)
据说,它应该是通过一些内置的方式实现的。
“只是一个快速更新,我们添加了将PhoneGap Build帐户链接到现有BitBucket或GitLab帐户的功能。这将允许您构建您的私有BitBucket或GitLab托管存储库,而无需诉诸不安全的基本身份验证(是的,人们正在这样做!)。“ (http://phonegap.com/blog/2016/04/11/bitbucket-and-gitlab-repo-oauth-supported/)
但我找不到这种集成,我编写了一个脚本来自动化从Gitlab的CI,Pipelines到Phonegap的部署。以下是设置此步骤的步骤:
@Html.TextBoxFor()
例如,以下代码:
npm install -D phonegap-build
设置#!/usr/bin/env node
var phonegapbuild = require('phonegap-build')
console.log('Logging in...')
phonegapbuild.login({
username: process.env.PHONEGAP_BUILD_USERNAME,
password: process.env.PHONEGAP_BUILD_PASSWORD
}, function(e) {
console.log('logged in!')
var options = { platforms: ['android'], }
if(e) error(e)
else {
console.log('Calling `build` function...')
phonegapbuild.build(options, function(e) {
if (e) error(e)
else console.log('Success!')
})
}
})
const error = (err) => { console.error(err); process.exitCode = 1 }
,即gitlab CI,以运行您的部署脚本。使用名为Pipelines
的文件执行此操作,并指定所需的作业。我在引用docs:
变量: GIT_DEPTH:“1” 开发: image:node:latest 阶段:部署 allow_failure:false 脚本: - npm安装 - ./scripts/gitlab-ci_deploy.js
.gitlab-ci.yml
它会自动将项目部署到phonegap。
答案 1 :(得分:0)
GitLab确实包含了它自己的持续集成。以前只能在企业版中使用,但现在也可以在Community Edition中使用。
信息:https://about.gitlab.com/gitlab-ci/
GitLab CI文档:http://doc.gitlab.com/ce/ci/README.html
我希望这会有所帮助。