标签: bitrise

名为"Foo"的项目不包含名为"Bar"bitrise.io的方案

我只是在bitrise.io中配置一个项目.但是xcode-build失败并出现错误:

xcodebuild: error: The project named "Foo" does not contain a scheme named "Bar". The "-list" option can be used to find the names of the schemes in the project.
Run Code Online (Sandbox Code Playgroud)

我仔细检查,方案Bar确实存在于项目Foo中

xcode xcodebuild ios bitrise

32
推荐指数
5
解决办法
2万
查看次数

15
推荐指数
2
解决办法
1542
查看次数

Android,错误=无法找到以下内容的检测信息:ComponentInfo {}

关于stackoverflow上的这个问题有很多主题/问题(比如Error =无法找到:ComponentInfo {}的检测信息)和其他网站,但是让我的问题与其他网站不同的是我正致力于自动化.那么让我给你更多细节.

当我在本地机器上测试时,我没有问题(我的意思是我的笔记本电脑).我可以运行Espresso测试,所有测试都通过.

现在,我想在CI上运行这些测试(在我的案例中为Bitrise).我创建并运行模拟器.我确认那里没有问题.我有以下脚本:

...
# Check which instrumentation packages have been installed on your device, https://stackoverflow.com/a/23394559/513413
echo ""
echo "Check which instrumentation packages have been installed..."
adb shell pm list instrumentation

# Running tests
echo ""
echo "running test..."
adb shell am instrument -w -r   -e debug false -e class my.package.name.MyActivityTest my.package.name.test/android.support.test.runner.AndroidJUnitRunner
Run Code Online (Sandbox Code Playgroud)

这是CI的输出:

Check which instrumentation packages have been installed...
instrumentation:com.android.emulator.smoketests/android.support.test.runner.AndroidJUnitRunner (target=com.android.emulator.smoketests)
instrumentation:com.android.smoketest.tests/com.android.smoketest.SmokeTestRunner (target=com.android.smoketest)
instrumentation:com.example.android.apis/.app.LocalSampleInstrumentation (target=com.example.android.apis)
running test...
INSTRUMENTATION_STATUS: id=ActivityManagerService
INSTRUMENTATION_STATUS: Error=Unable to find instrumentation info …
Run Code Online (Sandbox Code Playgroud)

automation android android-espresso bitrise

6
推荐指数
1
解决办法
3416
查看次数

如何使用 fastlane 缩短 Flutter iOS 应用程序的构建时间

我的问题是,当使用 Firebase 时(cloud_firestore特别是),Flutter iOS 应用程序的构建时间变得很长,以至于我在 Bitrise 上的 CI 构建超时(28flutter build --release分钟,fastlane 的 20 分钟以上build_ios_app)。所以我无法在我的 CI 上执行完整的 iOS 构建。缓存当然是可能的,但首先必须完成初始构建:/

根据本指南,在使用 Fastlane 使用 Xcode 进行存档时,有必要重建 iOS 应用程序。然而,在官方 Github 存储库上有一个关于引入直接从 Flutter 发布 IPA 文件的命令的讨论,但目前这是不可能的。

我的问题是 - 有没有什么方法可以缩短这个构建时间,例如通过跳过 fastlane 步骤中的构建,只是将 .app 文件辞职并存档到 .ipa?我不能自己让它工作。

在这里,你可能会发现一个样品扑应用cloud_firestore功能。

您可以在下面找到我的 Bitrise 和 fastlane 配置:

---
format_version: '7'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: flutter
trigger_map:
- push_branch: master
workflow: test
workflows:
prepare:
    steps:
    - activate-ssh-key@4.0.3:
        run_if: '{{getenv …
Run Code Online (Sandbox Code Playgroud)

xcode ios fastlane flutter bitrise

6
推荐指数
1
解决办法
1390
查看次数

Bitrise默认环境变量

在哪里可以找到Bitrise带有实际值的默认环境变量的完整列表?

我可以在Select variable对话框中看到变量列表:

选择可变图像

但无法检查其值。我不想在命令行中使用echo并打印所有值并检查它们的值。很高兴在bitrise.io文档中提供此信息,该信息目前尚不存在。

bitrise*在github中找到了一些存储库,并且在steps我的源代码中,我能够检查一些环境变量的默认值。这仍然不是理想的结果。

continuous-integration android ios bitrise

5
推荐指数
1
解决办法
1854
查看次数

是否可以通过Gradle任务设置Android版本代码和名称?

我正在尝试自动化我正在使用的CI上的构建过程.我可以调用a curl并为其分配一些变量,例如版本代码和名称.然后CI(在我的案例中为Bitrise CI)抓住它并开始发布版本.但是,在此之前,我想根据传递curlbuild.gradle文件中的内容设置版本代码和版本名称,然后开始构建过程.

所以,我想我可以编写一个插件/任务,从命令行获取版本代码/名称,然后将其注入build.gradle文件中.像这样的命令./gradlew setVersion 1 1.0.

因此,通过从我将编写的脚本运行此命令,我将能够运行此gradle任务,并且glob中任何位置的所有人都可以创建发布版本curl.很有趣 :)

我能够编写类似于以下代码的任务,并将其放入我的主build.gradle文件中.

task setVersion << {
    println versionCode
    println versionName
}
Run Code Online (Sandbox Code Playgroud)

并通过命令行传递一些参数:

./gradlew -PversionCode=483 -PversionName=v4.0.3 setVersion
Run Code Online (Sandbox Code Playgroud)

这是我的输出:

:setVersion
483
v4.0.3

BUILD SUCCESSFUL

Total time: 6.346 secs
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.我的问题是如何在build.gradle文件中设置它?谢谢

android curl build.gradle android-gradle-plugin bitrise

