Skip to main content

drone の matrix build が27個しか実行されない

· 2 min read
Shunsuke Suzuki

drone 0.8.5 で検証しています。

matrix:
ZOO:
- 1
- 2
- 3
- 4
FOO:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
BAR:
- 1
- 2

上記の場合、本来 4 8 2 = 64 個実行されるはずのmatrix builds が27個しか実行されなかったのでソースコードを確認したところ、 27個しか実行されないようにハードコードされていました。

関係ある部分だけ抽出すると以下のような感じになります。

limitAxis = 25

axisList := []Axis{}
for p := 0; p < perm; p++ {
axisList = append(axisList, axis)
if p > limitAxis {
break
}
}

制限をかけるのは仕方ないですが、 エラーも warning もなく正常終了し、でもよく見ると 27 個しか実行されていないので ユーザーとしては混乱しますね。 build の結果の画面の上の方に warning があると嬉しいです。