这似乎是对 GitLab 13.3 中新的并行矩阵功能的误用(https://docs.gitlab.com/ee/ci/yaml/#parallel-matrix-jobs)
我有一组服务的并行作业集合:build(docker image), test, release, delete.... 并且创建了代码库,以便每个并行服务都位于单独的子目录中。
这样我就可以有一个通用模板:
variables:
IMAGE_NAME: $CI_REGISTRY_IMAGE/$LOCATION
.build-template:
script:
- docker build --tag $IMAGE_NAME:$CI_PIPELINE_ID-$CI_COMMIT_REF_SLUG --tag $IMAGE_NAME:latest $LOCATION
stage: build
when: manual
Run Code Online (Sandbox Code Playgroud)
然后多个构建作业:
build-alpha:
extends: .build-template
variables:
LOCATION: alpha
build-beta:
extends: .build-template
variables:
LOCATION: beta
Run Code Online (Sandbox Code Playgroud)
....并根据需要重复。
test然后,我可以对、release和jobs执行相同的操作delete:一个通用模板,仅使用一个变量来区分服务。
在我看来
variables:
IMAGE_NAME: $CI_REGISTRY_IMAGE/$NOTEBOOK
build-services:
parallel:
matrix:
- LOCATION: alpha
- LOCATION: beta
script:
- docker build --tag $IMAGE_NAME:$CI_PIPELINE_ID-$CI_COMMIT_REF_SLUG --tag $IMAGE_NAME:latest $LOCATION
stage: build …Run Code Online (Sandbox Code Playgroud) 我可以使用多列布局,现在想让它与html表一起使用(请参阅http://lucas.ucs.ed.ac.uk/tutorials/CSS3_columns/),但是这里只有一个小缺点:表格在下一栏被剪掉,剪掉的可能是中间行...看起来很可怕。
当我的页面只是一系列<p>元素时,我使用了一个简单的style="display: inline-block;"技巧将段落内容保持在一起,迫使分栏符位于段落之间。
毫不奇怪,这不适用于表。
我尝试将每个<td>的内容放入div中,并应用inline-block;"样式;我尝试过申请
{
-webkit-column-break-inside: avoid;
-moz-column-break-inside: avoid;
-moz-page-break-inside: avoid;
page-break-inside: avoid;
}
Run Code Online (Sandbox Code Playgroud)
到<tr> s和<td> s-没有喜悦。
有没有人建议使用CSS3多列时将HTML表格分成多行
在我正在编写的代码中,我使用hash-ref将数据传递给方法(参见注释[1]).
不幸的是,这导致了许多重复的代码:
sub thing {
my ($self, $params) = @_;
my ($foo, $bar, $baz, $biff,);
if ( exists $params->{foo} && $params->{foo} ) {
$foo = $params->{foo};
}
# repeat for `bar`, `baz`, `biff`
## rest of function ##
}
Run Code Online (Sandbox Code Playgroud)
(并在每个带参数的函数中复制)
更容易的是定义参数列表,然后迭代该列表,创建两个变量并在需要时将它们设置为值.
所以为了测试这个,我尝试了:
my $params = { x => 1, y => 2};
my @params = qw(x y z a b c);
gno strict 'refs';
rep( ${$_}, @params );
use strict 'refs';
foreach my $p (@params) {
if ( …Run Code Online (Sandbox Code Playgroud)