Merge 3006.x into 3007.x

This commit is contained in:
Pedro Algarvio 2024-02-21 19:14:47 +00:00
commit 823886028b
No known key found for this signature in database
GPG key ID: BB36BF6584A298FF
51 changed files with 833 additions and 152 deletions

View file

@ -448,7 +448,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-salt-onedir: build-salt-onedir:
@ -464,7 +464,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-pkgs-onedir: build-pkgs-onedir:
@ -477,7 +477,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "onedir" source: "onedir"
@ -491,7 +491,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "src" source: "src"
build-ci-deps: build-ci-deps:

View file

@ -500,7 +500,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-salt-onedir: build-salt-onedir:
@ -516,7 +516,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-pkgs-onedir: build-pkgs-onedir:
@ -529,7 +529,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "onedir" source: "onedir"
environment: nightly environment: nightly
@ -547,7 +547,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "src" source: "src"
environment: nightly environment: nightly

View file

@ -490,7 +490,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-salt-onedir: build-salt-onedir:
@ -506,7 +506,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-pkgs-onedir: build-pkgs-onedir:
@ -519,7 +519,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "onedir" source: "onedir"
@ -533,7 +533,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "src" source: "src"
build-ci-deps: build-ci-deps:

View file

@ -487,7 +487,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-salt-onedir: build-salt-onedir:
@ -503,7 +503,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }}
github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
build-pkgs-onedir: build-pkgs-onedir:
@ -516,7 +516,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "onedir" source: "onedir"
environment: staging environment: staging
@ -534,7 +534,7 @@ jobs:
with: with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.14.2" relenv-version: "0.15.1"
python-version: "3.10.13" python-version: "3.10.13"
source: "src" source: "src"
environment: staging environment: staging

View file

@ -45,7 +45,7 @@ repos:
salt/ext/.* salt/ext/.*
)$ )$
- repo: https://github.com/s0undt3ch/python-tools-scripts - repo: https://github.com/saltstack/python-tools-scripts
rev: "0.18.6" rev: "0.18.6"
hooks: hooks:
- id: tools - id: tools
@ -1416,7 +1416,7 @@ repos:
hooks: hooks:
- id: remove-import-headers - id: remove-import-headers
- repo: https://github.com/s0undt3ch/salt-rewrite - repo: https://github.com/saltstack/salt-rewrite
# Automatically rewrite code with known rules # Automatically rewrite code with known rules
rev: 2.5.2 rev: 2.5.2
hooks: hooks:

View file

