我正在努力让F8光盘管道在OpenShift上工作。我使用从Maven构建的F8 Jenkinsfile库下载的Jenkinsfile,步骤为“CanaryReleaseAndLevel”。那里的阶段部署步骤如下所示:
stage('Rollout Staging') {
kubernetesApply(environment: envStage)
}
我从Kubernetes管道插件中查找了kubernetesApply()的实现。如果调用中不存在文件参数(如此处所示),它将应用在生成时生成的文件“target/classes/META-INF/fabric8/OpenShift.yml”中定义的Kubernetes/OpenShift资源。
在这个文件中(它也是作为工件上传到nexus的,因此我可以很容易地获取它),定义了三个资源:
...但是没有图像流。然而,在构建日志上,我看到一个图像流定义显然是在不同的文件上生成的:
[INFO] F8: Found tag on ImageStream my-project tag: sha256:c15b56841387a7e0aea960020ccf2efb48f21bd4d12d826e2cd04a94f4d9d748
[INFO] F8: ImageStream my-project written to /home/jenkins/workspace/my-project-dir/target/my-project-is.yml
但恐怕库伯内特斯永远不会被应用。因此,暂存项目中没有图像流。
在此配置中,临时部署甚至无法部署pod。如果我将映像流手动添加到登台项目中,它将部署,但在出现新构建时从未更新。
我已经更新到最新的织物/詹金斯图像2.2.331,但它似乎也不在这里工作。
我的pom。xml(f8构建所必需的部分):
<project ...>
<modelVersion>4.0.0</modelVersion>
<groupId>my.package</groupId>
<artifactId>myproject/artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<fabric8.mode>openshift</fabric8.mode>
<fabric8.build.strategy>docker</fabric8.build.strategy>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<build>
<plugins>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>fabric8-maven-plugin</artifactId>
<version>3.2.28</version>
<configuration>
<images>
<image>
<name>fabric8/my-project</name>
<build>
<dockerFileDir>${project.basedir}/src</dockerFileDir>
<dockerFile>Dockerfile</dockerFile>
</build>
</image>
</images>
</configuration>
<executions>
<execution>
<goals>
<goal>resource</goal>
<goal>build</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
所以我想知道:
感谢任何洞察力!
有没有可能看到你的pom。xml和完整构建?听起来你在使用fabric8 maven插件,对吗?它正在进行S2I二进制构建并生成图像流?听起来好像出了问题,生成的图像流没有包含在您的target/classes/META-INF/fabric8/openshift中。也许吧?
我想知道您的maven目标的顺序是否出现了问题(例如,通常先是fabric8:resource,然后是fabric8:build,然后将ImageStream添加到生成的YAML文件中)
我本地是windows环境 线上是linux 两边php版本不一样 一个7.2 一个7.3 本地用的phpstudy 我用composer require 安装了一个包 然后composer.json更新了 提交到服务器去 请问这个时候我在服务器是执行composer.update还是 composer install 呢?网上说不要update 能否有大佬给我说明白下。这个compser.jso
在底部将此选项设置为true vs false时,它们将列出结果的差异 在我的EMR配置(在presto-config中)中包含设置为之后,我仍然会根据这个测试查询获得新的结果(并且我的UTC时间戳仍然会自动转换)。 对于启用遗留时间戳行为还需要做些什么有什么建议吗?
我正在运行下面的管道,它为DotNetCore2.2运行“构建+声呐扫描程序分析”阶段 舞台设置如下 我已经按照Sonarqube文档的建议在全局配置中安装了该工具 该dll存在并且权限已分配给Jenkins 该dll是可执行的 在该路径中手动运行时的dll-它运行 提前感谢你的帮助。
我正在开发一个jenkins声明性管道,以自动交付运行在OpenShift3.2上的Spring Boot应用程序。 我的Jenkins实例位于Openshift外部,我使用openshift-pipeline-plugin来执行构建和部署操作。
在我的项目中,我使用了@Configuration、@EnableAutoConfiguration、@ComponentScan和带有注释的重要资源配置。我没有使用@SpringBootApplication,但应用程序在没有@SpringBootApplication注释的情况下成功构建。我不明白为什么不调用@RestController类?
问题内容: 我正在使用 shouldChangeCharactersInRange 作为使用即时类型搜索的方式。 但是我有一个问题,在文本字段实际更新之前 应该 调用 shouldChangeCharactersInRange : 在目标C中,我使用以下方法解决了这个问题: 但是,我尝试用Swift编写此代码: 在获得值之前,该方法仍会被调用? 问题答案: 雨燕4,雨燕5 此方法不使用 注意。使用