VCS中的并行开发/分支如何影响构建工件存储库设置和QA的发布?
在我们公司,我们分支我们的VCS进行并行开发工作,我们通常没有太多关于哪个分支将按哪种顺序发货的警告.
对于版本编号,我想放置一个分支标识符来显示QA构建来自哪个分支.来自主干的任何构建都将具有"正常"版本号,其中没有分支标识符:
trunk: 1.1.0
branch: 1.1.0.MyBranch
branch: 1.1.0.AnotherBranch
Run Code Online (Sandbox Code Playgroud)
最初我认为每个分支都有一个构建工件存储库,以及一个主干存储库.
但是如果我的版本编号包含分支,则产品的版本号将是错误的(如果我正在构建并从分支中释放).
围绕这个的方式只能从行李箱中释放出来吗?
另外,我应该从什么时候开始发货QA团队从主干构建而不是从分支构建?
我目前的想法是说服管理层将一个开发团队分配给一个发布订单(比如发布一周后)并将他们的分支合并到主干.然后QA开始获得主干版本而不是分支构建,并且其分支已经合并的开发团队直接修复了主干中的任何错误而不是分支.
*更新*
更具体地说,我正在使用SVN for VCS,以及Artifactory用于我的存储库.我正在使用Ivy进行依赖管理.
查看存储库布局(存储库布局)上的Artifactory帮助:
"a sequence of literals that identifies the base revision part of the artifact
version, excluding any integration information"
"'1.5.10', or in case of an integration revision '1.2-SNAPSHOT' the base revision
is '1.2'"
Run Code Online (Sandbox Code Playgroud)
这个以及Maven和Ivy的默认布局告诉我这是更常见的:
MyRepo
MyLib
1.1.0 (this is the dll from trunk)
-MyLib.dll
1.1.0.MyBranch-SNAPSHOT (dev builds from the "MyBranch" branch)
-MyLib.dll
1.1.0.AnotherBranch-SNAPSHOT (dev builds from the "AnotherBranch" branch)
-MyLib.dll …
Run Code Online (Sandbox Code Playgroud) version-control continuous-integration artifacts continuous-delivery
我使用Jenkins在web appilcation上运行一些集成测试(使用黄瓜,水豚和硒)
每次测试失败时,都会保存屏幕截图,HTML源代码和进程视频.
路径结构如下所示:
results/output/<test_name>/<files>
Run Code Online (Sandbox Code Playgroud)
我使用Jenkins的归档工件功能来提供文件(模式:) results/output/*/*
.它很棒.
但是,只要构建成功,就没有屏幕截图/视频等......并且构建失败,因为Jenkins无法找到该模式的文件.
有没有办法告诉詹金斯没有文件存在成功?
我不想做一个涉及创建像result/output/success/hooray.txt这样的空文件夹结构的脏黑客.
我想,需要一些传递来向Maven Central存储库提交工件.
我想详细了解哪些要求,要遵循的程序,以及是否有帮助这一过程的教程或指南.
我听说你还需要对这些文物进行数字签名(gpg),有关这方面的一些细节也会受到欢迎.
当GLSL着色器在以下GPU上生成错误图像时遇到问题:
GT 430
GT 770
GTX 570
GTX 760
但正常工作:
Intel HD Graphics 2500
Intel HD 4000
Intel 4400
GTX 740M
Radeon HD 6310M
Radeon HD 8850
着色器代码如下:
bool PointProjectionInsideTriangle(vec3 p1, vec3 p2, vec3 p3, vec3 point)
{
vec3 n = cross((p2 - p1), (p3 - p1));
vec3 n1 = cross((p2 - p1), n);
vec3 n2 = cross((p3 - p2), n);
vec3 n3 = cross((p1 - p3), n);
float proj1 = dot((point - p2), n1);
float proj2 = dot((point - …
Run Code Online (Sandbox Code Playgroud) 我需要提高矿井大气散射GLSL片段着色器之一的功能的精度,该着色器可计算单射线与轴对齐的椭球之间的交点。
这是矿山大气散射着色器的核心功能。旧的原始着色器已启用,floats
并且可以正常渲染,但是添加缩放后,我发现距离相对较小时会失去精度。在浮子上,地球的可用距离仅为0.005 AU(天文单位)。因此,我尝试将关键功能移植到该端口上,double
并且它有所帮助,因此现在可用距离约为1.0 AU(带有较小的伪像)
这是double
Fragment Shader中函数的版本(旧版本的源代码已弃用!!!)
#extension GL_ARB_gpu_shader_fp64 : enable
double abs(double x) { if (x<0.0) x=-x; return x; }
// compute length of ray(p0,dp) to intersection with ellipsoid((0,0,0),r) -> view_depth_l0,1
// where r.x is elipsoid rx^-2, r.y = ry^-2 and r.z=rz^-2
float view_depth_l0=-1.0,view_depth_l1=-1.0;
bool _view_depth(vec3 _p0,vec3 _dp,vec3 _r)
{
double a,b,c,d,l0,l1;
dvec3 p0,dp,r;
p0=dvec3(_p0);
dp=dvec3(_dp);
r =dvec3(_r );
view_depth_l0=-1.0;
view_depth_l1=-1.0;
a=(dp.x*dp.x*r.x)
+(dp.y*dp.y*r.y)
+(dp.z*dp.z*r.z); a*=2.0;
b=(p0.x*dp.x*r.x)
+(p0.y*dp.y*r.y)
+(p0.z*dp.z*r.z); b*=2.0;
c=(p0.x*p0.x*r.x) …
Run Code Online (Sandbox Code Playgroud) 我的jenkins工作在工作空间中创建了一个临时子文件夹,比如"mydir",然后我想使用postbuild步骤"存档工件"进行存档.
我正在使用以下命令:
mydir/**/*
Run Code Online (Sandbox Code Playgroud)
它运行良好,但存档将始终包含mydir作为工件的根,而我想只有这个文件夹的内容.
这该怎么做?
我们已安排 Jenkins 构建来创建 AWS VM,VM 已成功联机,但在归档工件时,作业失败并显示以下错误消息。
\n\nArchiving artifacts\nERROR: Step \xe2\x80\x98Archive the artifacts\xe2\x80\x99 aborted due to exception: \njava.lang.NoClassDefFoundError: Could not initialize class sun.nio.fs.LinuxNativeDispatcher\n at sun.nio.fs.LinuxUserDefinedFileAttributeView.copyExtendedAttributes(LinuxUserDefinedFileAttributeView.java:291)\n at sun.nio.fs.LinuxFileSystem.copyNonPosixAttributes(LinuxFileSystem.java:72)\n at sun.nio.fs.UnixCopyFile.copyFile(UnixCopyFile.java:267)\n at sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:581)\n at sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:253)\n at java.nio.file.Files.copy(Files.java:1274)\n at hudson.FilePath$31$1.visit(FilePath.java:2296)\n at hudson.util.DirScanner.scanSingle(DirScanner.java:44)\n at hudson.FilePath$ExplicitlySpecifiedDirScanner.scan(FilePath.java:2991)\n at hudson.FilePath$31.invoke(FilePath.java:2290)\n at hudson.FilePath$31.invoke(FilePath.java:2283)\n at hudson.FilePath.act(FilePath.java:1042)\n at hudson.FilePath.act(FilePath.java:1025)\n at hudson.FilePath.copyRecursiveTo(FilePath.java:2283)\n at jenkins.model.StandardArtifactManager.archive(StandardArtifactManager.java:61)\n at hudson.tasks.ArtifactArchiver.perform(ArtifactArchiver.java:235)\n at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:81)\n at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)\n at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)\n at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:690)\n at hudson.model.Build$BuildExecution.post2(Build.java:186)\n at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:635)\n at hudson.model.Run.execute(Run.java:1823)\n at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)\n at hudson.model.ResourceController.execute(ResourceController.java:97)\n at hudson.model.Executor.run(Executor.java:429)\n
Run Code Online (Sandbox Code Playgroud)\n\n造成此问题的原因是什么以及如何解决?
\nI have been trying to deploy an web app to local IIS by using Azure DevOps Repos and Pipelines.
I would like to build bundles using webpack on Azure DevOps service rather than uploading already bundled javascript, style files to Azure Repos.
FYI, App uses ASP.NET Core 2.2, webpack 4.30, webpack-cli 3.3.2, and configs with webpack.config.js (contains bunch of settings to create bundles in 'dist' folder) and javascript, style files are in wwwroot folder.
So far it works fine if …
我们的组织内有许多项目。其中一个项目创建了一个项目范围的 Azure Artifact 源,他们希望与我们的其他项目共享。
但是,当其他项目访问其工件页面时,从提要下拉列表中,他们只能看到“组织范围的提要”,而“项目范围的提要”下没有任何内容。我们需要做什么才能使此源可见并可供其他项目使用,特别是在他们的管道中使用。
我很茫然,因为到目前为止我完全一片空白。