saltstack / saltstack/salt

[BUG] glob/pcre/regex options are broken in FreeBSD pkgng remove function

Open
#60,499 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug FreeBSD severity-high
Dominant language
Python
Stars
15.7k
Forks
5.6k
Avg merge
2d 44m
Merged PRs (30d)
80

Description

Description
glob/pcre/regex options are broken in pkgng remove function

Setup
(Please provide relevant configs and/or SLS files (be sure to remove sensitive info).

Steps to Reproduce the behavior

[root@ccc /usr/home/vagrant]# pkg info -I mutt
mutt-2.0.6 Small but powerful text based program for read/writing e-mail

[root@ccc /usr/home/vagrant]# salt \* pkg.remove glob=True mutt-\*
ccc:
----------

[root@ccc /usr/home/vagrant]# pkg info -I mutt
mutt-2.0.6 Small but powerful text based program for read/writing e-mail

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Versions Report

salt --versions-report (Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)
Salt Version:                                                                                                                  
          Salt: 3003+0na.b4ff839                                                                                               
                                                                                                                               
Dependency Versions:                                                                                                           
          cffi: Not Installed                                                                                                  
      cherrypy: Not Installed                                                                                                  
      dateutil: Not Installed
     docker-py: Not Installed
         gitdb: Not Installed
     gitpython: Not Installed
        Jinja2: 3.0.1
       libgit2: Not Installed
      M2Crypto: Not Installed
          Mako: Not Installed
       msgpack: 1.0.2
  msgpack-pure: Not Installed
  mysql-python: Not Installed
     pycparser: Not Installed
      pycrypto: Not Installed
  pycryptodome: 3.10.1
        pygit2: Not Installed
        Python: 3.7.10 (default, Jul  1 2021, 01:10:57)
  python-gnupg: Not Installed
        PyYAML: 5.4.1
         PyZMQ: 21.0.2
         smmap: Not Installed
       timelib: Not Installed
       Tornado: 4.5.3
           ZMQ: 4.3.4
 
System Versions:
          dist: freebsd 13.0 
        locale: UTF-8
       machine: amd64
       release: 13.0-RELEASE
        system: FreeBSD
       version: FreeBSD 13.0 

Additional context
Add any other context about the problem here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing pkg.remove with glob=True and the mutt-* pattern on FreeBSD 13.0, then trace the Salt pkgng remove entry point and how glob, pcre, and regex options are passed. Done means the matching mutt package is removed through pkg.remove and the behavior is covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.