@ -179,6 +179,61 @@ Versions are `MAJOR.PATCH`.
- Update to `gitpython>=3.1.35` due to https://github.com/advisories/GHSA-wfm5-v35h-vwf4 and https://github.com/advisories/GHSA-cwvm-v4w8-q58c [#65137](https://github.com/saltstack/salt/issues/65137) - Update to `gitpython>=3.1.35` due to https://github.com/advisories/GHSA-wfm5-v35h-vwf4 and https://github.com/advisories/GHSA-cwvm-v4w8-q58c [#65137](https://github.com/saltstack/salt/issues/65137)
## 3006.7 (2024-02-20)
### Deprecated
- Deprecate and stop using ``salt.features`` [#65951](https://github.com/saltstack/salt/issues/65951)
### Changed
- Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008. [#65938](https://github.com/saltstack/salt/issues/65938)
### Fixed
- Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in. [#34658](https://github.com/saltstack/salt/issues/34658)
- Fixed an issue when keys didn't match because of line endings [#52289](https://github.com/saltstack/salt/issues/52289)
- Corrected encoding of credentials for use with Artifactory [#63063](https://github.com/saltstack/salt/issues/63063)
- Use `send_multipart` instead of `send` when sending multipart message. [#65018](https://github.com/saltstack/salt/issues/65018)
- Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve [#65154](https://github.com/saltstack/salt/issues/65154)
- Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error [#65193](https://github.com/saltstack/salt/issues/65193)
- Upgrade relenv to 0.15.0 to fix namespaced packages installed by salt-pip [#65433](https://github.com/saltstack/salt/issues/65433)
- Fix regression of fileclient re-use when rendering sls pillars and states [#65450](https://github.com/saltstack/salt/issues/65450)
- Fixes the s3fs backend computing the local cache's files with the wrong hash type [#65589](https://github.com/saltstack/salt/issues/65589)
- Fixed Salt-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration [#65670](https://github.com/saltstack/salt/issues/65670)
- Fix boto execution module loading [#65691](https://github.com/saltstack/salt/issues/65691)
- Removed PR 65185 changes since incomplete solution [#65692](https://github.com/saltstack/salt/issues/65692)
- catch only ret/ events not all returning events. [#65727](https://github.com/saltstack/salt/issues/65727)
- Fix nonsensical time in fileclient timeout error. [#65752](https://github.com/saltstack/salt/issues/65752)
- Fixes an issue when reading/modifying ini files that contain unicode characters [#65777](https://github.com/saltstack/salt/issues/65777)
- added https proxy to the list of proxies so that requests knows what to do with https based proxies [#65824](https://github.com/saltstack/salt/issues/65824)
- Ensure minion channels are closed on any master connection error. [#65932](https://github.com/saltstack/salt/issues/65932)
- Fixed issue where Salt can't find libcrypto when pip installed from a cloned repo [#65954](https://github.com/saltstack/salt/issues/65954)
- Fix RPM package systemd scriptlets to make RPM packages more universal [#65987](https://github.com/saltstack/salt/issues/65987)
- Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed. [#65990](https://github.com/saltstack/salt/issues/65990)
- Fix exceptions being set on futures that are already done in ZeroMQ transport [#66006](https://github.com/saltstack/salt/issues/66006)
- Use hmac compare_digest method in hashutil module to mitigate potential timing attacks [#66041](https://github.com/saltstack/salt/issues/66041)
- Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default. [#66061](https://github.com/saltstack/salt/issues/66061)
- Upgrade relenv to 0.15.1 to fix debugpy support. [#66094](https://github.com/saltstack/salt/issues/66094)
### Security
- Bump to ``cryptography==42.0.0`` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f
In the process, we were also required to update to ``pyOpenSSL==24.0.0`` [#66004](https://github.com/saltstack/salt/issues/66004)
- Bump to `cryptography==42.0.3` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f [#66090](https://github.com/saltstack/salt/issues/66090)
## 3006.6 (2024-01-26) ## 3006.6 (2024-01-26)

View file

@ -1,3 +0,0 @@
Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in.

View file

@ -1 +0,0 @@
Fixed an issue when keys didn't match because of line endings

View file

@ -1 +0,0 @@
Corrected encoding of credentials for use with Artifactory

View file

@ -1 +0,0 @@
Use `send_multipart` instead of `send` when sending multipart message.

View file

@ -1,2 +0,0 @@
Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve

View file

@ -1,2 +0,0 @@
Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error

View file

@ -1 +0,0 @@
Fix regression of fileclient re-use when rendering sls pillars and states

View file

@ -1 +0,0 @@
Fixes the s3fs backend computing the local cache's files with the wrong hash type

View file

@ -1 +0,0 @@
Fixed Salt-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration

View file

@ -1 +0,0 @@
Fix boto execution module loading

View file

@ -1 +0,0 @@
Removed PR 65185 changes since incomplete solution

View file

@ -1 +0,0 @@
catch only ret/ events not all returning events.

View file

@ -1 +0,0 @@
Fix nonsensical time in fileclient timeout error.

View file

@ -1 +0,0 @@
Fixes an issue when reading/modifying ini files that contain unicode characters

View file

@ -1 +0,0 @@
added https proxy to the list of proxies so that requests knows what to do with https based proxies

View file

@ -1 +0,0 @@
Ensure minion channels are closed on any master connection error.

View file

@ -1 +0,0 @@
Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008.

View file

@ -1 +0,0 @@
Deprecate and stop using ``salt.features``

View file

@ -1 +0,0 @@
Fixed issue where Salt can't find libcrypto when pip installed from a cloned repo

View file

@ -1 +0,0 @@
Fix RPM package systemd scriptlets to make RPM packages more universal

View file

@ -1,2 +0,0 @@
Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed.

View file

@ -1,3 +0,0 @@
Bump to ``cryptography==42.0.0`` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f
In the process, we were also required to update to ``pyOpenSSL==24.0.0``

View file

@ -1 +0,0 @@
Fix exceptions being set on futures that are already done in ZeroMQ transport

View file

@ -1 +0,0 @@
Use hmac compare_digest method in hashutil module to mitigate potential timing attacks

View file

@ -1,2 +0,0 @@
Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default.

View file

@ -1 +0,0 @@
Bump to `cryptography==42.0.3` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f

View file

@ -1,6 +1,6 @@
nox_version: "2022.8.7" nox_version: "2022.8.7"
python_version: "3.10.13" python_version: "3.10.13"
relenv_version: "0.14.2" relenv_version: "0.15.1"
release_branches: release_branches:
- "3006.x" - "3006.x"
- "3007.x" - "3007.x"

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-API" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-API" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-api \- salt-api Command salt-api \- salt-api Command
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-CALL" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-CALL" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-call \- salt-call Documentation salt-call \- salt-call Documentation
.SH SYNOPSIS .SH SYNOPSIS

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-CLOUD" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-CLOUD" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-cloud \- Salt Cloud Command salt-cloud \- Salt Cloud Command
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-CP" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-CP" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-cp \- salt-cp Documentation salt-cp \- salt-cp Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-KEY" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-KEY" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-key \- salt-key Documentation salt-key \- salt-key Documentation
.SH SYNOPSIS .SH SYNOPSIS

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-MASTER" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-MASTER" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-master \- salt-master Documentation salt-master \- salt-master Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-MINION" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-MINION" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-minion \- salt-minion Documentation salt-minion \- salt-minion Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-PROXY" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-PROXY" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-proxy \- salt-proxy Documentation salt-proxy \- salt-proxy Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-RUN" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-RUN" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-run \- salt-run Documentation salt-run \- salt-run Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-SSH" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-SSH" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-ssh \- salt-ssh Documentation salt-ssh \- salt-ssh Documentation
.SH SYNOPSIS .SH SYNOPSIS

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT-SYNDIC" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT-SYNDIC" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt-syndic \- salt-syndic Documentation salt-syndic \- salt-syndic Documentation
.sp .sp

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt \- salt salt \- salt
.SH SYNOPSIS .SH SYNOPSIS

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SALT" "7" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SALT" "7" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
salt \- Salt Documentation salt \- Salt Documentation
.SH SALT PROJECT .SH SALT PROJECT
@ -725,7 +725,7 @@ version of Python:
.sp .sp
.nf .nf
.ft C .ft C
pyenv install 3.7.0 pyenv install 3.9.18
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -742,7 +742,7 @@ new virtual environment with this command:
.sp .sp
.nf .nf
.ft C .ft C
pyenv virtualenv 3.7.0 salt pyenv virtualenv 3.9.18 salt
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -1016,8 +1016,8 @@ you\(aqll need to run 3.9 or earlier. For example:
.sp .sp
.nf .nf
.ft C .ft C
pyenv install 3.7.15 pyenv install 3.9.18
pyenv virtualenv 3.7.15 salt\-docs pyenv virtualenv 3.9.18 salt\-docs
echo \(aqsalt\-docs\(aq > .python\-version echo \(aqsalt\-docs\(aq > .python\-version
.ft P .ft P
.fi .fi
@ -1256,7 +1256,7 @@ meaningful and complete! \fITypically\fP the best tests for Salt are going
to be unit tests. Testing is \fI\%a whole topic on its to be unit tests. Testing is \fI\%a whole topic on its
own\fP, own\fP,
But you may also want to write functional or integration tests. You\(aqll But you may also want to write functional or integration tests. You\(aqll
find those in the \fBsalt/tests\fP directory. find those in the \fBtests/\fP directory.
.sp .sp
When you\(aqre thinking about tests to write, the most important thing to When you\(aqre thinking about tests to write, the most important thing to
keep in mind is, “What, exactly, am I testing?” When a test fails, you keep in mind is, “What, exactly, am I testing?” When a test fails, you
@ -1558,6 +1558,133 @@ For this, you would be able to install with:
.fi .fi
.UNINDENT .UNINDENT
.UNINDENT .UNINDENT
.SH SALT PROJECT MAINTENANCE POLICIES
.sp
This document explains the current project maintenance policies. The goal of
these policies are to reduce the maintenance burden on core maintainers of the
Salt Project and to encourage more active engagement from the Salt community.
.INDENT 0.0
.IP \(bu 2
\fI\%Issue management\fP
.IP \(bu 2
\fI\%Pull request management\fP
.IP \(bu 2
\fI\%Salt Enhancement Proposals (SEP) process\fP
.UNINDENT
.SS Issue management
.sp
Issues for the Salt Project are critical to Salt community communication and to
find and resolve issues in the Salt Project. As such, the issue tracker needs to
be kept clean and current to the currently supported releases of Salt. They also
need to be free of feature requests, arguments, and trolling.
.sp
We have decided to update our issue policy to be similar to RedHat community
project policies.
.sp
Community members who repeatedly violate these policies are subject to bans.
.INDENT 0.0
.IP 1. 3
All issues that were not opened against a currently supported release of Salt
will be closed.
.INDENT 3.0
.IP \(bu 2
When an old release of Salt is marked out of support, all issues opened
against the now defunct release will be closed.
.IP \(bu 2
If the issue is still present in the current release of Salt, submit a new
issue. Do not re\-open the old issue after it has been closed.
.IP \(bu 2
When opening a new issue that was a bug in a previous release of Salt, you
must validate it against a currently supported release of Salt for
consideration. Issues that do not show the problem against a current
release will be closed without consideration.
.UNINDENT
.IP 2. 3
Only defects can be submitted to the issue tracker.
.INDENT 3.0
.IP \(bu 2
Feature requests without a PR will be immediately closed.
.IP \(bu 2
Feature requests must be designated as a feature being developed and owned
by the issue submitter and assigned to a release. Otherwise they will be
immediately closed.
.IP \(bu 2
Discussions about features can be held in the GitHub
\fI\%Discussions\fP tab or in
the community \fI\%Open Hour\fP\&.
.IP \(bu 2
Questions will be immediately closed.
.UNINDENT
.IP 3. 3
Issues must submit sufficient information.
.INDENT 3.0
.IP \(bu 2
Issues must follow the relevant template for information.
.IP \(bu 2
Issues that do not give sufficient information about the nature of the
issue \fBand how to reproduce the issue\fP will be immediately closed.
.IP \(bu 2
Issues that do not comply will be immediately closed.
.UNINDENT
.UNINDENT
.SS Pull request management
.sp
The Salt pull request (PR) queue has been a challenge to maintain for the entire
life of the project. This is in large part due to the incredibly active and
vibrant community around Salt.
.sp
Unfortunately, it has proven to be too much for the core team and the greater
Salt community to manage. As such, we deem it necessary to make fundamental
changes to how we manage the PR queue:
.INDENT 0.0
.IP 1. 3
All PRs opened against releases of Salt that are no longer supported will be
closed immediately.
.IP 2. 3
Closed PRs can be resubmitted, NOT re\-opened.
.IP 3. 3
PRs need to provide full tests for all of the code affected, regardless of
whether the PR author wrote the code affected.
.IP 4. 3
PR tests need to be written using the current test mechanism (pytest).
.IP 5. 3
PRs need to pass tests.
.IP 6. 3
PRs must NOT increase the overall test time by a noticeable length.
.IP 7. 3
PRs must NOT add new plugins directly to Salt unless sanctioned by the Salt
core team. New plugins should be made into Salt Extensions.
.IP 8. 3
PRs that have not been updated due to inactivity will be closed. Inactivity
is determined by a lack of submitter activity for the space of 1 month.
.IP 9. 3
PR tests should always maintain or increase total code coverage.
.UNINDENT
.SS Salt Enhancement Proposals (SEP) process
.sp
\fBA message from Thomas Hatch, creator of Salt:\fP
.sp
In 2019, we decided to create a community process to discuss and review Salt
Enhancement Proposals (SEPs). Unfortunately, I feel that this process has not
proven to be an effective way to solve the core issues around Salt Enhancements.
Overall, the Salt enhancement process has proven itself to be more of a burden
than an accelerant to Salt stability, security, and progress. As such, I feel
that the current optimal course of action is to shut the process down.
.sp
Instead of the Salt Enhancement Proposal process, we will add a time in the
\fI\%Open Hour\fP for people to present ideas and
concepts to better understand if they are worth their effort to develop.
Extensive documentation around more intrusive or involved enhancements should
be included in pull requests (PRs). Conversations about enhancements can also be
held in the \fI\%Discussions\fP tab
in GitHub.
.sp
By migrating the conversation into the PR process, we ensure that we are only
reviewing viable proposals instead of being burdened with requests that the core
team is expected to fulfill.
.sp
Effective immediately (January 2024), we are archiving and freezing the SEP
repo.
.SH INSTALLATION .SH INSTALLATION
.sp .sp
See the \fI\%Salt Install Guide\fP See the \fI\%Salt Install Guide\fP
@ -194368,7 +194495,7 @@ Passes through all the parameters described in the
\fI\%utils.http.query function\fP: \fI\%utils.http.query function\fP:
.INDENT 7.0 .INDENT 7.0
.TP .TP
.B salt.utils.http.query(url, method=\(aqGET\(aq, params=None, data=None, data_file=None, header_dict=None, header_list=None, header_file=None, username=None, password=None, auth=None, decode=False, decode_type=\(aqauto\(aq, status=False, headers=False, text=False, cookies=None, cookie_jar=None, cookie_format=\(aqlwp\(aq, persist_session=False, session_cookie_jar=None, data_render=False, data_renderer=None, header_render=False, header_renderer=None, template_dict=None, test=False, test_url=None, node=\(aqminion\(aq, port=80, opts=None, backend=None, ca_bundle=None, verify_ssl=None, cert=None, text_out=None, headers_out=None, decode_out=None, stream=False, streaming_callback=None, header_callback=None, handle=False, agent=\(aqSalt/3006.6\(aq, hide_fields=None, raise_error=True, formdata=False, formdata_fieldname=None, formdata_filename=None, decode_body=True, **kwargs) .B salt.utils.http.query(url, method=\(aqGET\(aq, params=None, data=None, data_file=None, header_dict=None, header_list=None, header_file=None, username=None, password=None, auth=None, decode=False, decode_type=\(aqauto\(aq, status=False, headers=False, text=False, cookies=None, cookie_jar=None, cookie_format=\(aqlwp\(aq, persist_session=False, session_cookie_jar=None, data_render=False, data_renderer=None, header_render=False, header_renderer=None, template_dict=None, test=False, test_url=None, node=\(aqminion\(aq, port=80, opts=None, backend=None, ca_bundle=None, verify_ssl=None, cert=None, text_out=None, headers_out=None, decode_out=None, stream=False, streaming_callback=None, header_callback=None, handle=False, agent=\(aqSalt/3006.7\(aq, hide_fields=None, raise_error=True, formdata=False, formdata_fieldname=None, formdata_filename=None, decode_body=True, **kwargs)
Query a resource, and decode the return data Query a resource, and decode the return data
.UNINDENT .UNINDENT
.INDENT 7.0 .INDENT 7.0
@ -197100,8 +197227,46 @@ all
(for example /etc/sysctl.conf) (for example /etc/sysctl.conf)
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.get_ini(file_name, separator=\(aq=\(aq) .B salt.modules.ini_manage.get_ini(file_name, separator=\(aq=\(aq, encoding=None)
Retrieve whole structure from an ini file and return it as dictionary. Retrieve the whole structure from an ini file and return it as a dictionary.
.INDENT 7.0
.TP
.B Parameters
.INDENT 7.0
.IP \(bu 2
\fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
.IP \(bu 2
\fBseparator\fP (\fI\%str\fP) \-\-
.sp
The character used to separate keys and values. Standard ini files
use the \(dq=\(dq character. The default is \fB=\fP\&.
.sp
New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
.INDENT 7.0
.TP
.B A dictionary containing the sections along with the values and
names contained in each section
.UNINDENT
.TP
.B Return type
\fI\%dict\fP
.UNINDENT
.sp .sp
API Example: API Example:
.INDENT 7.0 .INDENT 7.0
@ -197110,9 +197275,8 @@ API Example:
.nf .nf
.ft C .ft C
import salt.client import salt.client
with salt.client.giet_local_client() as sc: with salt.client.get_local_client() as sc:
sc.cmd(\(aqtarget\(aq, \(aqini.get_ini\(aq, sc.cmd(\(aqtarget\(aq, \(aqini.get_ini\(aq, [path_to_ini_file])
[path_to_ini_file])
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -197132,9 +197296,52 @@ salt \(aq*\(aq ini.get_ini /path/to/ini
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.get_option(file_name, section, option, separator=\(aq=\(aq) .B salt.modules.ini_manage.get_option(file_name, section, option, separator=\(aq=\(aq, encoding=None)
Get value of a key from a section in an ini file. Returns \fBNone\fP if Get value of a key from a section in an ini file. Returns \fBNone\fP if
no matching key was found. no matching key was found.
.INDENT 7.0
.TP
.B Parameters
.INDENT 7.0
.IP \(bu 2
\fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
.IP \(bu 2
\fBsection\fP (\fI\%str\fP) \-\- A string value representing the section of the ini that the option
is in. If the option is not in a section, leave this empty.
.IP \(bu 2
\fBoption\fP (\fI\%str\fP) \-\- A string value representing the option to search for.
.IP \(bu 2
\fBseparator\fP (\fI\%str\fP) \-\-
.sp
The character used to separate keys and values. Standard ini files
use the \(dq=\(dq character. The default is \fB=\fP\&.
.sp
New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
.INDENT 7.0
.TP
.B The value as defined in the ini file, or \fBNone\fP if empty or not
found
.UNINDENT
.TP
.B Return type
\fI\%str\fP
.UNINDENT
.sp .sp
API Example: API Example:
.INDENT 7.0 .INDENT 7.0
@ -197144,8 +197351,7 @@ API Example:
.ft C .ft C
import salt.client import salt.client
with salt.client.get_local_client() as sc: with salt.client.get_local_client() as sc:
sc.cmd(\(aqtarget\(aq, \(aqini.get_option\(aq, sc.cmd(\(aqtarget\(aq, \(aqini.get_option\(aq, [path_to_ini_file, section_name, option])
[path_to_ini_file, section_name, option])
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -197165,9 +197371,50 @@ salt \(aq*\(aq ini.get_option /path/to/ini section_name option_name
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.get_section(file_name, section, separator=\(aq=\(aq) .B salt.modules.ini_manage.get_section(file_name, section, separator=\(aq=\(aq, encoding=None)
Retrieve a section from an ini file. Returns the section as dictionary. If Retrieve a section from an ini file. Returns the section as a dictionary. If
the section is not found, an empty dictionary is returned. the section is not found, an empty dictionary is returned.
.INDENT 7.0
.TP
.B Parameters
.INDENT 7.0
.IP \(bu 2
\fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
.IP \(bu 2
\fBsection\fP (\fI\%str\fP) \-\- A string value representing name of the section to search for.
.IP \(bu 2
\fBseparator\fP (\fI\%str\fP) \-\-
.sp
The character used to separate keys and values. Standard ini files
use the \(dq=\(dq character. The default is \fB=\fP\&.
.sp
New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
.INDENT 7.0
.TP
.B A dictionary containing the names and values of all items in the
section of the ini file. If the section is not found, an empty
dictionary is returned
.UNINDENT
.TP
.B Return type
\fI\%dict\fP
.UNINDENT
.sp .sp
API Example: API Example:
.INDENT 7.0 .INDENT 7.0
@ -197177,8 +197424,7 @@ API Example:
.ft C .ft C
import salt.client import salt.client
with salt.client.get_local_client() as sc: with salt.client.get_local_client() as sc:
sc.cmd(\(aqtarget\(aq, \(aqini.get_section\(aq, sc.cmd(\(aqtarget\(aq, \(aqini.get_section\(aq, [path_to_ini_file, section_name])
[path_to_ini_file, section_name])
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -197198,9 +197444,52 @@ salt \(aq*\(aq ini.get_section /path/to/ini section_name
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.remove_option(file_name, section, option, separator=\(aq=\(aq) .B salt.modules.ini_manage.remove_option(file_name, section, option, separator=\(aq=\(aq, encoding=None)
Remove a key/value pair from a section in an ini file. Returns the value of Remove a key/value pair from a section in an ini file. Returns the value of
the removed key, or \fBNone\fP if nothing was removed. the removed key, or \fBNone\fP if nothing was removed.
.INDENT 7.0
.TP
.B Parameters
.INDENT 7.0
.IP \(bu 2
\fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
.IP \(bu 2
\fBsection\fP (\fI\%str\fP) \-\- A string value representing the section of the ini that the option
is in. If the option is not in a section, leave this empty.
.IP \(bu 2
\fBoption\fP (\fI\%str\fP) \-\- A string value representing the option to search for.
.IP \(bu 2
\fBseparator\fP (\fI\%str\fP) \-\-
.sp
The character used to separate keys and values. Standard ini files
use the \(dq=\(dq character. The default is \fB=\fP\&.
.sp
New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
.INDENT 7.0
.TP
.B A string value representing the option that was removed or \fBNone\fP
if nothing was removed
.UNINDENT
.TP
.B Return type
\fI\%str\fP
.UNINDENT
.sp .sp
API Example: API Example:
.INDENT 7.0 .INDENT 7.0
@ -197210,8 +197499,7 @@ API Example:
.ft C .ft C
import salt import salt
sc = salt.client.get_local_client() sc = salt.client.get_local_client()
sc.cmd(\(aqtarget\(aq, \(aqini.remove_option\(aq, sc.cmd(\(aqtarget\(aq, \(aqini.remove_option\(aq, [path_to_ini_file, section_name, option])
[path_to_ini_file, section_name, option])
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -197231,9 +197519,49 @@ salt \(aq*\(aq ini.remove_option /path/to/ini section_name option_name
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.remove_section(file_name, section, separator=\(aq=\(aq) .B salt.modules.ini_manage.remove_section(file_name, section, separator=\(aq=\(aq, encoding=None)
Remove a section in an ini file. Returns the removed section as dictionary, Remove a section in an ini file. Returns the removed section as a
or \fBNone\fP if nothing was removed. dictionary, or \fBNone\fP if nothing is removed.
.INDENT 7.0
.TP
.B Parameters
.INDENT 7.0
.IP \(bu 2
\fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
.IP \(bu 2
\fBsection\fP (\fI\%str\fP) \-\- A string value representing the name of the section search for.
.IP \(bu 2
\fBseparator\fP (\fI\%str\fP) \-\-
.sp
The character used to separate keys and values. Standard ini files
use the \(dq=\(dq character. The default is \fB=\fP\&.
.sp
New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
.INDENT 7.0
.TP
.B A dictionary containing the names and values of all items in the
section that was removed or \fBNone\fP if nothing was removed
.UNINDENT
.TP
.B Return type
\fI\%dict\fP
.UNINDENT
.sp .sp
API Example: API Example:
.INDENT 7.0 .INDENT 7.0
@ -197243,8 +197571,7 @@ API Example:
.ft C .ft C
import salt.client import salt.client
with salt.client.get_local_client() as sc: with salt.client.get_local_client() as sc:
sc.cmd(\(aqtarget\(aq, \(aqini.remove_section\(aq, sc.cmd(\(aqtarget\(aq, \(aqini.remove_section\(aq, [path_to_ini_file, section_name])
[path_to_ini_file, section_name])
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -197264,29 +197591,46 @@ salt \(aq*\(aq ini.remove_section /path/to/ini section_name
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.ini_manage.set_option(file_name, sections=None, separator=\(aq=\(aq) .B salt.modules.ini_manage.set_option(file_name, sections=None, separator=\(aq=\(aq, encoding=None)
Edit an ini file, replacing one or more sections. Returns a dictionary Edit an ini file, replacing one or more sections. Returns a dictionary
containing the changes made. containing the changes made.
.INDENT 7.0 .INDENT 7.0
.TP .TP
.B file_name .B Parameters
path of ini_file .INDENT 7.0
.TP .IP \(bu 2
.B sections \fBfile_name\fP (\fI\%str\fP) \-\- The full path to the ini file.
None .IP \(bu 2
A dictionary representing the sections to be edited ini file \fBsections\fP (\fI\%dict\fP) \-\- A dictionary representing the sections to be edited in the ini file.
The keys are the section names and the values are the dictionary The keys are the section names and the values are a dictionary
containing the options containing the options. If the ini file does not contain sections
If the ini file does not contain sections the keys and values represent the keys and values represent the options. The default is \fBNone\fP\&.
the options .IP \(bu 2
.TP \fBseparator\fP (\fI\%str\fP) \-\-
.B separator .sp
= The character used to separate keys and values. Standard ini files
A character used to separate keys and values. Standard ini files use use the \(dq=\(dq character. The default is \fB=\fP\&.
the \(dq=\(dq character.
.sp .sp
New in version 2016.11.0. New in version 2016.11.0.
.IP \(bu 2
\fBencoding\fP (\fI\%str\fP) \-\-
.sp
A string value representing encoding of the target ini file. If
\fBNone\fP is passed, it uses the system default which is likely
\fButf\-8\fP\&. Default is \fBNone\fP
.sp
New in version 3006.6.
.UNINDENT
.TP
.B Returns
A dictionary representing the changes made to the ini file
.TP
.B Return type
\fI\%dict\fP
.UNINDENT .UNINDENT
.sp .sp
API Example: API Example:
@ -197298,8 +197642,7 @@ API Example:
import salt.client import salt.client
with salt.client.get_local_client() as sc: with salt.client.get_local_client() as sc:
sc.cmd( sc.cmd(
\(aqtarget\(aq, \(aqini.set_option\(aq, \(aqtarget\(aq, \(aqini.set_option\(aq, [\(aqpath_to_ini_file\(aq, \(aq{\(dqsection_to_change\(dq: {\(dqkey\(dq: \(dqvalue\(dq}}\(aq]
[\(aqpath_to_ini_file\(aq, \(aq{\(dqsection_to_change\(dq: {\(dqkey\(dq: \(dqvalue\(dq}}\(aq]
) )
.ft P .ft P
.fi .fi
@ -218197,7 +218540,7 @@ salt \(aq*\(aq assistive.enabled com.smileonmymac.textexpander
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.mac_assistive.install(app_id, enable=True) .B salt.modules.mac_assistive.install(app_id, enable=True, tries=3, wait=10)
Install a bundle ID or command as being allowed to use Install a bundle ID or command as being allowed to use
assistive access. assistive access.
.INDENT 7.0 .INDENT 7.0
@ -218207,6 +218550,12 @@ The bundle ID or command to install for assistive access.
.TP .TP
.B enabled .B enabled
Sets enabled or disabled status. Default is \fBTrue\fP\&. Sets enabled or disabled status. Default is \fBTrue\fP\&.
.TP
.B tries
How many times to try and write to a read\-only tcc. Default is \fBTrue\fP\&.
.TP
.B wait
Number of seconds to wait between tries. Default is \fB10\fP\&.
.UNINDENT .UNINDENT
.sp .sp
CLI Example: CLI Example:
@ -219107,7 +219456,7 @@ salt \(aq*\(aq keychain.get_default_keychain
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.modules.mac_keychain.get_friendly_name(cert, password) .B salt.modules.mac_keychain.get_friendly_name(cert, password, legacy=False)
Get the friendly name of the given certificate Get the friendly name of the given certificate
.INDENT 7.0 .INDENT 7.0
.TP .TP
@ -219120,6 +219469,9 @@ described for openssl command in the PASS PHRASE ARGUMENTS section
.sp .sp
Note: The password given here will show up as plaintext in the returned job Note: The password given here will show up as plaintext in the returned job
info. info.
.TP
.B legacy
Assume legacy format for certificate.
.UNINDENT .UNINDENT
.sp .sp
CLI Example: CLI Example:
@ -219129,6 +219481,8 @@ CLI Example:
.nf .nf
.ft C .ft C
salt \(aq*\(aq keychain.get_friendly_name /tmp/test.p12 test123 salt \(aq*\(aq keychain.get_friendly_name /tmp/test.p12 test123
salt \(aq*\(aq keychain.get_friendly_name /tmp/test.p12 test123 legacy=True
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -220993,7 +221347,8 @@ Get the date/time the account was created
\fBname\fP (\fI\%str\fP) \-\- The username of the account \fBname\fP (\fI\%str\fP) \-\- The username of the account
.TP .TP
.B Returns .B Returns
The date/time the account was created (yyyy\-mm\-dd hh:mm:ss) The date/time the account was created (yyyy\-mm\-dd hh:mm:ss) or 0 if
the value is not defined
.TP .TP
.B Return type .B Return type
\fI\%str\fP \fI\%str\fP
@ -221086,7 +221441,8 @@ Get the date/time the account was changed
\fBname\fP (\fI\%str\fP) \-\- The username of the account \fBname\fP (\fI\%str\fP) \-\- The username of the account
.TP .TP
.B Returns .B Returns
The date/time the account was modified (yyyy\-mm\-dd hh:mm:ss) The date/time the account was modified (yyyy\-mm\-dd hh:mm:ss) or 0
if the value is not defined
.TP .TP
.B Return type .B Return type
\fI\%str\fP \fI\%str\fP
@ -221117,10 +221473,11 @@ Get the number of failed login attempts
\fBname\fP (\fI\%str\fP) \-\- The username of the account \fBname\fP (\fI\%str\fP) \-\- The username of the account
.TP .TP
.B Returns .B Returns
The number of failed login attempts The number of failed login attempts. 0 may mean there are no failed
login attempts or the value is not defined
.TP .TP
.B Return type .B Return type
\fI\%int\fP \fI\%str\fP
.TP .TP
.B Raises .B Raises
CommandExecutionError on user not found or any other unknown error CommandExecutionError on user not found or any other unknown error
@ -221149,7 +221506,7 @@ Get the date/time of the last failed login attempt
.TP .TP
.B Returns .B Returns
The date/time of the last failed login attempt on this account The date/time of the last failed login attempt on this account
(yyyy\-mm\-dd hh:mm:ss) (yyyy\-mm\-dd hh:mm:ss) or 0 if the value is not defined
.TP .TP
.B Return type .B Return type
\fI\%str\fP \fI\%str\fP
@ -291579,7 +291936,8 @@ It exists as a more intuitive way of applying states.
.sp .sp
APPLYING ALL STATES CONFIGURED IN TOP.SLS (A.K.A. \fI\%HIGHSTATE\fP) APPLYING ALL STATES CONFIGURED IN TOP.SLS (A.K.A. \fI\%HIGHSTATE\fP)
.sp .sp
To apply all configured states, simply run \fBstate.apply\fP: To apply all configured states, simply run \fBstate.apply\fP with no SLS
targets, like so:
.INDENT 7.0 .INDENT 7.0
.INDENT 3.5 .INDENT 3.5
.sp .sp
@ -302346,7 +302704,7 @@ New in version 3004.
A transactional system, like \fI\%MicroOS\fP, can present some challenges A transactional system, like \fI\%MicroOS\fP, can present some challenges
when the user decided to manage it via Salt. when the user decided to manage it via Salt.
.sp .sp
MicroOS provide a read\-only rootfs and a tool, MicroOS provides a read\-only rootfs and a tool,
\fBtransactional\-update\fP, that takes care of the management of the \fBtransactional\-update\fP, that takes care of the management of the
system (updating, upgrading, installation or reboot, among others) in system (updating, upgrading, installation or reboot, among others) in
an atomic way. an atomic way.
@ -302473,7 +302831,7 @@ For example:
.sp .sp
.nf .nf
.ft C .ft C
transactional\-update \-\-continue \-\-drop\-if\-no\-change run zypper in apache2\(dq transactional\-update \-\-continue \-\-drop\-if\-no\-change run zypper in apache2
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -302591,11 +302949,11 @@ everything can be expressed inside a transaction (for example,
restarting a service inside transaction is not allowed). restarting a service inside transaction is not allowed).
.SS Two step for service restart .SS Two step for service restart
.sp .sp
In the \fBapache2\(ga example from the beginning we can observe the In the \fBapache2\fP example from the beginning we can observe the
biggest drawback. If the package \(ga\(gaapache2\fP is missing, the new biggest drawback. If the package \fBapache2\fP is missing, the new
module will create a new transaction, will execute \fBpkg.install\fP module will create a new transaction, will execute \fBpkg.install\fP
inside the transaction (creating the salt\-thin, moving it inside and inside the transaction (creating the salt\-thin, moving it inside and
delegating the execution to \fItransactional\-update\fP CLI as part of the delegating the execution to \fBtransactional\-update\fP CLI as part of the
full state). Inside the transaction we can do too the required full state). Inside the transaction we can do too the required
changes in \fB/etc\fP for adding the new \fBvhost\fP, and we can enable the changes in \fB/etc\fP for adding the new \fBvhost\fP, and we can enable the
service via systemctl inside the same transaction. service via systemctl inside the same transaction.
@ -302645,7 +303003,7 @@ this function, check \fIstate.apply_\fP documentation.
.TP .TP
.B activate_transaction .B activate_transaction
If at the end of the transaction there is a pending activation If at the end of the transaction there is a pending activation
(i.e there is a new snaphot in the system), a new reboot will (i.e there is a new snapshot in the system), a new reboot will
be scheduled (default False) be scheduled (default False)
.UNINDENT .UNINDENT
.sp .sp
@ -302707,7 +303065,7 @@ Salt execution module function
.TP .TP
.B activate_transaction .B activate_transaction
If at the end of the transaction there is a pending activation If at the end of the transaction there is a pending activation
(i.e there is a new snaphot in the system), a new reboot will (i.e there is a new snapshot in the system), a new reboot will
be scheduled (default False) be scheduled (default False)
.UNINDENT .UNINDENT
.sp .sp
@ -302877,15 +303235,15 @@ this function, check \fIstate.highstate\fP documentation.
.TP .TP
.B activate_transaction .B activate_transaction
If at the end of the transaction there is a pending activation If at the end of the transaction there is a pending activation
(i.e there is a new snaphot in the system), a new reboot will (i.e there is a new snapshot in the system), a new reboot will
be scheduled (default False) be scheduled (Default: False).
.TP .TP
.B queue .B queue
Instead of failing immediately when another state run is in progress, Instead of failing immediately when another state run is in progress,
queue the new state run to begin running once the other has finished. queue the new state run to begin running once the other has finished.
.sp .sp
This option starts a new thread for each queued state run, so use this This option starts a new thread for each queued state run, so use this
option sparingly. (Default: False) option sparingly (Default: False).
.UNINDENT .UNINDENT
.sp .sp
CLI Example: CLI Example:
@ -303245,8 +303603,8 @@ salt microos transactional_update rollback
.B salt.modules.transactional_update.run(command, self_update=False, snapshot=None) .B salt.modules.transactional_update.run(command, self_update=False, snapshot=None)
Run a command in a new snapshot Run a command in a new snapshot
.sp .sp
Execute the command inside a new snapshot. By default this snaphot Execute the command inside a new snapshot. By default this snapshot
will remain, but if \-\-drop\-if\-no\-chage is set, the new snapshot will remain, but if \-\-drop\-if\-no\-change is set, the new snapshot
will be dropped if there is no change in the file system. will be dropped if there is no change in the file system.
.INDENT 7.0 .INDENT 7.0
.TP .TP
@ -303289,15 +303647,15 @@ of keyword values is also supported.
.TP .TP
.B activate_transaction .B activate_transaction
If at the end of the transaction there is a pending activation If at the end of the transaction there is a pending activation
(i.e there is a new snaphot in the system), a new reboot will (i.e there is a new snapshot in the system), a new reboot will
be scheduled (default False) be scheduled (Default: False).
.TP .TP
.B queue .B queue
Instead of failing immediately when another state run is in progress, Instead of failing immediately when another state run is in progress,
queue the new state run to begin running once the other has finished. queue the new state run to begin running once the other has finished.
.sp .sp
This option starts a new thread for each queued state run, so use this This option starts a new thread for each queued state run, so use this
option sparingly. (Default: False) option sparingly (Default: False).
.UNINDENT .UNINDENT
.sp .sp
CLI Example: CLI Example:
@ -303337,15 +303695,15 @@ may be used to match multiple states.
.TP .TP
.B activate_transaction .B activate_transaction
If at the end of the transaction there is a pending activation If at the end of the transaction there is a pending activation
(i.e there is a new snaphot in the system), a new reboot will (i.e there is a new snapshot in the system), a new reboot will
be scheduled (default False) be scheduled (Default: False).
.TP .TP
.B queue .B queue
Instead of failing immediately when another state run is in progress, Instead of failing immediately when another state run is in progress,
queue the new state run to begin running once the other has finished. queue the new state run to begin running once the other has finished.
.sp .sp
This option starts a new thread for each queued state run, so use this This option starts a new thread for each queued state run, so use this
option sparingly. (Default: False) option sparingly (Default: False).
.UNINDENT .UNINDENT
.sp .sp
For a formal description of the possible parameters accepted in For a formal description of the possible parameters accepted in
@ -351598,6 +351956,27 @@ More info here:
\fI\%https://docs.aws.amazon.com/cli/latest/topic/s3\-config.html\fP \fI\%https://docs.aws.amazon.com/cli/latest/topic/s3\-config.html\fP
.UNINDENT .UNINDENT
.UNINDENT .UNINDENT
.sp
\fBNOTE:\fP
.INDENT 0.0
.INDENT 3.5
This fileserver back\-end will by default sync all buckets on every
fileserver update.
.sp
If you want files to be only populated in the cache when requested, you can
disable this in the master config:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
s3.s3_sync_on_update: False
.ft P
.fi
.UNINDENT
.UNINDENT
.UNINDENT
.UNINDENT
.SS salt.fileserver.svnfs .SS salt.fileserver.svnfs
.sp .sp
Subversion Fileserver Backend Subversion Fileserver Backend
@ -442393,7 +442772,7 @@ Ensure a registry value is removed. To remove a key use key_absent.
A string value representing the full path of the key to include the A string value representing the full path of the key to include the
HIVE, Key, and all Subkeys. For example: HIVE, Key, and all Subkeys. For example:
.sp .sp
\fBHKEY_LOCAL_MACHINE\e\eSOFTWARE\e\eSalt\fP \fBHKEY_LOCAL_MACHINE\eSOFTWARE\eSalt\fP
.sp .sp
Valid hive values include: Valid hive values include:
.INDENT 2.0 .INDENT 2.0
@ -442433,7 +442812,7 @@ CLI Example:
.sp .sp
.nf .nf
.ft C .ft C
\(aqHKEY_CURRENT_USER\e\eSOFTWARE\e\eSalt\(aq: \(aqHKEY_CURRENT_USER\eSOFTWARE\eSalt\(aq:
reg.absent reg.absent
\- vname: version \- vname: version
.ft P .ft P
@ -442536,7 +442915,7 @@ Ensure a registry key or value is present.
A string value representing the full path of the key to include the A string value representing the full path of the key to include the
HIVE, Key, and all Subkeys. For example: HIVE, Key, and all Subkeys. For example:
.sp .sp
\fBHKEY_LOCAL_MACHINE\e\eSOFTWARE\e\eSalt\fP \fBHKEY_LOCAL_MACHINE\eSOFTWARE\eSalt\fP
.sp .sp
Valid hive values include: Valid hive values include:
.INDENT 2.0 .INDENT 2.0
@ -442820,14 +443199,14 @@ A dictionary showing the results of the registry operation.
Example: Example:
.sp .sp
The following example will set the \fB(Default)\fP value for the The following example will set the \fB(Default)\fP value for the
\fBSOFTWARE\e\eSalt\fP key in the \fBHKEY_CURRENT_USER\fP hive to \fBSOFTWARE\eSalt\fP key in the \fBHKEY_CURRENT_USER\fP hive to
\fB2016.3.1\fP: \fB2016.3.1\fP:
.INDENT 7.0 .INDENT 7.0
.INDENT 3.5 .INDENT 3.5
.sp .sp
.nf .nf
.ft C .ft C
HKEY_CURRENT_USER\e\eSOFTWARE\e\eSalt: HKEY_CURRENT_USER\eSOFTWARE\eSalt:
reg.present: reg.present:
\- vdata: 2016.3.1 \- vdata: 2016.3.1
.ft P .ft P
@ -442838,14 +443217,14 @@ HKEY_CURRENT_USER\e\eSOFTWARE\e\eSalt:
Example: Example:
.sp .sp
The following example will set the value for the \fBversion\fP entry under The following example will set the value for the \fBversion\fP entry under
the \fBSOFTWARE\e\eSalt\fP key in the \fBHKEY_CURRENT_USER\fP hive to the \fBSOFTWARE\eSalt\fP key in the \fBHKEY_CURRENT_USER\fP hive to
\fB2016.3.1\fP\&. The value will be reflected in \fBWow6432Node\fP: \fB2016.3.1\fP\&. The value will be reflected in \fBWow6432Node\fP:
.INDENT 7.0 .INDENT 7.0
.INDENT 3.5 .INDENT 3.5
.sp .sp
.nf .nf
.ft C .ft C
HKEY_CURRENT_USER\e\eSOFTWARE\e\eSalt: HKEY_CURRENT_USER\eSOFTWARE\eSalt:
reg.present: reg.present:
\- vname: version \- vname: version
\- vdata: 2016.3.1 \- vdata: 2016.3.1
@ -442861,7 +443240,7 @@ In the above example the path is interpreted as follows:
.IP \(bu 2 .IP \(bu 2
\fBHKEY_CURRENT_USER\fP is the hive \fBHKEY_CURRENT_USER\fP is the hive
.IP \(bu 2 .IP \(bu 2
\fBSOFTWARE\e\eSalt\fP is the key \fBSOFTWARE\eSalt\fP is the key
.IP \(bu 2 .IP \(bu 2
\fBvname\fP is the value name (\(aqversion\(aq) that will be created under the key \fBvname\fP is the value name (\(aqversion\(aq) that will be created under the key
.IP \(bu 2 .IP \(bu 2
@ -457898,7 +458277,7 @@ installed2
.UNINDENT .UNINDENT
.INDENT 0.0 .INDENT 0.0
.TP .TP
.B salt.states.zcbuildout.installed(name, config=\(aqbuildout.cfg\(aq, quiet=False, parts=None, user=None, env=(), buildout_ver=None, test_release=False, distribute=None, new_st=None, offline=False, newest=False, python=\(aq/opt/actions\-runner/_work/salt\-priv/salt\-priv/.tools\-venvs/py3.10/docs/bin/python\(aq, debug=False, verbose=False, unless=None, onlyif=None, use_vt=False, loglevel=\(aqdebug\(aq, **kwargs) .B salt.states.zcbuildout.installed(name, config=\(aqbuildout.cfg\(aq, quiet=False, parts=None, user=None, env=(), buildout_ver=None, test_release=False, distribute=None, new_st=None, offline=False, newest=False, python=\(aq/opt/actions\-runner/_work/salt/salt/.tools\-venvs/py3.10/docs/bin/python\(aq, debug=False, verbose=False, unless=None, onlyif=None, use_vt=False, loglevel=\(aqdebug\(aq, **kwargs)
Install buildout in a specific directory Install buildout in a specific directory
.sp .sp
It is a thin wrapper to modules.buildout.buildout It is a thin wrapper to modules.buildout.buildout
@ -466917,7 +467296,7 @@ version of Python:
.sp .sp
.nf .nf
.ft C .ft C
pyenv install 3.7.0 pyenv install 3.9.18
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -466934,7 +467313,7 @@ new virtual environment with this command:
.sp .sp
.nf .nf
.ft C .ft C
pyenv virtualenv 3.7.0 salt pyenv virtualenv 3.9.18 salt
.ft P .ft P
.fi .fi
.UNINDENT .UNINDENT
@ -467208,8 +467587,8 @@ you\(aqll need to run 3.9 or earlier. For example:
.sp .sp
.nf .nf
.ft C .ft C
pyenv install 3.7.15 pyenv install 3.9.18
pyenv virtualenv 3.7.15 salt\-docs pyenv virtualenv 3.9.18 salt\-docs
echo \(aqsalt\-docs\(aq > .python\-version echo \(aqsalt\-docs\(aq > .python\-version
.ft P .ft P
.fi .fi
@ -467448,7 +467827,7 @@ meaningful and complete! \fITypically\fP the best tests for Salt are going
to be unit tests. Testing is \fI\%a whole topic on its to be unit tests. Testing is \fI\%a whole topic on its
own\fP, own\fP,
But you may also want to write functional or integration tests. You\(aqll But you may also want to write functional or integration tests. You\(aqll
find those in the \fBsalt/tests\fP directory. find those in the \fBtests/\fP directory.
.sp .sp
When you\(aqre thinking about tests to write, the most important thing to When you\(aqre thinking about tests to write, the most important thing to
keep in mind is, “What, exactly, am I testing?” When a test fails, you keep in mind is, “What, exactly, am I testing?” When a test fails, you
@ -478009,6 +478388,85 @@ Bump to \fBgitpython==3.1.41\fP due to \fI\%https://github.com/advisories/GHSA\-
Bump to \fBjinja2==3.1.3\fP due to \fI\%https://github.com/advisories/GHSA\-h5c8\-rqwp\-cp95\fP \fI\%#65830\fP Bump to \fBjinja2==3.1.3\fP due to \fI\%https://github.com/advisories/GHSA\-h5c8\-rqwp\-cp95\fP \fI\%#65830\fP
.UNINDENT .UNINDENT
.UNINDENT .UNINDENT
(release\-3006.7)=
.SS Salt 3006.7 release notes
.SS Changelog
.SS Deprecated
.INDENT 0.0
.IP \(bu 2
Deprecate and stop using \fBsalt.features\fP \fI\%#65951\fP
.UNINDENT
.SS Changed
.INDENT 0.0
.IP \(bu 2
Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008. \fI\%#65938\fP
.UNINDENT
.SS Fixed
.INDENT 0.0
.IP \(bu 2
Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in. \fI\%#34658\fP
.IP \(bu 2
Fixed an issue when keys didn\(aqt match because of line endings \fI\%#52289\fP
.IP \(bu 2
Corrected encoding of credentials for use with Artifactory \fI\%#63063\fP
.IP \(bu 2
Use \fBsend_multipart\fP instead of \fBsend\fP when sending multipart message. \fI\%#65018\fP
.IP \(bu 2
Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve \fI\%#65154\fP
.IP \(bu 2
Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error \fI\%#65193\fP
.IP \(bu 2
Upgrade relenv to 0.15.0 to fix namespaced packages installed by salt\-pip \fI\%#65433\fP
.IP \(bu 2
Fix regression of fileclient re\-use when rendering sls pillars and states \fI\%#65450\fP
.IP \(bu 2
Fixes the s3fs backend computing the local cache\(aqs files with the wrong hash type \fI\%#65589\fP
.IP \(bu 2
Fixed Salt\-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration \fI\%#65670\fP
.IP \(bu 2
Fix boto execution module loading \fI\%#65691\fP
.IP \(bu 2
Removed PR 65185 changes since incomplete solution \fI\%#65692\fP
.IP \(bu 2
catch only ret/ events not all returning events. \fI\%#65727\fP
.IP \(bu 2
Fix nonsensical time in fileclient timeout error. \fI\%#65752\fP
.IP \(bu 2
Fixes an issue when reading/modifying ini files that contain unicode characters \fI\%#65777\fP
.IP \(bu 2
added https proxy to the list of proxies so that requests knows what to do with https based proxies \fI\%#65824\fP
.IP \(bu 2
Ensure minion channels are closed on any master connection error. \fI\%#65932\fP
.IP \(bu 2
Fixed issue where Salt can\(aqt find libcrypto when pip installed from a cloned repo \fI\%#65954\fP
.IP \(bu 2
Fix RPM package systemd scriptlets to make RPM packages more universal \fI\%#65987\fP
.IP \(bu 2
Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed. \fI\%#65990\fP
.IP \(bu 2
Fix exceptions being set on futures that are already done in ZeroMQ transport \fI\%#66006\fP
.IP \(bu 2
Use hmac compare_digest method in hashutil module to mitigate potential timing attacks \fI\%#66041\fP
.IP \(bu 2
Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default. \fI\%#66061\fP
.IP \(bu 2
Upgrade relenv to 0.15.1 to fix debugpy support. \fI\%#66094\fP
.UNINDENT
.SS Security
.INDENT 0.0
.IP \(bu 2
Bump to \fBcryptography==42.0.0\fP due to \fI\%https://github.com/advisories/GHSA\-3ww4\-gg4f\-jr7f\fP
.sp
In the process, we were also required to update to \fBpyOpenSSL==24.0.0\fP \fI\%#66004\fP
.IP \(bu 2
Bump to \fBcryptography==42.0.3\fP due to \fI\%https://github.com/advisories/GHSA\-3ww4\-gg4f\-jr7f\fP \fI\%#66090\fP
.UNINDENT
.sp .sp
See \fI\%Install a release candidate\fP See \fI\%Install a release candidate\fP
for more information about installing an RC when one is available. for more information about installing an RC when one is available.
@ -478998,6 +479456,19 @@ Bump to \fIurllib3==1.26.17\fP or \fIurllib3==2.0.6\fP due to \fI\%https://githu
.IP \(bu 2 .IP \(bu 2
Bump to \fIgitpython==3.1.37\fP due to \fI\%https://github.com/advisories/GHSA\-cwvm\-v4w8\-q58c\fP (#65383) Bump to \fIgitpython==3.1.37\fP due to \fI\%https://github.com/advisories/GHSA\-cwvm\-v4w8\-q58c\fP (#65383)
.UNINDENT .UNINDENT
.SS Salt 3005.5 Release Notes
.sp
Version 3005.5 is a CVE security fix release for \fI\%3005\fP\&.
.SS Security
.INDENT 0.0
.IP \(bu 2
Fix CVE\-2024\-22231 by preventing directory traversal when creating syndic cache directory on the master.
.IP \(bu 2
Fix CVE\-2024\-22232 Prevent directory traversal attacks in the master\(aqs serve_file method.
.UNINDENT
.sp
These vulnerablities were discovered and reported by:
Yudi Zhao(Huawei Nebula Security Lab),Chenwei Jiang(Huawei Nebula Security Lab) (#565)
.SS Salt 3004 Release Notes \- Codename Silicon .SS Salt 3004 Release Notes \- Codename Silicon
.SS New Features .SS New Features
.SS Transactional System Support (MicroOS) .SS Transactional System Support (MicroOS)

View file

@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.. ..
.TH "SPM" "1" "Generated on January 26, 2024 at 11:57:28 AM UTC." "3006.6" "Salt" .TH "SPM" "1" "Generated on February 20, 2024 at 09:55:17 PM UTC." "3006.7" "Salt"
.SH NAME .SH NAME
spm \- Salt Package Manager Command spm \- Salt Package Manager Command
.sp .sp

View file

@ -0,0 +1,70 @@
(release-3006.7)=
# Salt 3006.7 release notes
<!---
Do not edit this file. This is auto generated.
Edit the templates in doc/topics/releases/templates/
for a given release.
-->
<!--
Add release specific details below
-->
<!--
Do not edit the changelog below.
This is auto generated.
-->
## Changelog
### Deprecated
- Deprecate and stop using ``salt.features`` [#65951](https://github.com/saltstack/salt/issues/65951)
### Changed
- Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008. [#65938](https://github.com/saltstack/salt/issues/65938)
### Fixed
- Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in. [#34658](https://github.com/saltstack/salt/issues/34658)
- Fixed an issue when keys didn't match because of line endings [#52289](https://github.com/saltstack/salt/issues/52289)
- Corrected encoding of credentials for use with Artifactory [#63063](https://github.com/saltstack/salt/issues/63063)
- Use `send_multipart` instead of `send` when sending multipart message. [#65018](https://github.com/saltstack/salt/issues/65018)
- Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve [#65154](https://github.com/saltstack/salt/issues/65154)
- Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error [#65193](https://github.com/saltstack/salt/issues/65193)
- Upgrade relenv to 0.15.0 to fix namespaced packages installed by salt-pip [#65433](https://github.com/saltstack/salt/issues/65433)
- Fix regression of fileclient re-use when rendering sls pillars and states [#65450](https://github.com/saltstack/salt/issues/65450)
- Fixes the s3fs backend computing the local cache's files with the wrong hash type [#65589](https://github.com/saltstack/salt/issues/65589)
- Fixed Salt-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration [#65670](https://github.com/saltstack/salt/issues/65670)
- Fix boto execution module loading [#65691](https://github.com/saltstack/salt/issues/65691)
- Removed PR 65185 changes since incomplete solution [#65692](https://github.com/saltstack/salt/issues/65692)
- catch only ret/ events not all returning events. [#65727](https://github.com/saltstack/salt/issues/65727)
- Fix nonsensical time in fileclient timeout error. [#65752](https://github.com/saltstack/salt/issues/65752)
- Fixes an issue when reading/modifying ini files that contain unicode characters [#65777](https://github.com/saltstack/salt/issues/65777)
- added https proxy to the list of proxies so that requests knows what to do with https based proxies [#65824](https://github.com/saltstack/salt/issues/65824)
- Ensure minion channels are closed on any master connection error. [#65932](https://github.com/saltstack/salt/issues/65932)
- Fixed issue where Salt can't find libcrypto when pip installed from a cloned repo [#65954](https://github.com/saltstack/salt/issues/65954)
- Fix RPM package systemd scriptlets to make RPM packages more universal [#65987](https://github.com/saltstack/salt/issues/65987)
- Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed. [#65990](https://github.com/saltstack/salt/issues/65990)
- Fix exceptions being set on futures that are already done in ZeroMQ transport [#66006](https://github.com/saltstack/salt/issues/66006)
- Use hmac compare_digest method in hashutil module to mitigate potential timing attacks [#66041](https://github.com/saltstack/salt/issues/66041)
- Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default. [#66061](https://github.com/saltstack/salt/issues/66061)
- Upgrade relenv to 0.15.1 to fix debugpy support. [#66094](https://github.com/saltstack/salt/issues/66094)
### Security
- Bump to ``cryptography==42.0.0`` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f
In the process, we were also required to update to ``pyOpenSSL==24.0.0`` [#66004](https://github.com/saltstack/salt/issues/66004)
- Bump to `cryptography==42.0.3` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f [#66090](https://github.com/saltstack/salt/issues/66090)

View file

@ -0,0 +1,14 @@
(release-3006.7)=
# Salt 3006.7 release notes{{ unreleased }}
{{ warning }}
<!--
Add release specific details below
-->
<!--
Do not edit the changelog below.
This is auto generated.
-->
## Changelog
{{ changelog }}

View file

@ -1,3 +1,57 @@
salt (3006.7) stable; urgency=medium
# Deprecated
* Deprecate and stop using ``salt.features`` [#65951](https://github.com/saltstack/salt/issues/65951)
# Changed
* Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008. [#65938](https://github.com/saltstack/salt/issues/65938)
# Fixed
* Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in. [#34658](https://github.com/saltstack/salt/issues/34658)
* Fixed an issue when keys didn't match because of line endings [#52289](https://github.com/saltstack/salt/issues/52289)
* Corrected encoding of credentials for use with Artifactory [#63063](https://github.com/saltstack/salt/issues/63063)
* Use `send_multipart` instead of `send` when sending multipart message. [#65018](https://github.com/saltstack/salt/issues/65018)
* Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve [#65154](https://github.com/saltstack/salt/issues/65154)
* Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error [#65193](https://github.com/saltstack/salt/issues/65193)
* Upgrade relenv to 0.15.0 to fix namespaced packages installed by salt-pip [#65433](https://github.com/saltstack/salt/issues/65433)
* Fix regression of fileclient re-use when rendering sls pillars and states [#65450](https://github.com/saltstack/salt/issues/65450)
* Fixes the s3fs backend computing the local cache's files with the wrong hash type [#65589](https://github.com/saltstack/salt/issues/65589)
* Fixed Salt-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration [#65670](https://github.com/saltstack/salt/issues/65670)
* Fix boto execution module loading [#65691](https://github.com/saltstack/salt/issues/65691)
* Removed PR 65185 changes since incomplete solution [#65692](https://github.com/saltstack/salt/issues/65692)
* catch only ret/ events not all returning events. [#65727](https://github.com/saltstack/salt/issues/65727)
* Fix nonsensical time in fileclient timeout error. [#65752](https://github.com/saltstack/salt/issues/65752)
* Fixes an issue when reading/modifying ini files that contain unicode characters [#65777](https://github.com/saltstack/salt/issues/65777)
* added https proxy to the list of proxies so that requests knows what to do with https based proxies [#65824](https://github.com/saltstack/salt/issues/65824)
* Ensure minion channels are closed on any master connection error. [#65932](https://github.com/saltstack/salt/issues/65932)
* Fixed issue where Salt can't find libcrypto when pip installed from a cloned repo [#65954](https://github.com/saltstack/salt/issues/65954)
* Fix RPM package systemd scriptlets to make RPM packages more universal [#65987](https://github.com/saltstack/salt/issues/65987)
* Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed. [#65990](https://github.com/saltstack/salt/issues/65990)
* Fix exceptions being set on futures that are already done in ZeroMQ transport [#66006](https://github.com/saltstack/salt/issues/66006)
* Use hmac compare_digest method in hashutil module to mitigate potential timing attacks [#66041](https://github.com/saltstack/salt/issues/66041)
* Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default. [#66061](https://github.com/saltstack/salt/issues/66061)
* Upgrade relenv to 0.15.1 to fix debugpy support. [#66094](https://github.com/saltstack/salt/issues/66094)
# Security
* Bump to ``cryptography==42.0.0`` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f
In the process, we were also required to update to ``pyOpenSSL==24.0.0`` [#66004](https://github.com/saltstack/salt/issues/66004)
* Bump to `cryptography==42.0.3` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f [#66090](https://github.com/saltstack/salt/issues/66090)
-- Salt Project Packaging <saltproject-packaging@vmware.com> Tue, 20 Feb 2024 21:54:35 +0000
salt (3006.6) stable; urgency=medium salt (3006.6) stable; urgency=medium

View file

@ -646,6 +646,57 @@ if [ $1 -ge 1 ] ; then
fi fi
%changelog %changelog
* Tue Feb 20 2024 Salt Project Packaging <saltproject-packaging@vmware.com> - 3006.7
# Deprecated
- Deprecate and stop using ``salt.features`` [#65951](https://github.com/saltstack/salt/issues/65951)
# Changed
- Change module search path priority, so Salt extensions can be overridden by syncable modules and module_dirs. You can switch back to the old logic by setting features.enable_deprecated_module_search_path_priority to true, but it will be removed in Salt 3008. [#65938](https://github.com/saltstack/salt/issues/65938)
# Fixed
- Fix an issue with mac_shadow that was causing a command execution error when
retrieving values that were not yet set. For example, retrieving last login
before the user had logged in. [#34658](https://github.com/saltstack/salt/issues/34658)
- Fixed an issue when keys didn't match because of line endings [#52289](https://github.com/saltstack/salt/issues/52289)
- Corrected encoding of credentials for use with Artifactory [#63063](https://github.com/saltstack/salt/issues/63063)
- Use `send_multipart` instead of `send` when sending multipart message. [#65018](https://github.com/saltstack/salt/issues/65018)
- Fix an issue where the minion would crash on Windows if some of the grains
failed to resolve [#65154](https://github.com/saltstack/salt/issues/65154)
- Fix issue with openscap when the error was outside the expected scope. It now
returns failed with the error code and the error [#65193](https://github.com/saltstack/salt/issues/65193)
- Upgrade relenv to 0.15.0 to fix namespaced packages installed by salt-pip [#65433](https://github.com/saltstack/salt/issues/65433)
- Fix regression of fileclient re-use when rendering sls pillars and states [#65450](https://github.com/saltstack/salt/issues/65450)
- Fixes the s3fs backend computing the local cache's files with the wrong hash type [#65589](https://github.com/saltstack/salt/issues/65589)
- Fixed Salt-SSH pillar rendering and state rendering with nested SSH calls when called via saltutil.cmd or in an orchestration [#65670](https://github.com/saltstack/salt/issues/65670)
- Fix boto execution module loading [#65691](https://github.com/saltstack/salt/issues/65691)
- Removed PR 65185 changes since incomplete solution [#65692](https://github.com/saltstack/salt/issues/65692)
- catch only ret/ events not all returning events. [#65727](https://github.com/saltstack/salt/issues/65727)
- Fix nonsensical time in fileclient timeout error. [#65752](https://github.com/saltstack/salt/issues/65752)
- Fixes an issue when reading/modifying ini files that contain unicode characters [#65777](https://github.com/saltstack/salt/issues/65777)
- added https proxy to the list of proxies so that requests knows what to do with https based proxies [#65824](https://github.com/saltstack/salt/issues/65824)
- Ensure minion channels are closed on any master connection error. [#65932](https://github.com/saltstack/salt/issues/65932)
- Fixed issue where Salt can't find libcrypto when pip installed from a cloned repo [#65954](https://github.com/saltstack/salt/issues/65954)
- Fix RPM package systemd scriptlets to make RPM packages more universal [#65987](https://github.com/saltstack/salt/issues/65987)
- Fixed an issue where fileclient requests during Pillar rendering cause
fileserver backends to be needlessly refreshed. [#65990](https://github.com/saltstack/salt/issues/65990)
- Fix exceptions being set on futures that are already done in ZeroMQ transport [#66006](https://github.com/saltstack/salt/issues/66006)
- Use hmac compare_digest method in hashutil module to mitigate potential timing attacks [#66041](https://github.com/saltstack/salt/issues/66041)
- Fix request channel default timeout regression. In 3006.5 it was changed from
60 to 30 and is now set back to 60 by default. [#66061](https://github.com/saltstack/salt/issues/66061)
- Upgrade relenv to 0.15.1 to fix debugpy support. [#66094](https://github.com/saltstack/salt/issues/66094)
# Security
- Bump to ``cryptography==42.0.0`` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f
In the process, we were also required to update to ``pyOpenSSL==24.0.0`` [#66004](https://github.com/saltstack/salt/issues/66004)
- Bump to `cryptography==42.0.3` due to https://github.com/advisories/GHSA-3ww4-gg4f-jr7f [#66090](https://github.com/saltstack/salt/issues/66090)
* Fri Jan 26 2024 Salt Project Packaging <saltproject-packaging@vmware.com> - 3006.6 * Fri Jan 26 2024 Salt Project Packaging <saltproject-packaging@vmware.com> - 3006.6
# Changed # Changed