Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Searching a way to allow specific matrix entries to fail #9302

Open
weiznich opened this Issue Jan 10, 2019 · 4 comments

Comments

Projects
None yet
5 participants
@weiznich
Copy link

weiznich commented Jan 10, 2019

Environment

Repo: diesel.rs/diesel

Issue Description

We have setup azure pipelines as automatic CI service for diesel.rs. That works mostly fine.
Now it is specific to the rust ecosystem that there are several compiler version, notably a stable version, a beta version and a nightly version. The later is updated every night a may not work. To detect such broken version projects are encouraged to run their CI also with the nightly version of the rust compiler, but setup the CI in such a way that failing builds with a nightly compiler are ignored. Basically I've found no way to do this with azure pipelines.

@moswald

This comment has been minimized.

Copy link
Member

moswald commented Feb 11, 2019

This may be possible with our yaml builds. @ericsciple do you know if this can be done?

@ericsciple

This comment has been minimized.

Copy link
Member

ericsciple commented Feb 11, 2019

@vtbassmatt fyi

@weiznich Unfortunately it is not allowed today. The current solution would be to model it as a separate job.

@vtbassmatt

This comment has been minimized.

Copy link
Member

vtbassmatt commented Feb 22, 2019

@ericsciple how do you prevent a task failure from bubbling up to the job (or job failure from bubbling up to the pipeline)? I could update the docs with a pattern for implementing allow-failure, but I don't actually know how to do it 😀

@ericsciple

This comment has been minimized.

Copy link
Member

ericsciple commented Feb 22, 2019

@vtbassmatt continueOnError is a task-level control and job-level control. However, when set on the job I believe it applies to all configurations.

My initial thoughts are: that behavior makes sense, especially as we think about deployment phases coming soon. If we need additional control, we might want an additional option somewhere else.

This is a similar problem to condition. The property actually exists at the phase-level, not on each job configuration.

A workaround would be to use templates instead of matrix.

Rather than adding additional controls, it makes me wonder whether the correct long term solution here is something like templates without actually requiring you to declare a separate file.

@ericsciple ericsciple added the question label Feb 26, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.