5
推荐指数
2
解决办法
2110
查看次数

Fastlane 在 Bitrise 上找不到配置文件

我正在使用 Fastlane 在本地构建一个 iOS 应用程序,没有任何问题。

我正在使用match一个单独的 repo,以跟踪证书和配置文件。

在本地它工作正常。

但是,在 Bitrise 上,我收到此错误:

[05:23:16]:安装了所有必需的密钥、证书和配置文件 
[05:23:16]:将配置文件类型设置为“应用商店”
[05:23:16]: ---------------
[05:23:16]:---步骤:build_app---
[05:23:16]: ---------------
[05:23:16]: $ xcodebuild -list -workspace Myapp.xcworkspace -configuration 调试
[05:23:17]: $ xcodebuild -showBuildSettings -workspace Myapp.xcworkspace -scheme Myapp -configuration Debug
[05:23:20]:无法自动检测配置文件映射
[05:23:20]:从 Xcode 9 开始,您需要提供什么的显式映射
[05:23:20]:配置文件以用于您应用的每个目标
[05:23:20]:没有那个文件或目录@rb_sysopen - /Users/vagrant/git/Pods/Target Support Files/Pods-Myapp/Pods-Myapp.debug.xcconfig
[05:23:20]:检测到配置文件映射:{:"com.myapp.myapp"=>"match AppStore com.myapp.myapp"}

我尝试明确映射我的配置文件Fastfile

[05:23:16]: All required keys, certificates and provisioning profiles are installed 
[05:23:16]: Setting Provisioning Profile type to 'app-store'
[05:23:16]: -----------------------
[05:23:16]: --- Step: build_app ---
[05:23:16]: …

xcode ios fastlane bitrise

5
推荐指数
1
解决办法
2265
查看次数

无法使用空密码将 SSH 密钥添加到 ssh-agent (Bitrise CLI)

概括:

当我将 CI 集成到开发工作流程中时,我还尝试将 Bitrise 工作流程的执行移至我们本地的 iOS Mac 计算机,该计算机设置为 Jenkins 从设备。因此,我尝试构建的项目需要在这台 iOS 计算机上构建。

问题:

我正在尝试与集成用户(可以访问我的存储库的 GitHub 帐户)建立 ssh 连接,并且我创建了一个密钥并将其添加到 GitHub 用户以及 .bitrise.secrets.yml 文件。

但是,当执行初始步骤 activate-ssh-key 步骤时,会出现错误,即我无法将 SSH 密钥添加到具有空密码短语的 ssh-agent。(这是否可以配置?我可以逃避吗?)

这是输出日志:https : //pastebin.com/FCHhZNDb

进入 bitrise.yml:

- activate-ssh-key@4.0.2: {getenv "SSH_RSA_PRIVATE_KEY"}
Run Code Online (Sandbox Code Playgroud)

.bitrise.secrets.yml:

envs:
- SSH_RSA_PRIVATE_KEY: ssh-rsa *KEY*
Run Code Online (Sandbox Code Playgroud)

|------------------------------------|

我也试过将 ssh 密钥直接放在 .ssh 目录中,但没有用。

任何帮助真的很感激!:)

TL; 博士

尝试通过 ssh 将 bitrise cli 与 github 连接,不起作用。

ssh github bitrise

5
推荐指数
1
解决办法
1426
查看次数

Bitrise 和 SPM - 如何使用 Bitrise 构建私有 SPM 依赖项?

我们有

  • xcode 项目几乎没有 swift-package-manager 依赖项,但其中一个依赖项托管在 Gitlab 私有存储库上
  • 用于构建和交付我们的应用程序的 fastlane
  • Bitrise 作为 CI 服务

在本地计算机上一切正常 - Xcode 只需要求填写 Gitlab 的身份验证信息(登录/访问令牌),然后依赖关系图就会解析,我们可以构建我们的项目。

但是 Bitrise 在健身房舞台上失败了,错误如下 =(

xcodebuild:错误:无法解析包依赖项:身份验证失败,因为未提供凭据。

如何验证 Bitrise 的 Gitlab 帐户以处理gym stage?

xcode gitlab fastlane bitrise swift-package-manager

5
推荐指数
1
解决办法
2076
查看次数

通过 CLI 添加 Xcode Github 帐户

我正在尝试在 bitrise.io 上构建我的 iOS 应用程序。此应用程序使用托管在私人 github 存储库中的 SPM 包。该回购协议无法公开。

构建在本地工作,它们还可以在本地使用 fastlane 和 bitrise cli。当我在远程管道上运行它们时,出现以下错误:

xcodebuild: error: Could not resolve package dependencies:
  Failed to clone repository https://github.com/USERNAME_REDACTED/REPO_NAME_REDACTED:
    Cloning into bare repository '/Users/vagrant/Library/Developer/Xcode/DerivedData/ORG_NAME_REDACTED/SourcePackages/repositories/REPO_NAME_REDACTED-d35b1ef7'...
    fatal: could not read Username for 'https://github.com': terminal prompts disabled
Run Code Online (Sandbox Code Playgroud)

我的理解是,为什么这不起作用,是因为远程管道计算机上的 Xcode 实例没有添加 GitHub 帐户。我可以在本地使用 Xcode GUI 来执行此操作,Xcode > Preferences > Accounts如下所示

Xcode 添加帐户

这里的问题是,我需要找到一种方法,通过提供用户名和个人访问令牌,通过远程脚本来执行此操作。到目前为止,我已经花了大约 20 个小时查看xcodebuild文档并摆弄不同的配置,但我还没有运气让它工作。

任何帮助表示赞赏。

xcode continuous-integration ios swift bitrise

5
推荐指数
1
解决办法
611
查看次数