android - 在哪里存储构建 Artifact : Grunt, node.js 后端、github、android、iOS 客户端

标签 android node.js github gradle gruntjs

我们正在努力想出一个如何集成我们的构建环境的好主意,现在我们开始使用 swagger-..codegen 从我们的后端 api 为 android 应用程序、iOS 应用程序和 web 客户端生成 API 类。

目前情况:

  • 我们使用几个(私有(private))github 存储库
  • node.js 后端:grunt build with tests and CI using cloudbased CI service-running codeGen for web- and android clients api access classes on successful builds,持续部署到heroku测试环境,
  • Web 前端,使用基于云的 CI 服务和持续部署到 Herku 测试环境的测试和 CI 构建 grunt。
  • android 应用,使用 gradle build 和相同的 CI,到目前为止没有持续部署。
  • 很快就会有一个 iOS 应用程序...

  • 这是私有(private)的、非 OSS 代码。

    需求:
    不同的客户端应该能够指定对生成的后端访问库的依赖关系并在构建期间获取它们。客户端应该能够获得“最新”版本或指定的固定版本,例如 npm 语义依赖项。我当然可以增强我们的构建,将构建工件上传到成功的 CI 构建的某个地方,但问题是在哪里......设置它的最简单方法是什么。
  • 我们是否需要一个(或什至多个)私有(private)人工制品存储库(nexus、npm、bower...)
  • 我们应该(ab)使用 github 存储库来存储构建的人工制品吗?
  • 我们还可以将构建工件发布到 S3 或类似的东西...

  • 有什么好主意吗?

    最佳答案

    如果您正在执行一些自定义任务,您应该真正存储的唯一内容是单独的“任务”文件夹、grunt.js (.coffee)、资源(您可以用于预构建任务 -less、coffee/views、coffee/models 你所有的自定义东西)和你的 package.json。这样,任何新开发人员都只需获取这些表单源,然后运行 ​​npm install 以从 package.json 中提取所有依赖项。
    /资源
    咕噜咕噜的咖啡
    包.json

    然后我有一些拉动和运行凉亭任务的任务(拉动最新的 jqm,设置它,拉动各种库。)

    至于 node_modules 我不会将它们存储在任何地方。这是我编写的一个简单的脚本/应用程序,它几乎可以通过编译 JQM 应用程序、调用 phonegap 脚本、构建应用程序并最终以 xcode 应用程序包结束。

    也许这会给你一些想法。到目前为止,我发现最好执行上述操作。

    https://github.com/imaginethepoet/autojqm

    关于android - 在哪里存储构建 Artifact : Grunt, node.js 后端、github、android、iOS 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20599628/

    相关文章:

    android - 如何在应用程序最小化时更新 UI

    android - Libgdx 弃用了 drawMultiLine 和 getBounds

    javascript - XMLHttpRequest 无法加载请求的资源上不存在 'Access-Control-Allow-Origin' header 。起源 'http://localhost:3000' 谷歌地图

    javascript - Underscorejs 'find' 未按预期工作

    r - 运行 git pull 后如何解决错误 bad object refs/heads/main (1)

    java - 当 .setText() 用于正确类型 Android 的子项时,出现 "Cannot Resolve Symbol"

    android - android.support.v4.media.MediaBrowserCompat $ CallbackHandler错误的原因

    node.js - 防止在不需要授权时在 Redis 中创建 session

    git - 使 Docker 容器保持最新

    git - 命令 go get -u 命令出错。无法获取包裹