Re: Use of [skip ci] in commit messages to avoid Travis builds
Am 23.03.2020 um 20:12 schrieb Ruediger Pluem: On 3/23/20 6:22 PM, Rainer Jung wrote: Am 23.03.2020 um 16:56 schrieb Joe Orton: On Sat, Feb 08, 2020 at 12:01:29PM +0100, Luca Toscano wrote: Hi everybody, Travis is able to read commit messages and skip the CI workflow if the "[skip ci]" magic sequence is added somewhere. I keep forgetting about it too, but it would be nice if we could start using it to avoid using CI resources/workers when not needed (like docs changes, entries in STATUS, etc..). I didn't find a way to instruct Travis to avoid triggering a build if only certain file types are committed, so the only solution for the moment is to manually add the aforementioned sequence :( It is not a big deal to trigger builds even for docs etc.., but the ASF resources/workers are limited (and shared among projects IIUC) so I am only suggesting to be good neighbors :) If this is totally insane or unacceptable I'll back off and stop vouching for it I promise! I found a new option here while playing with conditionals, we can skip an entire build based on the commit message, it appears - https://github.com/apache/httpd/pull/87/commits/7dd995c555ac0aea6cb3d58634750e2e076eb0cc so this could catch a lot of the quite pointless Travis runs for STATUS changes by filtering by commit message, something like... if: (branch != "2.4.x" and commit_message !~ /^[Tt]ransforms$/) or (branch = "2.4.x" and commit_message !~ /^([Pp]ropose|[Vv]ote|[Tt]ransforms)$/) anything else?? Since I forgot the [skip ci] today, I too a little time to inspect svn log for STATUS and arrived at the following, probably not maintainable regexp (perl notation) for 2.4.x: /^i?(\* ?)?([0-9] *)?([sS]ome +|[mM]ore +|[aA]dd( a)? +|[eE]asy +|[qQ]uick +|[sS]mall +|[uU]pdate( after)? +)?([bB]ackport(ed)? +)?([pP]ropos(e|als?),?( *((and)?|\/|\+) *([vV]ote)?)?|[vV]otes?,?( *((and)?|\/|\+) *([pP]ropos(e|als?)|[pP]romot(e|ion)s?|[cC]omments?))?|[pP]romot(e|ion)s?|[cC]omment|[nN]ote|[dD]one|[mM]erged|[cC]ommitted|[bB]ackport(ed)?)[\.:!]?( *\[skip ci\])?$/ I think the backport stuff should not be in the list as it is often used in backport commits which I want to see run afterwards through the tests for that branch. Not sure how a multi-line commit message will be handled, ie. if the caret and dollar anchors are applied to every line and what happens if one line our of many matches. The above pattern was meant to be applied to one-line commit messages only or phrased differently it should match the whole commit message, not only individual lines. In that case I would expect the backport part of the pattern to be no problem. A real backport commit message should also contain info like the revision number or the original commit message and would thus not match. But I don't know whether the assumption about multi-line commit message matching is correct. Regards, Rainer
Re: Use of [skip ci] in commit messages to avoid Travis builds
On 3/23/20 6:22 PM, Rainer Jung wrote: > Am 23.03.2020 um 16:56 schrieb Joe Orton: >> On Sat, Feb 08, 2020 at 12:01:29PM +0100, Luca Toscano wrote: >>> Hi everybody, >>> >>> Travis is able to read commit messages and skip the CI workflow if the >>> "[skip ci]" magic sequence is added somewhere. I keep forgetting about >>> it too, but it would be nice if we could start using it to avoid using >>> CI resources/workers when not needed (like docs changes, entries in >>> STATUS, etc..). I didn't find a way to instruct Travis to avoid >>> triggering a build if only certain file types are committed, so the >>> only solution for the moment is to manually add the aforementioned >>> sequence :( >>> >>> It is not a big deal to trigger builds even for docs etc.., but the >>> ASF resources/workers are limited (and shared among projects IIUC) so >>> I am only suggesting to be good neighbors :) If this is totally insane >>> or unacceptable I'll back off and stop vouching for it I promise! >> >> I found a new option here while playing with conditionals, we can skip >> an entire build based on the commit message, it appears - >> >> https://github.com/apache/httpd/pull/87/commits/7dd995c555ac0aea6cb3d58634750e2e076eb0cc >> >> so this could catch a lot of the quite pointless Travis runs for STATUS >> changes by filtering by commit message, something like... >> >> if: (branch != "2.4.x" and commit_message !~ /^[Tt]ransforms$/) or >> (branch = "2.4.x" and commit_message !~ >> /^([Pp]ropose|[Vv]ote|[Tt]ransforms)$/) >> >> anything else?? > > Since I forgot the [skip ci] today, I too a little time to inspect svn log > for STATUS and arrived at the following, probably not > maintainable regexp (perl notation) for 2.4.x: > > /^i?(\* ?)?([0-9] *)?([sS]ome +|[mM]ore +|[aA]dd( a)? +|[eE]asy +|[qQ]uick > +|[sS]mall +|[uU]pdate( after)? +)?([bB]ackport(ed)? > +)?([pP]ropos(e|als?),?( *((and)?|\/|\+) *([vV]ote)?)?|[vV]otes?,?( > *((and)?|\/|\+) > *([pP]ropos(e|als?)|[pP]romot(e|ion)s?|[cC]omments?))?|[pP]romot(e|ion)s?|[cC]omment|[nN]ote|[dD]one|[mM]erged|[cC]ommitted|[bB]ackport(ed)?)[\.:!]?( > *\[skip ci\])?$/ I think the backport stuff should not be in the list as it is often used in backport commits which I want to see run afterwards through the tests for that branch. Regards Rüdiger
Re: Use of [skip ci] in commit messages to avoid Travis builds
Am 23.03.2020 um 16:56 schrieb Joe Orton: On Sat, Feb 08, 2020 at 12:01:29PM +0100, Luca Toscano wrote: Hi everybody, Travis is able to read commit messages and skip the CI workflow if the "[skip ci]" magic sequence is added somewhere. I keep forgetting about it too, but it would be nice if we could start using it to avoid using CI resources/workers when not needed (like docs changes, entries in STATUS, etc..). I didn't find a way to instruct Travis to avoid triggering a build if only certain file types are committed, so the only solution for the moment is to manually add the aforementioned sequence :( It is not a big deal to trigger builds even for docs etc.., but the ASF resources/workers are limited (and shared among projects IIUC) so I am only suggesting to be good neighbors :) If this is totally insane or unacceptable I'll back off and stop vouching for it I promise! I found a new option here while playing with conditionals, we can skip an entire build based on the commit message, it appears - https://github.com/apache/httpd/pull/87/commits/7dd995c555ac0aea6cb3d58634750e2e076eb0cc so this could catch a lot of the quite pointless Travis runs for STATUS changes by filtering by commit message, something like... if: (branch != "2.4.x" and commit_message !~ /^[Tt]ransforms$/) or (branch = "2.4.x" and commit_message !~ /^([Pp]ropose|[Vv]ote|[Tt]ransforms)$/) anything else?? Since I forgot the [skip ci] today, I too a little time to inspect svn log for STATUS and arrived at the following, probably not maintainable regexp (perl notation) for 2.4.x: /^i?(\* ?)?([0-9] *)?([sS]ome +|[mM]ore +|[aA]dd( a)? +|[eE]asy +|[qQ]uick +|[sS]mall +|[uU]pdate( after)? +)?([bB]ackport(ed)? +)?([pP]ropos(e|als?),?( *((and)?|\/|\+) *([vV]ote)?)?|[vV]otes?,?( *((and)?|\/|\+) *([pP]ropos(e|als?)|[pP]romot(e|ion)s?|[cC]omments?))?|[pP]romot(e|ion)s?|[cC]omment|[nN]ote|[dD]one|[mM]erged|[cC]ommitted|[bB]ackport(ed)?)[\.:!]?( *\[skip ci\])?$/ It is roughly like yours, but allows a few prefixes and suffixes around the magic words plus a few more of them and some frequent combinations. Regards, Rainer
Re: Use of [skip ci] in commit messages to avoid Travis builds
On Sat, Feb 08, 2020 at 12:01:29PM +0100, Luca Toscano wrote: > Hi everybody, > > Travis is able to read commit messages and skip the CI workflow if the > "[skip ci]" magic sequence is added somewhere. I keep forgetting about > it too, but it would be nice if we could start using it to avoid using > CI resources/workers when not needed (like docs changes, entries in > STATUS, etc..). I didn't find a way to instruct Travis to avoid > triggering a build if only certain file types are committed, so the > only solution for the moment is to manually add the aforementioned > sequence :( > > It is not a big deal to trigger builds even for docs etc.., but the > ASF resources/workers are limited (and shared among projects IIUC) so > I am only suggesting to be good neighbors :) If this is totally insane > or unacceptable I'll back off and stop vouching for it I promise! I found a new option here while playing with conditionals, we can skip an entire build based on the commit message, it appears - https://github.com/apache/httpd/pull/87/commits/7dd995c555ac0aea6cb3d58634750e2e076eb0cc so this could catch a lot of the quite pointless Travis runs for STATUS changes by filtering by commit message, something like... if: (branch != "2.4.x" and commit_message !~ /^[Tt]ransforms$/) or (branch = "2.4.x" and commit_message !~ /^([Pp]ropose|[Vv]ote|[Tt]ransforms)$/) anything else??
AW: Use of [skip ci] in commit messages to avoid Travis builds
> -Ursprüngliche Nachricht- > Von: Joe Orton > Gesendet: Dienstag, 11. Februar 2020 11:18 > An: dev@httpd.apache.org > Betreff: Re: Use of [skip ci] in commit messages to avoid Travis builds > > On Mon, Feb 10, 2020 at 07:22:45AM -0500, Eric Covener wrote: > > Is there anything possible in SVN like a pre-commit hook that can see > > what changed and append [skip ci] unless some other incantantation is > > present? > > Seems like a neat idea, I think that could work *if* infra actually > allows us to do that. I can imagine they might not want to since the > pre-commit hooks are global to the asf repos. > > An alternative I found would be to check the diff in the travis jobs and > pass if there are non-docs changes: > > https://reflectoring.io/skip-ci-build/ > > con: we'd probably still hit the transient failures at apt install > level, though I we could/should also move that to before_script level > anyway > > con: we'd have lots of "false" passes in the travis history, and having > a pass even if the tree is genuinely broken by prior non-docs commits is > bad. > > (... ideally the travis jobs could report "skip" rather than pass/fail > but I can't see a way to do that either.) > > pro: we can easily control what to skip w/o needing infra > > pro: doesn't need asf-wide repos changes & doesn't modify commits > (possibly fragile) > > Not sure about this. Maybe status quo is best and everyone should learn > to use [skip ci] until travis implement filtering. > Given the above, especially the "false" passes I would tend to let everything as is and see if an increased awareness on [skip ci] already helps. Regards Rüdiger
Re: Use of [skip ci] in commit messages to avoid Travis builds
On Mon, Feb 10, 2020 at 07:22:45AM -0500, Eric Covener wrote: > Is there anything possible in SVN like a pre-commit hook that can see > what changed and append [skip ci] unless some other incantantation is > present? Seems like a neat idea, I think that could work *if* infra actually allows us to do that. I can imagine they might not want to since the pre-commit hooks are global to the asf repos. An alternative I found would be to check the diff in the travis jobs and pass if there are non-docs changes: https://reflectoring.io/skip-ci-build/ con: we'd probably still hit the transient failures at apt install level, though I we could/should also move that to before_script level anyway con: we'd have lots of "false" passes in the travis history, and having a pass even if the tree is genuinely broken by prior non-docs commits is bad. (... ideally the travis jobs could report "skip" rather than pass/fail but I can't see a way to do that either.) pro: we can easily control what to skip w/o needing infra pro: doesn't need asf-wide repos changes & doesn't modify commits (possibly fragile) Not sure about this. Maybe status quo is best and everyone should learn to use [skip ci] until travis implement filtering. Regards, Joe
Re: Use of [skip ci] in commit messages to avoid Travis builds
Hi Mike, TIL, both are in fact accepted: https://docs.travis-ci.com/user/customizing-the-build#skipping-a-build Luca Il giorno lun 10 feb 2020 alle ore 17:32 Mike Rumph ha scritto: > > This thread mentions [skip ci] but the Travis issue mentions [ci skip] and > [ci-skip]. > Are all of these forms recognized? > > On Mon, Feb 10, 2020 at 4:23 AM Eric Covener wrote: >> >> On Mon, Feb 10, 2020 at 1:44 AM Ruediger Pluem wrote: >> > >> > >> > >> > On 02/08/2020 12:01 PM, Luca Toscano wrote: >> > > Hi everybody, >> > > >> > > Travis is able to read commit messages and skip the CI workflow if the >> > > "[skip ci]" magic sequence is added somewhere. I keep forgetting about >> > > it too, but it would be nice if we could start using it to avoid using >> > > CI resources/workers when not needed (like docs changes, entries in >> > > STATUS, etc..). I didn't find a way to instruct Travis to avoid >> > > triggering a build if only certain file types are committed, so the >> > > only solution for the moment is to manually add the aforementioned >> > > sequence :( >> > > >> > > It is not a big deal to trigger builds even for docs etc.., but the >> > > ASF resources/workers are limited (and shared among projects IIUC) so >> > > I am only suggesting to be good neighbors :) If this is totally insane >> > > or unacceptable I'll back off and stop vouching for it I promise! >> > > >> > >> > Thanks for pointing this out, but I forget this as well in many cases :-). >> > The only one here who seems to remember this always is IMHO Joe. Maybe >> > he has some tips how we can get better here. >> > >> > Regards >> > >> > Rüdiger >> >> Is there anything possible in SVN like a pre-commit hook that can see >> what changed and append [skip ci] unless some other incantantation is >> present? >> >> >> -- >> Eric Covener >> cove...@gmail.com
Re: Use of [skip ci] in commit messages to avoid Travis builds
This thread mentions [skip ci] but the Travis issue mentions [ci skip] and [ci-skip]. Are all of these forms recognized? On Mon, Feb 10, 2020 at 4:23 AM Eric Covener wrote: > On Mon, Feb 10, 2020 at 1:44 AM Ruediger Pluem wrote: > > > > > > > > On 02/08/2020 12:01 PM, Luca Toscano wrote: > > > Hi everybody, > > > > > > Travis is able to read commit messages and skip the CI workflow if the > > > "[skip ci]" magic sequence is added somewhere. I keep forgetting about > > > it too, but it would be nice if we could start using it to avoid using > > > CI resources/workers when not needed (like docs changes, entries in > > > STATUS, etc..). I didn't find a way to instruct Travis to avoid > > > triggering a build if only certain file types are committed, so the > > > only solution for the moment is to manually add the aforementioned > > > sequence :( > > > > > > It is not a big deal to trigger builds even for docs etc.., but the > > > ASF resources/workers are limited (and shared among projects IIUC) so > > > I am only suggesting to be good neighbors :) If this is totally insane > > > or unacceptable I'll back off and stop vouching for it I promise! > > > > > > > Thanks for pointing this out, but I forget this as well in many cases > :-). > > The only one here who seems to remember this always is IMHO Joe. Maybe > > he has some tips how we can get better here. > > > > Regards > > > > Rüdiger > > Is there anything possible in SVN like a pre-commit hook that can see > what changed and append [skip ci] unless some other incantantation is > present? > > > -- > Eric Covener > cove...@gmail.com >
Re: Use of [skip ci] in commit messages to avoid Travis builds
On Mon, Feb 10, 2020 at 1:44 AM Ruediger Pluem wrote: > > > > On 02/08/2020 12:01 PM, Luca Toscano wrote: > > Hi everybody, > > > > Travis is able to read commit messages and skip the CI workflow if the > > "[skip ci]" magic sequence is added somewhere. I keep forgetting about > > it too, but it would be nice if we could start using it to avoid using > > CI resources/workers when not needed (like docs changes, entries in > > STATUS, etc..). I didn't find a way to instruct Travis to avoid > > triggering a build if only certain file types are committed, so the > > only solution for the moment is to manually add the aforementioned > > sequence :( > > > > It is not a big deal to trigger builds even for docs etc.., but the > > ASF resources/workers are limited (and shared among projects IIUC) so > > I am only suggesting to be good neighbors :) If this is totally insane > > or unacceptable I'll back off and stop vouching for it I promise! > > > > Thanks for pointing this out, but I forget this as well in many cases :-). > The only one here who seems to remember this always is IMHO Joe. Maybe > he has some tips how we can get better here. > > Regards > > Rüdiger Is there anything possible in SVN like a pre-commit hook that can see what changed and append [skip ci] unless some other incantantation is present? -- Eric Covener cove...@gmail.com
Re: Use of [skip ci] in commit messages to avoid Travis builds
On 02/08/2020 12:01 PM, Luca Toscano wrote: > Hi everybody, > > Travis is able to read commit messages and skip the CI workflow if the > "[skip ci]" magic sequence is added somewhere. I keep forgetting about > it too, but it would be nice if we could start using it to avoid using > CI resources/workers when not needed (like docs changes, entries in > STATUS, etc..). I didn't find a way to instruct Travis to avoid > triggering a build if only certain file types are committed, so the > only solution for the moment is to manually add the aforementioned > sequence :( > > It is not a big deal to trigger builds even for docs etc.., but the > ASF resources/workers are limited (and shared among projects IIUC) so > I am only suggesting to be good neighbors :) If this is totally insane > or unacceptable I'll back off and stop vouching for it I promise! > Thanks for pointing this out, but I forget this as well in many cases :-). The only one here who seems to remember this always is IMHO Joe. Maybe he has some tips how we can get better here. Regards Rüdiger
Re: Use of [skip ci] in commit messages to avoid Travis builds
On Sat, Feb 8, 2020 at 6:01 AM Luca Toscano wrote: > I didn't find a way to instruct Travis to avoid triggering a build if only > certain file types are committed, so the only solution for the moment is to > manually add the aforementioned sequence :( > For the record, this has been a really long-standing open issue with Travis: https://github.com/travis-ci/travis-ci/issues/6301 - Y
Re: Use of [skip ci] in commit messages to avoid Travis builds
Speaking of being good neighbors: just committed a change to a xml file without [skip ci], so easy to miss :( I'll do my best to find something to automate this.. Luca Il giorno sab 8 feb 2020 alle ore 12:01 Luca Toscano ha scritto: > > Hi everybody, > > Travis is able to read commit messages and skip the CI workflow if the > "[skip ci]" magic sequence is added somewhere. I keep forgetting about > it too, but it would be nice if we could start using it to avoid using > CI resources/workers when not needed (like docs changes, entries in > STATUS, etc..). I didn't find a way to instruct Travis to avoid > triggering a build if only certain file types are committed, so the > only solution for the moment is to manually add the aforementioned > sequence :( > > It is not a big deal to trigger builds even for docs etc.., but the > ASF resources/workers are limited (and shared among projects IIUC) so > I am only suggesting to be good neighbors :) If this is totally insane > or unacceptable I'll back off and stop vouching for it I promise! > > Luca
Use of [skip ci] in commit messages to avoid Travis builds
Hi everybody, Travis is able to read commit messages and skip the CI workflow if the "[skip ci]" magic sequence is added somewhere. I keep forgetting about it too, but it would be nice if we could start using it to avoid using CI resources/workers when not needed (like docs changes, entries in STATUS, etc..). I didn't find a way to instruct Travis to avoid triggering a build if only certain file types are committed, so the only solution for the moment is to manually add the aforementioned sequence :( It is not a big deal to trigger builds even for docs etc.., but the ASF resources/workers are limited (and shared among projects IIUC) so I am only suggesting to be good neighbors :) If this is totally insane or unacceptable I'll back off and stop vouching for it I promise! Luca