我目前正在使用 GitLab作为Cordova项目的主要存储库和PhoneGap Build for Continuous Integration,但这些并不能很好地协同工作,据我所知GitLab有自己的构建器. 你能否告诉我这个功能是否存在,如果存
你能否告诉我这个功能是否存在,如果存在,我应该使用哪些功能?
据说,应该通过一些内置方式实现.“只需快速更新,我们就添加了将PhoneGap Build帐户链接到现有BitBucket或GitLab帐户的功能.这将允许您构建私有BitBucket或GitLab托管存储库,而无需采用不安全的基本身份验证(是的,人们是这样做!).“ (http://phonegap.com/blog/2016/04/11/bitbucket-and-gitlab-repo-oauth-supported/)
但是我找不到这种集成,我编写了一个脚本来自动化从Gitlab的CI,Pipelines到Phonegap的部署.以下是设置此步骤的步骤:
> npm install -D phonegap-build
>有一个脚本使用phonegap-build登录并在您的存储库中的phonegap云中构建项目.
例如,以下代码:
#!/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,以运行您的部署脚本.使用名为.gitlab-ci.yml的文件执行此操作,并指定所需的作业.我在引用docs时写了我的:
变量: GIT_DEPTH:“1”开发: image:node:latest 阶段:部署 allow_failure:false 脚本: – npm安装 – ./scripts/gitlab-ci_deploy.js> git commit&& git push,它会自动将项目部署到phonegap.