saltstack / saltstack/salt

[BUG] Can't copy certain files after upgarde to salt-3002.7

Open
#61,008 9 comments 0 reactions 1 assignee View on GitHub

@frogunder is already working on this.

Since Oct 6, 2021.

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

Description

Hey.

I have some problems with salt-cp after upgrade to latest 3002 version.
Some type of files are crashing python script, fe. - [master ~]0$ sudo salt-cp 'host' tree.bin /tmp :

[ERROR ] An un-handled exception was caught by salt's global exception handler:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
Traceback (most recent call last):
File "/usr/bin/salt-cp", line 11, in
load_entry_point('salt==3002.7', 'console_scripts', 'salt-cp')()
File "/usr/lib/python3.6/site-packages/salt/scripts.py", line 429, in salt_cp
client.run()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 53, in run
cp_.run()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 145, in run
ret = self.run_oldstyle()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 153, in run_oldstyle
arg = [self._load_files(), self.opts["dest"]]
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 128, in _load_files
files.update(self.file_dict(fn))
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 117, in file_dict
data = fp
.read()
File "/usr/lib64/python3.6/codecs.py", line 321, in decode
(result, consumed) = self.buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
Traceback (most recent call last):
File "/usr/bin/salt-cp", line 11, in
load_entry_point('salt==3002.7', 'console_scripts', 'salt-cp')()
File "/usr/lib/python3.6/site-packages/salt/scripts.py", line 429, in salt_cp
client.run()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 53, in run
cp
.run()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 145, in run
ret = self.run_oldstyle()
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 153, in run_oldstyle
arg = [self._load_files(), self.opts["dest"]]
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 128, in _load_files
files.update(self.file_dict(fn))
File "/usr/lib/python3.6/site-packages/salt/cli/cp.py", line 117, in file_dict
data = fp
.read()
File "/usr/lib64/python3.6/codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)

All was ok before upgrade, current version:
Salt Version:
Salt: 3002.7

Dependency Versions:
cffi: Not Installed
cherrypy: 5.6.0
dateutil: Not Installed
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 2.8.1
libgit2: Not Installed
M2Crypto: 0.33.0
Mako: Not Installed
msgpack: 0.6.2
msgpack-pure: Not Installed
mysql-python: 1.3.12
pycparser: Not Installed
pycrypto: Not Installed
pycryptodome: Not Installed
pygit2: Not Installed
Python: 3.6.8 (default, Aug 13 2020, 07:46:32)
python-gnupg: Not Installed
PyYAML: 3.11
PyZMQ: 17.0.0
smmap: Not Installed
timelib: Not Installed
Tornado: 4.5.3
ZMQ: 4.1.4

System Versions:
dist: rhel 7.9 Maipo
locale: UTF-8
machine: x86_64
release: 3.10.0-1160.42.2.el7.x86_64
system: Linux
version: Red Hat Enterprise Linux Server 7.9 Maipo`

Any idea?
Latest RHEL7.9 OS without EPEL packages.

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.