git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [Question] How to fix 'static-analysis' build on Ubuntu 20.04

From
Derrick Stolee <derrickstolee@github.com>
Date
Aug 23, 2022, 17:30 UTC
Message-ID
<aa44e0b4-6e51-f5dc-16f0-69688833192f@github.com>
In-Reply-To
<20220822222601.GA1760@szeder.dev>
On 8/22/2022 6:26 PM, SZEDER Gábor wrote:
Show 29 quoted lines
> On Mon, Aug 22, 2022 at 11:19:11AM -0400, Derrick Stolee wrote:
>> While preparing my latest series, I noticed that the GitHub Actions CI
>> builds were cancelling the 'static-analysis' job because of a brownout of
>> Ubuntu 18.04. We are recommended to upgrade to 20.04.
>>
>> However, we explicitly chose 18.04 in d051ed77ee6
>> (.github/workflows/main.yml: run static-analysis on bionic, 2021-02-08)
>> because coccinelle was not available in 20.04. It still isn't available
>> since I tried the basic update and it failed [1]
>>
>> [1] https://github.com/gitgitgadget/git/runs/7955077955?check_suite_focus=true#step:3:98
>>
>> Does anyone have an idea of how to install coccinelle on this newer
>> version? 
> 
> Containers?  I've built Docker containers from most recent Coccinelle
> versions and used to use them in my custom Travis CI build jobs; the
> version included in Ubuntu 18.04 is rather old, and apparently it
> doesn't catch some transformations that later versions do [1].  I'm
> sure it's somehow possible to use such containers in GitHub Actions as
> well.
> 
>> Should we try compiling it from source for this job?
> 
> It's not that difficult to build Coccinelle from source once you
> figure out its OCaml dependencies...  And luckily those dependencies
> seem to be rather stable: we can pass the same dozen or so package
> names to 'apt-get' to install all its build dependencies both on
> ubuntu:18.04 and :20.04 base images.

These are both good ideas to consider if we need to in the future, but it turns out that we can jump over 20.04 to 22.04 and that has the correct feeds to install Coccinelle. I submitted an update [1].

[1] https://lore.kernel.org/git/pull.1334.git.1661275691795.gitgitgadget@gmail.com
Show 8 quoted lines
> However, installing dependencies and building Coccinelle takes almost
> 5 minutes on my machine; I don't think we'd want to add that much
> overhead to every CI build.
> 
>> Should we
>> consider moving off of coccinelle and onto a different tool?
> 
> Is there any other comparable tool out there?!

I didn't have one in mind, but maybe someone else did? You make me think that there is not, which isn't surprising.

Thanks, -Stolee

Previous: SZEDER Gábor
Message 3 of 3 in “[Question] How to fix 'static-analysis' build on Ubuntu 20.04”
  1. Derrick StoleeAug 22, 2022
  2. SZEDER GáborAug 22, 2022
  3. Derrick StoleeAug 23, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.