【问题标题】:Configure settings.xml for Openshift 3.10 S2I Maven Builds为 Openshift 3.10 S2I Maven 构建配置 settings.xml
【发布时间】:2019-10-18 21:14:50
【问题描述】:

我想为 Openshift 3.10 中的 s2i maven 构建自定义 settings.xml。虽然在 3.11 版中使用配置映射很容易做到这一点:

https://docs.openshift.com/container-platform/3.11/dev_guide/builds/build_inputs.html#using-secrets-during-build

我没有找到 3.10 的任何解决方案。是否有解决方法/解决方案?

谢谢!

【问题讨论】:

  • 您确认这在 3.10 中不适合您吗? ConfigMaps 已经存在了一段时间,所以我怀疑这个解决方案在 3.10 中仍然可以工作。您为 3.10 尝试了什么?您看到了哪些错误消息?
  • 是的,我很抱歉...看起来 oc set volume 适用于 pod 规范,所以我猜它不适用于构建配置。再次查看文档,我怀疑定义的 configMaps 部分可能直到 3.11 才真正添加到 API,这是不幸的。作为一种解决方法,您应该能够将settings.xml 存储为秘密而不是配置映射,并使其与配置映射一样工作。我没有可用于测试的 3.10 集群,因此您必须让我知道这是否适合您。
  • 最后它通过以下方式使用秘密:oc create secret generic secret-mvn-settings --from-file=settings.xml=/home/mystuff/settings.xml oc new-build redhat-openjdk18-openshift:1.4~https://mygitrepoprovider.com/myrepo.git --build-secret "secret-mvn-settings:/opt/rh/rh-maven35/root/usr/share/maven/conf" 在这里我覆盖了全局 maven 设置(可以看到将 -X 添加到 maven 命令)。它不适用于 3.11 文档中的 "secret-mvn-settings:.m2"。所以非常感谢你的帮助。如果您将此作为答案,我会接受。
  • 我只是想在这里发布一个答案,并遇到了这些文档:access.redhat.com/documentation/en-us/…。将 settings.xml 文件放在你的 git repo 中对你有用吗?或者甚至是你安装秘密的地方?它可能更可靠,尤其是在未来的版本中,以防路径发生变化
  • 这其实也很管用!尽管出于安全考虑,我们会考虑使用哪一种解决方案。但无论如何,谢谢你的帮助!

标签: openshift


【解决方案1】:

在 3.11 中,您可以为您的 settings.xml 文件创建一个 ConfigMap

$ oc create configmap settings-mvn --from-file=settings.xml=<path/to/settings.xml>

并使用它在您的构建中覆盖它。 (Source)

source:
  git:
    uri: https://github.com/wildfly/quickstart.git
  contextDir: helloworld
  configMaps:
    - configMap:
        name: settings-mvn

正如您所指出的,3.10,BuildConfigs 中不支持 ConfigMaps,但是,您可以创建具有相同内容的秘密

$ oc create secret generic settings-mvn --from-file=settings.xml=<path/to/settings.xml>

并使用它在您的构建中覆盖它。 (Source)

source:
  git:
    uri: https://github.com/wildfly/quickstart.git
  contextDir: helloworld
  secrets:
    - secret:
        name: settings-mvn

或者,您还可以在 git 存储库中包含 settings.xml 文件,以覆盖默认的 settings.xml。只需将您的文件放在source_dir/configuration/settings.xml 就足够了。 (Source)

【讨论】:

    猜你喜欢
    • 2016-06-01
    • 2018-03-03
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    • 2021-08-19
    • 2012-09-13
    • 2012-03-19
    • 1970-01-01
    相关资源
    最近更新 更多