VersionControl:PRs/maybelle-config/293: Difference between revisions

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
DrivingThatTrain (talk | contribs)
cryptograss/maybelle-config#293, as GitHub has it
DrivingThatTrain (talk | contribs)
cryptograss/maybelle-config#293, as GitHub has it
 
Line 16: Line 16:
|deploy=redeploy maybelle
|deploy=redeploy maybelle
}}
}}
<pre class="pr-body">The first deploy of #292 failed after one second, before anything ran (deploy log: [Cryptograss:Maybelle/deploy logs/26374075](https://pickipedia.xyz/wiki/Cryptograss:Maybelle/deploy_logs/26374075)):
&gt; ERROR! failed at splitting arguments, either an unbalanced jinja2 block or quotes
ansible splits a shell task's words when it loads the playbook. The isolation check was a heredoc inside the task, and an apostrophe in one of its comments ("isn't") left a quote unbalanced. My mistake: render_diff renders the Jinja, but it doesn't load the playbook the way ansible does, so nothing caught it.
- **The check is its own file now,** `maybelle/jenkins-branches/isolation_check.py`. It's the same script, run inside the agent with `docker exec -i … python3 - &lt; file`.
- **`ci/test` now checks that the playbooks parse,** using `ansible-playbook --syntax-check` on maybelle's, hunter's and delivery-kid's playbooks, without the vault. It reproduces this failure on production's `maybelle.yml` and passes on this branch. Once branch tests are live, they would catch a mistake like this before the merge.
`./ci/test`: githouse 49, maybelle scripts 55, hunter 54, render_diff 5, recovery gate 5, three playbooks parse. render_diff: nothing it renders changed (the task has no Jinja, which is why render_diff never looked at it).
Deploy: redeploy maybelle
Worked on by: magent, justin, re, in #ramp</pre>

Latest revision as of 17:06, 9 November 2026

maybelle-config#293: Branch tests: the isolation check as a file (the deploy failed on an apostrophe); ci/test checks playbooks parse
State 🟣 merged 2026-11-09 01:41:35
Worked on by magent, justin, re
Moods #ramp
Deploy redeploy maybelle
Branch magent/branch-tests-fix → production, by magent-cryptograss
Opened · last pushed 2026-11-09 01:39:57 · 2026-11-09 01:39:50
The first deploy of #292 failed after one second, before anything ran (deploy log: [Cryptograss:Maybelle/deploy logs/26374075](https://pickipedia.xyz/wiki/Cryptograss:Maybelle/deploy_logs/26374075)):

> ERROR! failed at splitting arguments, either an unbalanced jinja2 block or quotes

ansible splits a shell task's words when it loads the playbook. The isolation check was a heredoc inside the task, and an apostrophe in one of its comments ("isn't") left a quote unbalanced. My mistake: render_diff renders the Jinja, but it doesn't load the playbook the way ansible does, so nothing caught it.

- **The check is its own file now,** `maybelle/jenkins-branches/isolation_check.py`. It's the same script, run inside the agent with `docker exec -i … python3 - < file`.
- **`ci/test` now checks that the playbooks parse,** using `ansible-playbook --syntax-check` on maybelle's, hunter's and delivery-kid's playbooks, without the vault. It reproduces this failure on production's `maybelle.yml` and passes on this branch. Once branch tests are live, they would catch a mistake like this before the merge.

`./ci/test`: githouse 49, maybelle scripts 55, hunter 54, render_diff 5, recovery gate 5, three playbooks parse. render_diff: nothing it renders changed (the task has no Jinja, which is why render_diff never looked at it).

Deploy: redeploy maybelle
Worked on by: magent, justin, re, in #ramp