[oi-dev] pkglint fails during publish
Alan Coopersmith
alan.coopersmith at oracle.com
Sat May 9 21:12:25 UTC 2020
On 5/9/20 1:03 PM, Gary Mills wrote:
> On Sat, May 09, 2020 at 03:03:57PM +0000, Andy Fiddaman wrote:
>> On Sat, 9 May 2020, Gary Mills wrote:
>>
>> ; That's the change that caused the problem. The first line becomes
>> ; only a comment when the file is interpreted by python. Removing that
>> ; option string would solve the problem in a simpler way. I wonder why
>> ; it was ever put there? I see that it was added to all of the pkg
>> ; scripts. I wonder why?
>>
>> The associated commit message is:
>>
>> 29453498 pkg should ignore Python ENV and not import from site-packages
>>
>> so presumably for a more consistent environment when running pkg tools.
>
> So, that's it. Thanks for the information. I understand also that
> the pkg tools are part of a separate consolidation, neither OI nor
> illumos.
>
> In OI, we have an example of the breakage caused by this change,
> although it's only in the pkglint command. The pkglint man page says:
>
> -f config_file
>
> Configure the pkglint session using the config_file configuration
> file.
> and:
>
> pkglint.ext.*
>
> The plugin mechanism of pkglint allows for additional lint modules
> to be added at runtime. Any key that starts with pkglint.ext. takes
> a value that must be a fully-specified Python module. See the
> "Developers" section for more information.
>
> Is there any way in the pkglint rc file to specify the location of the
> additional module? What is a fully-specified Python module anyway?
> I'm not familiar with Python.
Upstream IPS fixed this by adding the -e flag to pkglint, so that consumers like
ON/illumos could just do:
PKGLINT= /usr/bin/pkglint -e $(ONBLD_TOOLS)/lib/python
https://github.com/oracle/solaris-ips/commit/b1d64c287c4346d2c5be5fe4cee278914ea86042
As a temporary workaround without that IPS comment, they could do something
like:
PKGLINT= PYTHONPATH=$(PYTHONPATH):$(ONBLD_TOOLS)/lib/python \
/usr/bin/64/python2.7 /usr/bin/pkglint
(Substitute python path as appropriate for the version of Python used in your
IPS builds.)
-alan-
More information about the oi-dev
mailing list