Because it needs to be changed when the user runs the job

On Sun, Oct 13, 2019 at 10:31 AM Casey Vega <casey.v...@gmail.com> wrote:

>
> Why embed YAML into the Jenkinsfile when you can read it as a file? What
> Ivan is describing is the correct answer. Prevent this type of mistake from
> ever entering the codebase at the time of commit. If you absolutely have to
> validate inline YAML it might look something like this (which purposely
> fails due to a missing colon for size key):
>
> pipeline {
>   agent any
>   stages {
>     stage("read yaml") {
>       steps {
>         script {
>           try {
>             readYaml text: """
> something: 'my datas'
> size 3
> isEmpty: false
> """
>           } catch (Exception err) {
>             currentBuild.result = 'ABORTED'
>             error("Malformed YAML detected:\n${err}")
>           }
>         }
>         echo "YAML verified"
>       }
>     }
>   }
> }
>
> Errors look like this in the console output, this happens before anything
> is built (next echo step) based on the example above:
>
> ERROR: Malformed YAML detected:
> while scanning a simple key
>  in 'reader', line 4, column 1:
>     size 3
>     ^
> could not find expected ':'
>  in 'reader', line 5, column 1:
>     isEmpty: false
>     ^
>
> Finished: ABORTED
>
>
> Again, I highly recommend looking into Ivan's suggestion and decoupling
> your YAML from your Jenkinsfile so you're not adding complexity to your
> pipeline.
>
> On Saturday, October 12, 2019 at 1:08:37 PM UTC-7, Tony Cappellini wrote:
>>
>> Thanks- this might work for yank files  but
>> I can’t see how it would work for pipeline jobs that have embedded yaml.
>> This yaml gets edited just before the use clicks the BUILD button.
>> Essentially, I need to call the yaml sanitizer just after BUILD is clicked,
>> but before Jenkins parses it.
>>
>> On Sat, Oct 12, 2019 at 11:29 AM Ivan Fernandez Calvo <
>> kuisat...@gmail.com> wrote:
>>
>>> We use pre-commit on a stage, pre-commit has a bunch of linters, syntax
>>> check, YAML linter, JSON linter, best practices check on code and scripts,
>>> .... https://pre-commit.com/ also you can configure it to run locally
>>> as a git hook to check your project before commit something
>>>
>>> --
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "Jenkins Users" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/jenkinsci-users/uFsC3geutC0/unsubscribe
>>> .
>>> To unsubscribe from this group and all its topics, send an email to
>>> jenkins...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/jenkinsci-users/2a832ccd-303c-448b-b83a-cc15a7c26603%40googlegroups.com
>>> .
>>>
>> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Jenkins Users" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/jenkinsci-users/uFsC3geutC0/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> jenkinsci-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jenkinsci-users/00356736-acae-4314-99dc-207d919d4fed%40googlegroups.com
> <https://groups.google.com/d/msgid/jenkinsci-users/00356736-acae-4314-99dc-207d919d4fed%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CABRXM4nXyTU3GXVRQ3mRbh_zMeAXUs4CiL%2B9vYXjRJ%3DvoxQQZg%40mail.gmail.com.

Reply via email to