mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Merge branch 'master' into fix-pip.list-local-packages
This commit is contained in:
commit
54956c94e5
196 changed files with 3768 additions and 3222 deletions
32
.github/workflows/ci.yml
vendored
32
.github/workflows/ci.yml
vendored
|
@ -3,6 +3,9 @@ name: CI
|
|||
on:
|
||||
push: {}
|
||||
pull_request: {}
|
||||
schedule:
|
||||
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onschedule
|
||||
- cron: '0 */8 * * *' # Run every 8 hours
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
testrun-type:
|
||||
|
@ -51,11 +54,29 @@ jobs:
|
|||
repo:
|
||||
- added|modified:
|
||||
- '**'
|
||||
doc-requirements:
|
||||
- added|modified: &doc_requirements
|
||||
- requirements/static/ci/py3.*/docs.txt
|
||||
lint-requirements:
|
||||
- added|modified: &lint_requirements
|
||||
- requirements/static/ci/py3.*/lint.txt
|
||||
test_requirements:
|
||||
- added|modified: &test_requirements
|
||||
- requirements/static/ci/py3.*/darwin.txt
|
||||
- requirements/static/ci/py3.*/linux.txt
|
||||
- requirements/static/ci/py3.*/freebsd.txt
|
||||
- requirements/static/ci/py3.*/windows.txt
|
||||
- requirements/static/ci/py3.*/darwin-crypto.txt
|
||||
- requirements/static/ci/py3.*/linux-crypto.txt
|
||||
- requirements/static/ci/py3.*/freebsd-crypto.txt
|
||||
- requirements/static/ci/py3.*/windows-crypto.txt
|
||||
deleted:
|
||||
- deleted:
|
||||
- '**'
|
||||
docs:
|
||||
- doc/**
|
||||
- added|modified:
|
||||
- doc/**
|
||||
- *doc_requirements
|
||||
salt:
|
||||
- added|modified: &salt_added_modified
|
||||
- setup.py
|
||||
|
@ -66,9 +87,10 @@ jobs:
|
|||
tests:
|
||||
- added|modified: &tests_added_modified
|
||||
- tests/**/*.py
|
||||
pylintrc:
|
||||
lint:
|
||||
- added|modified:
|
||||
- .pylintrc
|
||||
- *lint_requirements
|
||||
testrun:
|
||||
- added|modified:
|
||||
- *salt_added_modified
|
||||
|
@ -117,12 +139,12 @@ jobs:
|
|||
echo '${{ steps.define-testrun.outputs.testrun }}' | jq -C '.'
|
||||
|
||||
- name: Check Contents of generated testrun-changed-files.txt
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }}
|
||||
run:
|
||||
cat testrun-changed-files.txt
|
||||
cat testrun-changed-files.txt || true
|
||||
|
||||
- name: Upload testrun-changed-files.txt
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: testrun-changed-files.txt
|
||||
|
|
4
.github/workflows/docs-action.yml
vendored
4
.github/workflows/docs-action.yml
vendored
|
@ -15,7 +15,7 @@ jobs:
|
|||
if: ${{ github.event_name == 'push' || fromJSON(inputs.changed-files)['docs'] || fromJSON(inputs.changed-files)['salt'] }}
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
- name: Install System Deps
|
||||
|
@ -75,7 +75,7 @@ jobs:
|
|||
if: ${{ github.event_name == 'push' || fromJSON(inputs.changed-files)['docs'] }}
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
- name: Install System Deps
|
||||
|
|
16
.github/workflows/lint-action.yml
vendored
16
.github/workflows/lint-action.yml
vendored
|
@ -12,10 +12,10 @@ jobs:
|
|||
Salt:
|
||||
name: Lint Salt's Source Code
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ fromJSON(inputs.changed-files)['salt'] || fromJSON(inputs.changed-files)['pylintrc'] }}
|
||||
if: ${{ fromJSON(inputs.changed-files)['salt'] || fromJSON(inputs.changed-files)['lint'] }}
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
- name: Install System Deps
|
||||
|
@ -41,14 +41,14 @@ jobs:
|
|||
nox --install-only --forcecolor -e lint-salt
|
||||
|
||||
- name: Lint Changed Files
|
||||
if: github.event_name == 'pull_request' && fromJSON(inputs.changed-files)['salt'] && ! fromJSON(inputs.changed-files)['pylintrc']
|
||||
if: github.event_name == 'pull_request' && fromJSON(inputs.changed-files)['salt'] && ! fromJSON(inputs.changed-files)['lint']
|
||||
env:
|
||||
SKIP_REQUIREMENTS_INSTALL: YES
|
||||
run: |
|
||||
nox --forcecolor -e lint-salt -- ${{ join(fromJSON(inputs.changed-files)['salt_files'], ' ') }}
|
||||
|
||||
- name: Lint ALL Files
|
||||
if: github.event_name != 'pull_request' || fromJSON(inputs.changed-files)['pylintrc']
|
||||
if: github.event_name != 'pull_request' || fromJSON(inputs.changed-files)['lint']
|
||||
env:
|
||||
SKIP_REQUIREMENTS_INSTALL: YES
|
||||
run: |
|
||||
|
@ -71,10 +71,10 @@ jobs:
|
|||
Tests:
|
||||
name: Lint Salt's Test Suite
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ fromJSON(inputs.changed-files)['tests'] || fromJSON(inputs.changed-files)['pylintrc'] }}
|
||||
if: ${{ fromJSON(inputs.changed-files)['tests'] || fromJSON(inputs.changed-files)['lint'] }}
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
- name: Install System Deps
|
||||
|
@ -100,14 +100,14 @@ jobs:
|
|||
nox --install-only --forcecolor -e lint-tests
|
||||
|
||||
- name: Lint Changed Files
|
||||
if: github.event_name == 'pull_request' && fromJSON(inputs.changed-files)['tests'] && ! fromJSON(inputs.changed-files)['pylintrc']
|
||||
if: github.event_name == 'pull_request' && fromJSON(inputs.changed-files)['tests'] && ! fromJSON(inputs.changed-files)['lint']
|
||||
env:
|
||||
SKIP_REQUIREMENTS_INSTALL: YES
|
||||
run: |
|
||||
nox --forcecolor -e lint-tests -- ${{ join(fromJSON(inputs.changed-files)['tests_files'], ' ') }}
|
||||
|
||||
- name: Lint ALL Files
|
||||
if: github.event_name != 'pull_request' || fromJSON(inputs.changed-files)['pylintrc']
|
||||
if: github.event_name != 'pull_request' || fromJSON(inputs.changed-files)['lint']
|
||||
env:
|
||||
SKIP_REQUIREMENTS_INSTALL: YES
|
||||
run: |
|
||||
|
|
6
.github/workflows/release.yml
vendored
6
.github/workflows/release.yml
vendored
|
@ -27,7 +27,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
|
||||
|
@ -93,7 +93,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
|
||||
|
@ -159,7 +159,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
container:
|
||||
image: python:3.8.6-slim-buster
|
||||
image: python:3.8-slim-buster
|
||||
|
||||
steps:
|
||||
- name: Install System Deps
|
||||
|
|
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -70,8 +70,8 @@ tags
|
|||
*.mo
|
||||
.doctrees
|
||||
|
||||
# Allow a user to set their own _version.py for testing
|
||||
_version.py
|
||||
# Allow a user to set their own _version.txt for testing
|
||||
_version.txt
|
||||
|
||||
# Ignore auto generated _syspaths.py file
|
||||
_syspaths.py
|
||||
|
|
|
@ -8,18 +8,18 @@ repos:
|
|||
hooks:
|
||||
|
||||
# ----- Packaging Requirements ------------------------------------------------------------------------------------>
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-pkg-linux-3.6-zmq-requirements
|
||||
## name: Linux Packaging Py3.6 ZeroMQ Requirements
|
||||
## files: ^requirements/((base|zeromq|crypto)\.txt|static/pkg/(linux\.in|py3\.6/linux\.txt))$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --include=requirements/base.txt
|
||||
## - --include=requirements/zeromq.txt
|
||||
## - requirements/static/pkg/linux.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-pkg-linux-3.6-zmq-requirements
|
||||
name: Linux Packaging Py3.6 ZeroMQ Requirements
|
||||
files: ^requirements/((base|zeromq|crypto)\.txt|static/pkg/(linux\.in|py3\.6/linux\.txt))$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --include=requirements/base.txt
|
||||
- --include=requirements/zeromq.txt
|
||||
- requirements/static/pkg/linux.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-pkg-linux-3.7-zmq-requirements
|
||||
|
@ -200,22 +200,22 @@ repos:
|
|||
# <---- Packaging Requirements -------------------------------------------------------------------------------------
|
||||
|
||||
# ----- CI Requirements ------------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-linux-3.6-zmq-requirements
|
||||
## name: Linux CI Py3.6 ZeroMQ Requirements
|
||||
## files: ^requirements/((base|zeromq|pytest)\.txt|static/((ci|pkg)/(linux\.in|common\.in)|pkg/py3\.6/linux\.txt))$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --include=requirements/base.txt
|
||||
## - --include=requirements/zeromq.txt
|
||||
## - --include=requirements/pytest.txt
|
||||
## - --include=requirements/static/pkg/linux.in
|
||||
## - --include=requirements/static/ci/common.in
|
||||
## - --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/linux.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-linux-3.6-zmq-requirements
|
||||
name: Linux CI Py3.6 ZeroMQ Requirements
|
||||
files: ^requirements/((base|zeromq|pytest)\.txt|static/((ci|pkg)/(linux\.in|common\.in)|pkg/py3\.6/linux\.txt))$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --include=requirements/base.txt
|
||||
- --include=requirements/zeromq.txt
|
||||
- --include=requirements/pytest.txt
|
||||
- --include=requirements/static/pkg/linux.in
|
||||
- --include=requirements/static/ci/common.in
|
||||
- --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt
|
||||
- requirements/static/ci/linux.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-linux-3.7-zmq-requirements
|
||||
|
@ -285,18 +285,18 @@ repos:
|
|||
- --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt
|
||||
- requirements/static/ci/linux.in
|
||||
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-linux-crypto-3.6-requirements
|
||||
## name: Linux CI Py3.6 Crypto Requirements
|
||||
## files: ^requirements/(crypto\.txt|static/ci/(crypto\.in|py3\.6/linux-crypto\.txt))$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --out-prefix=linux
|
||||
## - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/crypto.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-linux-crypto-3.6-requirements
|
||||
name: Linux CI Py3.6 Crypto Requirements
|
||||
files: ^requirements/(crypto\.txt|static/ci/(crypto\.in|py3\.6/linux-crypto\.txt))$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --out-prefix=linux
|
||||
- --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
- requirements/static/ci/crypto.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-linux-crypto-3.7-requirements
|
||||
|
@ -651,21 +651,21 @@ repos:
|
|||
|
||||
|
||||
# ----- Cloud CI Requirements ------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-cloud-3.6-requirements
|
||||
## name: Cloud CI Py3.6 Requirements
|
||||
## files: ^requirements/((base|zeromq|pytest)\.txt|static/(pkg/linux\.in|ci/((cloud|common)\.in|py3\.6/cloud\.txt)))$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --include=requirements/base.txt
|
||||
## - --include=requirements/zeromq.txt
|
||||
## - --include=requirements/pytest.txt
|
||||
## - --include=requirements/static/pkg/linux.in
|
||||
## - --include=requirements/static/ci/common.in
|
||||
## - --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/cloud.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-cloud-3.6-requirements
|
||||
name: Cloud CI Py3.6 Requirements
|
||||
files: ^requirements/((base|zeromq|pytest)\.txt|static/(pkg/linux\.in|ci/((cloud|common)\.in|py3\.6/cloud\.txt)))$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --include=requirements/base.txt
|
||||
- --include=requirements/zeromq.txt
|
||||
- --include=requirements/pytest.txt
|
||||
- --include=requirements/static/pkg/linux.in
|
||||
- --include=requirements/static/ci/common.in
|
||||
- --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt
|
||||
- requirements/static/ci/cloud.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-cloud-3.7-requirements
|
||||
|
@ -733,22 +733,22 @@ repos:
|
|||
# <---- Cloud CI Requirements --------------------------------------------------------------------------------------
|
||||
|
||||
# ----- Doc CI Requirements --------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-doc-requirements
|
||||
## name: Docs CI Py3.6 Requirements
|
||||
## files: ^requirements/((base|zeromq|pytest)\.txt|static/ci/(docs|common|linux)\.in|static/pkg/linux\.in|static/pkg/.*/linux\.txt)$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --include=requirements/base.txt
|
||||
## - --include=requirements/zeromq.txt
|
||||
## - --include=requirements/static/pkg/linux.in
|
||||
## - --include=requirements/static/ci/linux.in
|
||||
## - --include=requirements/static/ci/common.in
|
||||
## - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/docs.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-doc-requirements
|
||||
name: Docs CI Py3.6 Requirements
|
||||
files: ^requirements/((base|zeromq|pytest)\.txt|static/ci/(docs|common|linux)\.in|static/pkg/linux\.in|static/pkg/.*/linux\.txt)$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --include=requirements/base.txt
|
||||
- --include=requirements/zeromq.txt
|
||||
- --include=requirements/static/pkg/linux.in
|
||||
- --include=requirements/static/ci/linux.in
|
||||
- --include=requirements/static/ci/common.in
|
||||
- --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
- requirements/static/ci/docs.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-doc-requirements
|
||||
|
@ -821,22 +821,22 @@ repos:
|
|||
# <---- Doc CI Requirements ----------------------------------------------------------------------------------------
|
||||
|
||||
# ----- Lint CI Requirements -------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-lint-3.6-requirements
|
||||
## name: Lint CI Py3.6 Requirements
|
||||
## files: ^requirements/((base|zeromq)\.txt|static/(pkg/linux\.in|ci/(linux\.in|common\.in|lint\.in|py3\.6/linux\.txt)))$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --include=requirements/base.txt
|
||||
## - --include=requirements/zeromq.txt
|
||||
## - --include=requirements/static/pkg/linux.in
|
||||
## - --include=requirements/static/ci/linux.in
|
||||
## - --include=requirements/static/ci/common.in
|
||||
## - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/lint.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-lint-3.6-requirements
|
||||
name: Lint CI Py3.6 Requirements
|
||||
files: ^requirements/((base|zeromq)\.txt|static/(pkg/linux\.in|ci/(linux\.in|common\.in|lint\.in|py3\.6/linux\.txt)))$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --include=requirements/base.txt
|
||||
- --include=requirements/zeromq.txt
|
||||
- --include=requirements/static/pkg/linux.in
|
||||
- --include=requirements/static/ci/linux.in
|
||||
- --include=requirements/static/ci/common.in
|
||||
- --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
- requirements/static/ci/lint.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-lint-3.7-requirements
|
||||
|
@ -909,17 +909,17 @@ repos:
|
|||
# <---- Lint CI Requirements ---------------------------------------------------------------------------------------
|
||||
|
||||
# ----- Changelog ------------------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-changelog-3.6-requirements
|
||||
## name: Changelog CI Py3.6 Requirements
|
||||
## files: ^requirements/static/ci/(changelog\.in|py3\.6/(changelog|linux)\.txt)$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --platform=linux
|
||||
## - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/changelog.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-changelog-3.6-requirements
|
||||
name: Changelog CI Py3.6 Requirements
|
||||
files: ^requirements/static/ci/(changelog\.in|py3\.6/(changelog|linux)\.txt)$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --platform=linux
|
||||
- --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
- requirements/static/ci/changelog.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-changelog-3.7-requirements
|
||||
|
@ -971,16 +971,16 @@ repos:
|
|||
# <---- Changelog --------------------------------------------------------------------------------------------------
|
||||
|
||||
# ----- Invoke ---------------------------------------------------------------------------------------------------->
|
||||
## - id: pip-tools-compile
|
||||
## alias: compile-ci-invoke-3.6-requirements
|
||||
## name: Linux CI Py3.6 Invoke Requirements
|
||||
## files: ^requirements/static/ci/(invoke\.in|py3.6/(invoke|linux)\.txt)$
|
||||
## pass_filenames: false
|
||||
## args:
|
||||
## - -v
|
||||
## - --py-version=3.6
|
||||
## - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
## - requirements/static/ci/invoke.in
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-invoke-3.6-requirements
|
||||
name: Linux CI Py3.6 Invoke Requirements
|
||||
files: ^requirements/static/ci/(invoke\.in|py3.6/(invoke|linux)\.txt)$
|
||||
pass_filenames: false
|
||||
args:
|
||||
- -v
|
||||
- --py-version=3.6
|
||||
- --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt
|
||||
- requirements/static/ci/invoke.in
|
||||
|
||||
- id: pip-tools-compile
|
||||
alias: compile-ci-invoke-3.7-requirements
|
||||
|
@ -1186,6 +1186,8 @@ repos:
|
|||
- distro==1.7.0
|
||||
- jinja2==3.0.3
|
||||
- msgpack==1.0.3
|
||||
- packaging
|
||||
- looseversion
|
||||
|
||||
- repo: https://github.com/saltstack/invoke-pre-commit
|
||||
rev: v1.9.0
|
||||
|
@ -1203,6 +1205,8 @@ repos:
|
|||
- distro==1.7.0
|
||||
- jinja2==3.0.3
|
||||
- msgpack==1.0.3
|
||||
- packaging
|
||||
- looseversion
|
||||
|
||||
- repo: https://github.com/saltstack/invoke-pre-commit
|
||||
rev: v1.9.0
|
||||
|
@ -1224,6 +1228,8 @@ repos:
|
|||
- distro==1.7.0
|
||||
- jinja2==3.0.3
|
||||
- msgpack==1.0.3
|
||||
- packaging
|
||||
- looseversion
|
||||
|
||||
- repo: https://github.com/saltstack/invoke-pre-commit
|
||||
rev: v1.9.0
|
||||
|
@ -1245,6 +1251,8 @@ repos:
|
|||
- distro==1.7.0
|
||||
- jinja2==3.0.3
|
||||
- msgpack==1.0.3
|
||||
- packaging
|
||||
- looseversion
|
||||
|
||||
- repo: https://github.com/saltstack/invoke-pre-commit
|
||||
rev: v1.9.0
|
||||
|
@ -1268,6 +1276,8 @@ repos:
|
|||
- distro==1.7.0
|
||||
- jinja2==3.0.3
|
||||
- msgpack==1.0.3
|
||||
- packaging
|
||||
- looseversion
|
||||
|
||||
- repo: https://github.com/pre-commit/mirrors-mypy
|
||||
rev: v0.971
|
||||
|
|
|
@ -696,7 +696,8 @@ allowed-3rd-party-modules=msgpack,
|
|||
tempfile,
|
||||
fnmatch,
|
||||
ptscripts,
|
||||
packaging
|
||||
packaging,
|
||||
looseversion
|
||||
|
||||
[EXCEPTIONS]
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@ recursive-include conf *
|
|||
recursive-include pkg *
|
||||
recursive-include salt *.jinja
|
||||
recursive-include templates *
|
||||
include salt/_version.txt
|
||||
include salt/templates/git/*
|
||||
include salt/templates/lxc/*
|
||||
include salt/utils/pyinstaller/rthooks.dat
|
||||
|
|
1
changelog/31468.added
Normal file
1
changelog/31468.added
Normal file
|
@ -0,0 +1 @@
|
|||
Allow users to enable 'queue=True' for all state runs via config file
|
1
changelog/62185.fixed
Normal file
1
changelog/62185.fixed
Normal file
|
@ -0,0 +1 @@
|
|||
Restored Salt's DeprecationWarnings
|
1
changelog/63315.added
Normal file
1
changelog/63315.added
Normal file
|
@ -0,0 +1 @@
|
|||
Added deprecation_warning test state for ensuring that deprecation warnings are correctly emitted.
|
1
changelog/63356.added
Normal file
1
changelog/63356.added
Normal file
|
@ -0,0 +1 @@
|
|||
Allow max queue size setting for state runs to prevent performance problems from queue growth
|
1
changelog/63383.changed
Normal file
1
changelog/63383.changed
Normal file
|
@ -0,0 +1 @@
|
|||
Stop relying on `salt/_version.py` to write Salt's version. Instead use `salt/_version.txt` which only contains the version string.
|
1
changelog/63383.deprecated
Normal file
1
changelog/63383.deprecated
Normal file
|
@ -0,0 +1 @@
|
|||
`salt.utils.version.StrictVersion` is now deprecated and it's use should be replaced with `salt.utils.version.Version`.
|
10
conf/minion
10
conf/minion
|
@ -591,6 +591,16 @@
|
|||
#
|
||||
#state_aggregate: False
|
||||
|
||||
# Instead of failing immediately when another state run is in progress, a value
|
||||
# of True will queue the new state run to begin running once the other has
|
||||
# finished. This option starts a new thread for each queued state run, so use
|
||||
# this option sparingly. Additionally, it can be set to an integer representing
|
||||
# the maximum queue size which can be attained before the state runs will fail
|
||||
# to be queued. This can prevent runaway conditions where new threads are
|
||||
# started until system performance is hampered.
|
||||
#
|
||||
#state_queue: False
|
||||
|
||||
# Disable requisites during state runs by specifying a single requisite
|
||||
# or a list of requisites to disable.
|
||||
#
|
||||
|
|
|
@ -2274,6 +2274,31 @@ aggregate just those types.
|
|||
state_aggregate:
|
||||
- pkg
|
||||
|
||||
.. conf_minion:: state_queue
|
||||
|
||||
``state_queue``
|
||||
---------------
|
||||
|
||||
Default: ``False``
|
||||
|
||||
Instead of failing immediately when another state run is in progress, a value
|
||||
of ``True`` will queue the new state run to begin running once the other has
|
||||
finished. This option starts a new thread for each queued state run, so use
|
||||
this option sparingly.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
state_queue: True
|
||||
|
||||
Additionally, it can be set to an integer representing the maximum queue size
|
||||
which can be attained before the state runs will fail to be queued. This can
|
||||
prevent runaway conditions where new threads are started until system
|
||||
performance is hampered.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
state_queue: 2
|
||||
|
||||
.. conf_minion:: state_verbose
|
||||
|
||||
``state_verbose``
|
||||
|
|
|
@ -55,6 +55,5 @@ the :command:`salt` command.
|
|||
|
||||
.. toctree::
|
||||
|
||||
../tutorials/http
|
||||
writing
|
||||
|
||||
|
|
|
@ -41,9 +41,10 @@ $SCRIPT_DIR = (Get-ChildItem "$($myInvocation.MyCommand.Definition)").Direct
|
|||
$BUILD_DIR = "$SCRIPT_DIR\buildenv"
|
||||
$PREREQ_DIR = "$SCRIPT_DIR\prereqs"
|
||||
$SCRIPTS_DIR = "$BUILD_DIR\Scripts"
|
||||
$PYTHON_BIN = "$SCRIPTS_DIR\python.exe"
|
||||
$BUILD_SALT_DIR = "$BUILD_DIR\Lib\site-packages\salt"
|
||||
$BUILD_CONF_DIR = "$BUILD_DIR\configs"
|
||||
$SITE_PKGS_DIR = "$BUILD_DIR\Lib\site-packages"
|
||||
$BUILD_SALT_DIR = "$SITE_PKGS_DIR\salt"
|
||||
$PYTHON_BIN = "$SCRIPTS_DIR\python.exe"
|
||||
$PY_VERSION = [Version]((Get-Command $PYTHON_BIN).FileVersionInfo.ProductVersion)
|
||||
$PY_VERSION = "$($PY_VERSION.Major).$($PY_VERSION.Minor)"
|
||||
$ARCH = $(. $PYTHON_BIN -c "import platform; print(platform.architecture()[0])")
|
||||
|
@ -181,6 +182,53 @@ $binaries | ForEach-Object {
|
|||
}
|
||||
Write-Result "Success" -ForegroundColor Green
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Remove pywin32 components not needed by Salt
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
$directories = "adodbapi",
|
||||
"isapi",
|
||||
"pythonwin",
|
||||
"win32\demos"
|
||||
$directories | ForEach-Object {
|
||||
if ( Test-Path -Path "$SITE_PKGS_DIR\$_" ) {
|
||||
Write-Host "Removing $_ directory: " -NoNewline
|
||||
Remove-Item -Path "$SITE_PKGS_DIR\$_" -Recurse | Out-Null
|
||||
if ( ! (Test-Path -Path "$SITE_PKGS_DIR\$_") ) {
|
||||
Write-Result "Success" -ForegroundColor Green
|
||||
} else {
|
||||
Write-Result "Failed" -ForegroundColor Red
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Remove pywin32 components not needed by Salt
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
$directories = "cheroot\test",
|
||||
"cherrypy\test",
|
||||
"gitdb\test",
|
||||
"psutil\tests",
|
||||
"smmap\test",
|
||||
"tempora\tests",
|
||||
"win32\test",
|
||||
"win32com\test",
|
||||
"zmq\tests"
|
||||
$directories | ForEach-Object {
|
||||
if ( Test-Path -Path "$SITE_PKGS_DIR\$_" ) {
|
||||
Write-Host "Removing $_ directory: " -NoNewline
|
||||
Remove-Item -Path "$SITE_PKGS_DIR\$_" -Recurse | Out-Null
|
||||
if ( ! (Test-Path -Path "$SITE_PKGS_DIR\$_") ) {
|
||||
Write-Result "Success" -ForegroundColor Green
|
||||
} else {
|
||||
Write-Result "Failed" -ForegroundColor Red
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Remove Non-Windows Execution Modules
|
||||
#-------------------------------------------------------------------------------
|
||||
|
|
|
@ -6,6 +6,7 @@ MarkupSafe
|
|||
requests>=1.0.0
|
||||
distro>=1.0.1
|
||||
psutil>=5.0.0
|
||||
|
||||
packaging>=21.3
|
||||
looseversion
|
||||
# We need contextvars for salt-ssh
|
||||
contextvars
|
||||
|
|
|
@ -485,6 +485,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -622,7 +624,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -486,6 +486,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
linode-python==1.1.1
|
||||
# via -r requirements/darwin.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -621,7 +623,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
|
|
@ -492,6 +492,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -622,6 +624,7 @@ oscrypto==1.2.1
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# sphinx
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -483,6 +483,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -616,7 +618,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -486,6 +486,8 @@ lazy-object-proxy==1.4.3
|
|||
# via astroid
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -619,7 +621,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via ansible-core
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -500,6 +500,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -631,6 +633,7 @@ oscrypto==1.2.0
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -158,6 +158,8 @@ keyring==5.7.1
|
|||
# via -r requirements/static/ci/common.in
|
||||
kubernetes==3.0.0
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -192,7 +194,9 @@ multidict==6.0.2
|
|||
ntlm-auth==1.5.0
|
||||
# via requests-ntlm
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
passlib[bcrypt]==1.7.4
|
||||
# via -r requirements/static/ci/common.in
|
||||
patch==1.16
|
||||
|
|
|
@ -502,6 +502,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.3
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -641,7 +643,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
@ -687,7 +691,7 @@ pyopenssl==20.0.1
|
|||
# via
|
||||
# -r requirements/static/pkg/linux.in
|
||||
# etcd3-py
|
||||
pyparsing==3.0.9
|
||||
pyparsing==3.0.6
|
||||
# via
|
||||
# junos-eznc
|
||||
# packaging
|
||||
|
|
|
@ -511,6 +511,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.3
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -643,6 +645,7 @@ oscrypto==1.2.1
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# sphinx
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
@ -691,7 +694,7 @@ pyopenssl==19.1.0
|
|||
# via
|
||||
# -r requirements/static/pkg/linux.in
|
||||
# etcd3-py
|
||||
pyparsing==3.0.9
|
||||
pyparsing==3.0.6
|
||||
# via
|
||||
# junos-eznc
|
||||
# packaging
|
||||
|
|
|
@ -507,6 +507,8 @@ lazy-object-proxy==1.4.3
|
|||
# via astroid
|
||||
libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.3
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -642,7 +644,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via ansible-core
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
@ -693,7 +697,7 @@ pyopenssl==20.0.1
|
|||
# via
|
||||
# -r requirements/static/pkg/linux.in
|
||||
# etcd3-py
|
||||
pyparsing==3.0.9
|
||||
pyparsing==3.0.6
|
||||
# via
|
||||
# junos-eznc
|
||||
# packaging
|
||||
|
|
|
@ -517,6 +517,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.3
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -650,6 +652,7 @@ oscrypto==1.2.0
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
@ -706,7 +709,7 @@ pyopenssl==19.1.0
|
|||
# via
|
||||
# -r requirements/static/pkg/linux.in
|
||||
# etcd3-py
|
||||
pyparsing==3.0.9
|
||||
pyparsing==3.0.6
|
||||
# via
|
||||
# junos-eznc
|
||||
# packaging
|
||||
|
|
|
@ -511,6 +511,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -661,7 +663,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -516,6 +516,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -660,6 +662,7 @@ oscrypto==1.2.1
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# sphinx
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -508,6 +508,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -651,7 +653,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -512,6 +512,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -659,7 +661,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via ansible-core
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -523,6 +523,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -664,6 +666,7 @@ oscrypto==1.2.0
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -174,6 +174,8 @@ keyring==5.7.1
|
|||
# via -r requirements/static/ci/common.in
|
||||
kubernetes==3.0.0
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -207,7 +209,9 @@ multidict==6.0.2
|
|||
ntlm-auth==1.5.0
|
||||
# via requests-ntlm
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
passlib[bcrypt]==1.7.4
|
||||
# via -r requirements/static/ci/common.in
|
||||
patch==1.16
|
||||
|
|
|
@ -500,6 +500,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -650,7 +652,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -507,6 +507,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -651,6 +653,7 @@ oscrypto==1.2.1
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# sphinx
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -498,6 +498,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -641,7 +643,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -503,6 +503,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -650,7 +652,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via ansible-core
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -513,6 +513,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -654,6 +656,7 @@ oscrypto==1.2.0
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -162,6 +162,8 @@ keyring==5.7.1
|
|||
# via -r requirements/static/ci/common.in
|
||||
kubernetes==3.0.0
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -195,7 +197,9 @@ multidict==6.0.2
|
|||
ntlm-auth==1.5.0
|
||||
# via requests-ntlm
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
passlib[bcrypt]==1.7.4
|
||||
# via -r requirements/static/ci/common.in
|
||||
patch==1.16
|
||||
|
|
|
@ -500,6 +500,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -650,7 +652,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -501,6 +501,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
linode-python==1.1.1
|
||||
# via -r requirements/darwin.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -646,7 +648,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
|
|
@ -505,6 +505,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -649,6 +651,7 @@ oscrypto==1.2.1
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# sphinx
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -498,6 +498,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -641,7 +643,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.0
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -501,6 +501,8 @@ libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin"
|
|||
# via -r requirements/static/ci/common.in
|
||||
loguru==0.6.0
|
||||
# via ciscoconfparse
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -648,7 +650,9 @@ oauthlib==3.2.1
|
|||
oscrypto==1.2.1
|
||||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via ansible-core
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via
|
||||
# -r requirements/static/ci/common.in
|
||||
|
|
|
@ -515,6 +515,8 @@ kubernetes==3.0.0
|
|||
# via -r requirements/static/ci/common.in
|
||||
libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via
|
||||
# junos-eznc
|
||||
|
@ -656,6 +658,7 @@ oscrypto==1.2.0
|
|||
# via certvalidator
|
||||
packaging==21.3
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# ansible-core
|
||||
# pytest
|
||||
paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin"
|
||||
|
|
|
@ -162,6 +162,8 @@ keyring==5.7.1
|
|||
# via -r requirements/static/ci/common.in
|
||||
kubernetes==3.0.0
|
||||
# via -r requirements/static/ci/common.in
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -195,7 +197,9 @@ multidict==6.0.2
|
|||
ntlm-auth==1.5.0
|
||||
# via requests-ntlm
|
||||
packaging==21.3
|
||||
# via pytest
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
# pytest
|
||||
passlib[bcrypt]==1.7.4
|
||||
# via -r requirements/static/ci/common.in
|
||||
patch==1.16
|
||||
|
|
|
@ -51,6 +51,8 @@ jmespath==1.0.1
|
|||
# via -r requirements/base.txt
|
||||
linode-python==1.1.1
|
||||
# via -r requirements/darwin.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
mako==1.2.2
|
||||
# via -r requirements/darwin.txt
|
||||
markupsafe==2.0.1
|
||||
|
@ -66,6 +68,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -41,6 +41,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -53,6 +55,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -41,6 +41,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -53,6 +55,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -54,6 +54,8 @@ jinja2==3.0.3
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -71,6 +73,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -45,6 +45,8 @@ jinja2==3.0.3
|
|||
# via -r requirements/base.txt
|
||||
jmespath==0.10.0
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.3
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -57,6 +59,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==21.3
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
@ -67,6 +71,8 @@ pycryptodomex==3.9.8
|
|||
# via -r requirements/crypto.txt
|
||||
pyopenssl==19.1.0
|
||||
# via -r requirements/static/pkg/linux.in
|
||||
pyparsing==3.0.6
|
||||
# via packaging
|
||||
python-dateutil==2.8.1
|
||||
# via -r requirements/static/pkg/linux.in
|
||||
python-gnupg==0.4.8
|
||||
|
|
|
@ -43,6 +43,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -55,6 +57,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -41,6 +41,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -53,6 +55,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -58,6 +58,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -75,6 +77,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -43,6 +43,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -55,6 +57,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -41,6 +41,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -53,6 +55,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -56,6 +56,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -73,6 +75,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -53,6 +53,8 @@ jmespath==1.0.1
|
|||
# via -r requirements/base.txt
|
||||
linode-python==1.1.1
|
||||
# via -r requirements/darwin.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
mako==1.2.2
|
||||
# via -r requirements/darwin.txt
|
||||
markupsafe==2.0.1
|
||||
|
@ -68,6 +70,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -43,6 +43,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -55,6 +57,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -41,6 +41,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
markupsafe==2.0.1
|
||||
# via
|
||||
# -r requirements/base.txt
|
||||
|
@ -53,6 +55,8 @@ more-itertools==5.0.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.4
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -56,6 +56,8 @@ jinja2==3.1.0
|
|||
# via -r requirements/base.txt
|
||||
jmespath==1.0.1
|
||||
# via -r requirements/base.txt
|
||||
looseversion==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
lxml==4.9.1
|
||||
# via -r requirements/windows.txt
|
||||
mako==1.2.2
|
||||
|
@ -73,6 +75,8 @@ more-itertools==8.2.0
|
|||
# jaraco.functools
|
||||
msgpack==1.0.2
|
||||
# via -r requirements/base.txt
|
||||
packaging==22.0
|
||||
# via -r requirements/base.txt
|
||||
portend==2.6
|
||||
# via cherrypy
|
||||
psutil==5.8.0
|
||||
|
|
|
@ -70,7 +70,8 @@ warnings.filterwarnings(
|
|||
"", # No deprecation message match
|
||||
DeprecationWarning, # This filter is for DeprecationWarnings
|
||||
r"^(salt|salt\.(.*))$", # Match module(s) 'salt' and 'salt.<whatever>'
|
||||
append=True,
|
||||
# Do *NOT* add append=True here - if we do, salt's DeprecationWarnings will
|
||||
# never show up
|
||||
)
|
||||
|
||||
# Filter the backports package UserWarning about being re-imported
|
||||
|
|
|
@ -31,7 +31,7 @@ import salt.utils.event
|
|||
from salt.cloud.libcloudfuncs import * # pylint: disable=redefined-builtin,wildcard-import,unused-wildcard-import
|
||||
from salt.exceptions import SaltCloudSystemExit
|
||||
from salt.utils.functools import namespaced_function
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# CloudStackNetwork will be needed during creation of a new node
|
||||
# pylint: disable=import-error
|
||||
|
@ -43,7 +43,7 @@ try:
|
|||
# this work-around. This work-around can be removed when the required
|
||||
# minimum version of libcloud is 2.0.0 (See PR #40837 - which is
|
||||
# implemented in Salt 2018.3.0).
|
||||
if _LooseVersion(libcloud.__version__) < _LooseVersion("1.4.0"):
|
||||
if Version(libcloud.__version__) < Version("1.4.0"):
|
||||
# See https://github.com/saltstack/salt/issues/32743
|
||||
import libcloud.security
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ from salt.exceptions import (
|
|||
SaltCloudSystemExit,
|
||||
)
|
||||
from salt.utils.functools import namespaced_function
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# Import libcloud
|
||||
try:
|
||||
|
@ -51,7 +51,7 @@ try:
|
|||
# this work-around. This work-around can be removed when the required
|
||||
# minimum version of libcloud is 2.0.0 (See PR #40837 - which is
|
||||
# implemented in Salt 2018.3.0).
|
||||
if _LooseVersion(libcloud.__version__) < _LooseVersion("1.4.0"):
|
||||
if Version(libcloud.__version__) < Version("1.4.0"):
|
||||
# See https://github.com/saltstack/salt/issues/32743
|
||||
import libcloud.security
|
||||
|
||||
|
|
|
@ -60,7 +60,7 @@ import salt.utils.msgpack
|
|||
from salt.cloud.libcloudfuncs import * # pylint: disable=redefined-builtin,wildcard-import,unused-wildcard-import
|
||||
from salt.exceptions import SaltCloudSystemExit
|
||||
from salt.utils.functools import namespaced_function
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# pylint: disable=import-error
|
||||
LIBCLOUD_IMPORT_ERROR = None
|
||||
|
@ -107,7 +107,7 @@ def __virtual__():
|
|||
if not HAS_LIBCLOUD:
|
||||
return False, "apache-libcloud is not installed"
|
||||
|
||||
if _LooseVersion(libcloud.__version__) < _LooseVersion("2.5.0"):
|
||||
if Version(libcloud.__version__) < Version("2.5.0"):
|
||||
return False, "The salt-cloud GCE driver requires apache-libcloud>=2.5.0"
|
||||
|
||||
if get_configured_provider() is False:
|
||||
|
|
|
@ -231,13 +231,13 @@ import pprint
|
|||
import socket
|
||||
|
||||
import salt.config as config
|
||||
import salt.utils.versions
|
||||
from salt.exceptions import (
|
||||
SaltCloudConfigError,
|
||||
SaltCloudExecutionFailure,
|
||||
SaltCloudExecutionTimeout,
|
||||
SaltCloudSystemExit,
|
||||
)
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import os_client_config
|
||||
|
@ -246,8 +246,7 @@ try:
|
|||
import shade.openstackcloud
|
||||
|
||||
HAS_SHADE = (
|
||||
salt.utils.versions._LooseVersion(shade.__version__)
|
||||
>= salt.utils.versions._LooseVersion("1.19.0"),
|
||||
Version(shade.__version__) >= Version("1.19.0"),
|
||||
"Please install newer version of shade: >= 1.19.0",
|
||||
)
|
||||
except ImportError:
|
||||
|
|
|
@ -108,7 +108,7 @@ from salt.exceptions import (
|
|||
SaltCloudNotFound,
|
||||
SaltCloudSystemExit,
|
||||
)
|
||||
from salt.utils.versions import LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
# pylint: disable=no-name-in-module
|
||||
|
@ -174,7 +174,7 @@ def version_compatible(version):
|
|||
"""
|
||||
Checks profitbricks version
|
||||
"""
|
||||
return LooseVersion(profitbricks.API_VERSION) >= LooseVersion(version)
|
||||
return Version(profitbricks.API_VERSION) >= Version(version)
|
||||
|
||||
|
||||
def get_dependencies():
|
||||
|
|
|
@ -366,6 +366,8 @@ VALID_OPTS = immutabletypes.freeze(
|
|||
# to the jid. WARNING: A change to the jid format may break external
|
||||
# applications that depend on the original format.
|
||||
"unique_jid": bool,
|
||||
# Governs whether state runs will queue or fail to run when a state is already running
|
||||
"state_queue": bool,
|
||||
# Tells the highstate outputter to show successful states. False will omit successes.
|
||||
"state_verbose": bool,
|
||||
# Specify the format for state outputs. See highstate outputter for additional details.
|
||||
|
@ -1181,6 +1183,7 @@ DEFAULT_MINION_OPTS = immutabletypes.freeze(
|
|||
"state_auto_order": True,
|
||||
"state_events": False,
|
||||
"state_aggregate": False,
|
||||
"state_queue": False,
|
||||
"snapper_states": False,
|
||||
"snapper_states_config": "root",
|
||||
"acceptance_wait_time": 10,
|
||||
|
|
|
@ -58,12 +58,12 @@ import salt.utils.hashutils
|
|||
import salt.utils.json
|
||||
import salt.utils.path
|
||||
import salt.utils.stringutils
|
||||
from salt.utils.versions import LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import azure.storage
|
||||
|
||||
if LooseVersion(azure.storage.__version__) < LooseVersion("0.20.0"):
|
||||
if Version(azure.storage.__version__) < Version("0.20.0"):
|
||||
raise ImportError("azure.storage.__version__ must be >= 0.20.0")
|
||||
HAS_AZURE = True
|
||||
except (ImportError, AttributeError):
|
||||
|
|
|
@ -14,7 +14,7 @@ import shlex
|
|||
import salt.utils.json
|
||||
import salt.utils.path
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -37,10 +37,10 @@ def _check_valid_version():
|
|||
bower must be at least version 1.3.
|
||||
"""
|
||||
# pylint: disable=no-member
|
||||
bower_version = _LooseVersion(
|
||||
bower_version = Version(
|
||||
__salt__["cmd.run"]("{} --version".format(salt.utils.path.which("bower")))
|
||||
)
|
||||
valid_version = _LooseVersion("1.3")
|
||||
valid_version = Version("1.3")
|
||||
# pylint: enable=no-member
|
||||
if bower_version < valid_version:
|
||||
raise CommandExecutionError(
|
||||
|
|
|
@ -21,7 +21,7 @@ from salt.exceptions import (
|
|||
SaltInvocationError,
|
||||
)
|
||||
from salt.utils.data import CaseInsensitiveDict
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -68,7 +68,7 @@ def _yes():
|
|||
"""
|
||||
if "chocolatey._yes" in __context__:
|
||||
return __context__["chocolatey._yes"]
|
||||
if _LooseVersion(chocolatey_version()) >= _LooseVersion("0.9.9"):
|
||||
if Version(chocolatey_version()) >= Version("0.9.9"):
|
||||
answer = ["--yes"]
|
||||
else:
|
||||
answer = []
|
||||
|
@ -83,7 +83,7 @@ def _no_progress():
|
|||
"""
|
||||
if "chocolatey._no_progress" in __context__:
|
||||
return __context__["chocolatey._no_progress"]
|
||||
if _LooseVersion(chocolatey_version()) >= _LooseVersion("0.10.4"):
|
||||
if Version(chocolatey_version()) >= Version("0.10.4"):
|
||||
answer = ["--no-progress"]
|
||||
else:
|
||||
log.warning("--no-progress unsupported in choco < 0.10.4")
|
||||
|
@ -778,7 +778,7 @@ def install_missing(name, version=None, source=None):
|
|||
salt '*' chocolatey.install_missing <package name>
|
||||
salt '*' chocolatey.install_missing <package name> version=<package version>
|
||||
"""
|
||||
if _LooseVersion(chocolatey_version()) >= _LooseVersion("0.9.8.24"):
|
||||
if Version(chocolatey_version()) >= Version("0.9.8.24"):
|
||||
log.warning("installmissing is deprecated, using install")
|
||||
return install(name, version=version)
|
||||
|
||||
|
@ -1049,7 +1049,7 @@ def update(name, source=None, pre_versions=False):
|
|||
salt "*" chocolatey.update <package name> pre_versions=True
|
||||
"""
|
||||
# chocolatey helpfully only supports a single package argument
|
||||
if _LooseVersion(chocolatey_version()) >= _LooseVersion("0.9.8.24"):
|
||||
if Version(chocolatey_version()) >= Version("0.9.8.24"):
|
||||
log.warning("update is deprecated, using upgrade")
|
||||
return upgrade(name, source=source, pre_versions=pre_versions)
|
||||
|
||||
|
|
|
@ -44,10 +44,10 @@ import salt.utils.stringutils
|
|||
import salt.utils.templates
|
||||
import salt.utils.url
|
||||
import salt.utils.user
|
||||
import salt.utils.versions
|
||||
from salt.exceptions import CommandExecutionError, MinionError, SaltInvocationError
|
||||
from salt.exceptions import get_error_message as _get_error_message
|
||||
from salt.utils.files import HASHES, HASHES_REVMAP
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import grp
|
||||
|
@ -192,8 +192,8 @@ def _chattr_has_extended_attrs():
|
|||
if ver is None:
|
||||
return False
|
||||
|
||||
needed_version = salt.utils.versions.LooseVersion("1.41.12")
|
||||
chattr_version = salt.utils.versions.LooseVersion(ver)
|
||||
needed_version = Version("1.41.12")
|
||||
chattr_version = Version(ver)
|
||||
return chattr_version > needed_version
|
||||
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ import salt.utils.stringutils
|
|||
import salt.utils.templates
|
||||
import salt.utils.url
|
||||
from salt.exceptions import CommandExecutionError, SaltInvocationError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import LooseVersion
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -42,7 +42,7 @@ def _check_worktree_support(failhard=True):
|
|||
Ensure that we don't try to operate on worktrees in git < 2.5.0.
|
||||
"""
|
||||
git_version = version(versioninfo=False)
|
||||
if _LooseVersion(git_version) < _LooseVersion("2.5.0"):
|
||||
if LooseVersion(git_version) < LooseVersion("2.5.0"):
|
||||
if failhard:
|
||||
raise CommandExecutionError(
|
||||
"Worktrees are only supported in git 2.5.0 and newer "
|
||||
|
@ -175,7 +175,7 @@ def _format_git_opts(opts):
|
|||
"""
|
||||
if opts:
|
||||
version_ = version(versioninfo=False)
|
||||
if _LooseVersion(version_) < _LooseVersion("1.7.2"):
|
||||
if LooseVersion(version_) < LooseVersion("1.7.2"):
|
||||
raise SaltInvocationError(
|
||||
"git_opts is only supported for git versions >= 1.7.2 "
|
||||
"(detected: {})".format(version_)
|
||||
|
@ -450,8 +450,8 @@ def _which_git_config(global_, cwd, user, password, output_encoding=None):
|
|||
"""
|
||||
if global_:
|
||||
return ["--global"]
|
||||
version_ = _LooseVersion(version(versioninfo=False))
|
||||
if version_ >= _LooseVersion("1.7.10.2"):
|
||||
version_ = LooseVersion(version(versioninfo=False))
|
||||
if version_ >= LooseVersion("1.7.10.2"):
|
||||
# --local added in 1.7.10.2
|
||||
return ["--local"]
|
||||
else:
|
||||
|
@ -1825,7 +1825,7 @@ def describe(
|
|||
"""
|
||||
cwd = _expand_path(cwd, user)
|
||||
command = ["git", "describe"]
|
||||
if _LooseVersion(version(versioninfo=False)) >= _LooseVersion("1.5.6"):
|
||||
if LooseVersion(version(versioninfo=False)) >= LooseVersion("1.5.6"):
|
||||
command.append("--always")
|
||||
command.append(rev)
|
||||
return _git_run(
|
||||
|
@ -1970,7 +1970,7 @@ def diff(
|
|||
failhard = True
|
||||
|
||||
if no_index:
|
||||
if _LooseVersion(version(versioninfo=False)) < _LooseVersion("1.5.1"):
|
||||
if LooseVersion(version(versioninfo=False)) < LooseVersion("1.5.1"):
|
||||
raise CommandExecutionError(
|
||||
"The 'no_index' option is only supported in Git 1.5.1 and newer"
|
||||
)
|
||||
|
@ -2701,8 +2701,8 @@ def list_worktrees(
|
|||
|
||||
tracked_data_points = ("worktree", "HEAD", "branch")
|
||||
ret = {}
|
||||
git_version = _LooseVersion(version(versioninfo=False))
|
||||
has_native_list_subcommand = git_version >= _LooseVersion("2.7.0")
|
||||
git_version = LooseVersion(version(versioninfo=False))
|
||||
has_native_list_subcommand = git_version >= LooseVersion("2.7.0")
|
||||
if has_native_list_subcommand:
|
||||
out = _git_run(
|
||||
["git", "worktree", "list", "--porcelain"],
|
||||
|
@ -3356,7 +3356,7 @@ def merge_base(
|
|||
refs = ["HEAD"]
|
||||
|
||||
if is_ancestor:
|
||||
if _LooseVersion(version(versioninfo=False)) < _LooseVersion("1.8.0"):
|
||||
if LooseVersion(version(versioninfo=False)) < LooseVersion("1.8.0"):
|
||||
# Pre 1.8.0 git doesn't have --is-ancestor, so the logic here is a
|
||||
# little different. First we need to resolve the first ref to a
|
||||
# full SHA1, and then if running git merge-base on both commits
|
||||
|
@ -5229,8 +5229,7 @@ def version(versioninfo=False):
|
|||
Returns the version of Git installed on the minion
|
||||
|
||||
versioninfo : False
|
||||
If ``True``, return the version in a versioninfo list (e.g. ``[2, 5,
|
||||
0]``)
|
||||
If ``True``, return the version in a versioninfo list (e.g. ``[2, 5, 0]``)
|
||||
|
||||
CLI Example:
|
||||
|
||||
|
@ -5249,9 +5248,15 @@ def version(versioninfo=False):
|
|||
try:
|
||||
# On macOS, the git version is displayed in a different format
|
||||
# git version 2.21.1 (Apple Git-122.3)
|
||||
# On Windows:
|
||||
# git version 2.21.1.windows.1
|
||||
# As opposed to:
|
||||
# git version 2.21.1
|
||||
__context__[contextkey] = version_.split("(")[0].strip().split()[-1]
|
||||
if "(" in version_:
|
||||
version_ = version_.split("(")[0].strip()
|
||||
if ".windows" in version_:
|
||||
version_ = version_.split(".windows")[0].strip()
|
||||
__context__[contextkey] = version_.strip().split()[-1].strip()
|
||||
except IndexError:
|
||||
# Somehow git --version returned no stdout while not raising an
|
||||
# error. Should never happen but we should still account for this
|
||||
|
@ -5540,7 +5545,7 @@ def worktree_prune(
|
|||
output_encoding=output_encoding,
|
||||
)
|
||||
git_version = version(versioninfo=False)
|
||||
if _LooseVersion(git_version) > _LooseVersion("2.35.0"):
|
||||
if LooseVersion(git_version) > LooseVersion("2.35.0"):
|
||||
return result["stderr"]
|
||||
return result["stdout"]
|
||||
|
||||
|
|
|
@ -6,13 +6,8 @@ import functools
|
|||
import logging
|
||||
import re
|
||||
|
||||
try:
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
|
||||
HAS_REQUIRED_LIBS = True
|
||||
except ImportError:
|
||||
HAS_REQUIRED_LIBS = False
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -24,10 +19,6 @@ def __virtual__():
|
|||
"""
|
||||
Load this module on Debian-based systems only
|
||||
"""
|
||||
|
||||
if not HAS_REQUIRED_LIBS:
|
||||
return (False, "Required library could not be imported")
|
||||
|
||||
if __grains__.get("os_family", "") in ("Kali", "Debian"):
|
||||
return __virtualname__
|
||||
elif __grains__.get("os_family", "") == "Cumulus":
|
||||
|
@ -133,7 +124,7 @@ def needs_reboot():
|
|||
|
||||
salt '*' kernelpkg.needs_reboot
|
||||
"""
|
||||
return _LooseVersion(active()) < _LooseVersion(latest_installed())
|
||||
return LooseVersion(active()) < LooseVersion(latest_installed())
|
||||
|
||||
|
||||
def upgrade(reboot=False, at_time=None):
|
||||
|
@ -192,7 +183,7 @@ def upgrade_available():
|
|||
|
||||
salt '*' kernelpkg.upgrade_available
|
||||
"""
|
||||
return _LooseVersion(latest_available()) > _LooseVersion(latest_installed())
|
||||
return LooseVersion(latest_available()) > LooseVersion(latest_installed())
|
||||
|
||||
|
||||
def remove(release):
|
||||
|
@ -278,8 +269,8 @@ def _cmp_version(item1, item2):
|
|||
"""
|
||||
Compare function for package version sorting
|
||||
"""
|
||||
vers1 = _LooseVersion(item1)
|
||||
vers2 = _LooseVersion(item2)
|
||||
vers1 = LooseVersion(item1)
|
||||
vers2 = LooseVersion(item2)
|
||||
|
||||
if vers1 < vers2:
|
||||
return -1
|
||||
|
|
|
@ -5,37 +5,27 @@ Manage Linux kernel packages on YUM-based systems
|
|||
import functools
|
||||
import logging
|
||||
|
||||
try:
|
||||
import salt.modules.yumpkg
|
||||
import salt.utils.data
|
||||
import salt.utils.functools
|
||||
import salt.utils.systemd
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
|
||||
__IMPORT_ERROR = None
|
||||
except ImportError as exc:
|
||||
__IMPORT_ERROR = exc.__str__()
|
||||
import salt.modules.yumpkg
|
||||
import salt.utils.data
|
||||
import salt.utils.functools
|
||||
import salt.utils.systemd
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
__virtualname__ = "kernelpkg"
|
||||
|
||||
if __IMPORT_ERROR is None:
|
||||
# Import functions from yumpkg
|
||||
# pylint: disable=invalid-name, protected-access
|
||||
_yum = salt.utils.functools.namespaced_function(salt.modules.yumpkg._yum, globals())
|
||||
# pylint: enable=invalid-name, protected-access
|
||||
# Import functions from yumpkg
|
||||
# pylint: disable=invalid-name, protected-access
|
||||
_yum = salt.utils.functools.namespaced_function(salt.modules.yumpkg._yum, globals())
|
||||
# pylint: enable=invalid-name, protected-access
|
||||
|
||||
|
||||
def __virtual__():
|
||||
"""
|
||||
Load this module on RedHat-based systems only
|
||||
"""
|
||||
|
||||
if __IMPORT_ERROR:
|
||||
return False, __IMPORT_ERROR
|
||||
|
||||
if __grains__.get("os_family", "") == "RedHat":
|
||||
return __virtualname__
|
||||
elif __grains__.get("os", "").lower() in (
|
||||
|
@ -133,7 +123,7 @@ def needs_reboot():
|
|||
|
||||
salt '*' kernelpkg.needs_reboot
|
||||
"""
|
||||
return _LooseVersion(active()) < _LooseVersion(latest_installed())
|
||||
return LooseVersion(active()) < LooseVersion(latest_installed())
|
||||
|
||||
|
||||
def upgrade(reboot=False, at_time=None):
|
||||
|
@ -190,7 +180,7 @@ def upgrade_available():
|
|||
|
||||
salt '*' kernelpkg.upgrade_available
|
||||
"""
|
||||
return _LooseVersion(latest_available()) > _LooseVersion(latest_installed())
|
||||
return LooseVersion(latest_available()) > LooseVersion(latest_installed())
|
||||
|
||||
|
||||
def remove(release):
|
||||
|
@ -291,8 +281,8 @@ def _cmp_version(item1, item2):
|
|||
"""
|
||||
Compare function for package version sorting
|
||||
"""
|
||||
vers1 = _LooseVersion(item1)
|
||||
vers2 = _LooseVersion(item2)
|
||||
vers1 = LooseVersion(item1)
|
||||
vers2 = LooseVersion(item2)
|
||||
|
||||
if vers1 < vers2:
|
||||
return -1
|
||||
|
|
|
@ -23,7 +23,7 @@ import salt.utils.files
|
|||
import salt.utils.path
|
||||
import salt.utils.platform
|
||||
import salt.utils.stringutils
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# Set up logging
|
||||
log = logging.getLogger(__name__)
|
||||
|
@ -51,14 +51,14 @@ def __virtual__():
|
|||
'Required binary not found: "/bin/launchctl"',
|
||||
)
|
||||
|
||||
if _LooseVersion(__grains__["osrelease"]) >= _LooseVersion("10.11"):
|
||||
if Version(__grains__["osrelease"]) >= Version("10.11"):
|
||||
return (
|
||||
False,
|
||||
"Failed to load the mac_service module:\n"
|
||||
"Not available on El Capitan, uses mac_service.py",
|
||||
)
|
||||
|
||||
if _LooseVersion(__grains__["osrelease"]) >= _LooseVersion("10.10"):
|
||||
if Version(__grains__["osrelease"]) >= Version("10.10"):
|
||||
global BEFORE_YOSEMITE
|
||||
BEFORE_YOSEMITE = False
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ import os.path
|
|||
|
||||
import salt.utils.args
|
||||
import salt.utils.compat
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -47,9 +47,9 @@ try:
|
|||
from libcloud.compute.providers import get_driver
|
||||
|
||||
# pylint: enable=unused-import
|
||||
if hasattr(libcloud, "__version__") and _LooseVersion(
|
||||
libcloud.__version__
|
||||
) < _LooseVersion(REQUIRED_LIBCLOUD_VERSION):
|
||||
if hasattr(libcloud, "__version__") and Version(libcloud.__version__) < Version(
|
||||
REQUIRED_LIBCLOUD_VERSION
|
||||
):
|
||||
raise ImportError()
|
||||
logging.getLogger("libcloud").setLevel(logging.CRITICAL)
|
||||
HAS_LIBCLOUD = True
|
||||
|
|
|
@ -30,7 +30,7 @@ Connection module for Apache Libcloud DNS management
|
|||
|
||||
import logging
|
||||
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -42,9 +42,9 @@ try:
|
|||
from libcloud.dns.types import RecordType
|
||||
|
||||
# pylint: enable=unused-import
|
||||
if hasattr(libcloud, "__version__") and _LooseVersion(
|
||||
libcloud.__version__
|
||||
) < _LooseVersion(REQUIRED_LIBCLOUD_VERSION):
|
||||
if hasattr(libcloud, "__version__") and Version(libcloud.__version__) < Version(
|
||||
REQUIRED_LIBCLOUD_VERSION
|
||||
):
|
||||
raise ImportError()
|
||||
logging.getLogger("libcloud").setLevel(logging.CRITICAL)
|
||||
HAS_LIBCLOUD = True
|
||||
|
|
|
@ -34,7 +34,7 @@ import logging
|
|||
|
||||
import salt.utils.args
|
||||
import salt.utils.compat
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -46,9 +46,9 @@ try:
|
|||
from libcloud.loadbalancer.providers import get_driver
|
||||
|
||||
# pylint: enable=unused-import
|
||||
if hasattr(libcloud, "__version__") and _LooseVersion(
|
||||
libcloud.__version__
|
||||
) < _LooseVersion(REQUIRED_LIBCLOUD_VERSION):
|
||||
if hasattr(libcloud, "__version__") and Version(libcloud.__version__) < Version(
|
||||
REQUIRED_LIBCLOUD_VERSION
|
||||
):
|
||||
raise ImportError()
|
||||
logging.getLogger("libcloud").setLevel(logging.CRITICAL)
|
||||
HAS_LIBCLOUD = True
|
||||
|
|
|
@ -34,7 +34,7 @@ import logging
|
|||
|
||||
import salt.utils.args
|
||||
import salt.utils.compat
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -45,9 +45,9 @@ try:
|
|||
from libcloud.storage.providers import get_driver
|
||||
|
||||
# pylint: enable=unused-import
|
||||
if hasattr(libcloud, "__version__") and _LooseVersion(
|
||||
libcloud.__version__
|
||||
) < _LooseVersion(REQUIRED_LIBCLOUD_VERSION):
|
||||
if hasattr(libcloud, "__version__") and Version(libcloud.__version__) < Version(
|
||||
REQUIRED_LIBCLOUD_VERSION
|
||||
):
|
||||
raise ImportError()
|
||||
logging.getLogger("libcloud").setLevel(logging.CRITICAL)
|
||||
HAS_LIBCLOUD = True
|
||||
|
|
|
@ -35,7 +35,7 @@ import salt.utils.odict
|
|||
import salt.utils.path
|
||||
import salt.utils.stringutils
|
||||
from salt.exceptions import CommandExecutionError, SaltInvocationError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# Set up logging
|
||||
log = logging.getLogger(__name__)
|
||||
|
@ -116,8 +116,8 @@ def version():
|
|||
if not __context__.get(k, None):
|
||||
cversion = __salt__["cmd.run_all"]("lxc-info --version")
|
||||
if not cversion["retcode"]:
|
||||
ver = _LooseVersion(cversion["stdout"])
|
||||
if ver < _LooseVersion("1.0"):
|
||||
ver = Version(cversion["stdout"])
|
||||
if ver < Version("1.0"):
|
||||
raise CommandExecutionError("LXC should be at least 1.0")
|
||||
__context__[k] = "{}".format(ver)
|
||||
return __context__.get(k, None)
|
||||
|
@ -878,7 +878,7 @@ def _network_conf(conf_tuples=None, **kwargs):
|
|||
# if we didn't explicitly say no to
|
||||
# (lxc.network.ipv4.gateway: auto)
|
||||
if (
|
||||
_LooseVersion(version()) <= _LooseVersion("1.0.7")
|
||||
Version(version()) <= Version("1.0.7")
|
||||
and True not in ["lxc.network.ipv4.gateway" in a for a in ret]
|
||||
and True in ["lxc.network.ipv4" in a for a in ret]
|
||||
):
|
||||
|
@ -2129,7 +2129,7 @@ def clone(name, orig, profile=None, network_profile=None, nic_opts=None, **kwarg
|
|||
if backing in ("dir", "overlayfs", "btrfs"):
|
||||
size = None
|
||||
# LXC commands and options changed in 2.0 - CF issue #34086 for details
|
||||
if _LooseVersion(version()) >= _LooseVersion("2.0"):
|
||||
if Version(version()) >= Version("2.0"):
|
||||
# https://linuxcontainers.org/lxc/manpages//man1/lxc-copy.1.html
|
||||
cmd = "lxc-copy"
|
||||
cmd += " {} -n {} -N {}".format(snapshot, orig, name)
|
||||
|
|
|
@ -39,7 +39,7 @@ from datetime import datetime
|
|||
import salt.utils.decorators.path
|
||||
import salt.utils.files
|
||||
from salt.exceptions import CommandExecutionError, SaltInvocationError
|
||||
from salt.utils.versions import LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import pylxd
|
||||
|
@ -82,7 +82,7 @@ _connection_pool = {}
|
|||
|
||||
def __virtual__():
|
||||
if HAS_PYLXD:
|
||||
if LooseVersion(pylxd_version()) < LooseVersion(_pylxd_minimal_version):
|
||||
if Version(pylxd_version()) < Version(_pylxd_minimal_version):
|
||||
return (
|
||||
False,
|
||||
'The lxd execution module cannot be loaded: pylxd "{}" is '
|
||||
|
|
|
@ -15,7 +15,7 @@ import sqlite3
|
|||
import salt.utils.platform
|
||||
import salt.utils.stringutils
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -31,7 +31,7 @@ def __virtual__():
|
|||
"""
|
||||
if not salt.utils.platform.is_darwin():
|
||||
return False, "Must be run on macOS"
|
||||
if _LooseVersion(__grains__["osrelease"]) < salt.utils.stringutils.to_str("10.9"):
|
||||
if Version(__grains__["osrelease"]) < Version("10.9"):
|
||||
return False, "Must be run on macOS 10.9 or newer"
|
||||
return __virtualname__
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ import salt.utils.path
|
|||
import salt.utils.platform
|
||||
import salt.utils.stringutils
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# Define the module's virtual name
|
||||
__virtualname__ = "service"
|
||||
|
@ -79,7 +79,7 @@ def __virtual__():
|
|||
'Required binary not found: "plutil"',
|
||||
)
|
||||
|
||||
if _LooseVersion(__grains__["osrelease"]) < _LooseVersion("10.11"):
|
||||
if Version(__grains__["osrelease"]) < Version("10.11"):
|
||||
return (
|
||||
False,
|
||||
"Failed to load the mac_service module:\nRequires macOS 10.11 or newer",
|
||||
|
|
|
@ -18,7 +18,7 @@ import re
|
|||
|
||||
import salt.utils.json
|
||||
from salt.exceptions import get_error_message as _get_error_message
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import pymongo
|
||||
|
@ -336,7 +336,7 @@ def user_list(
|
|||
output = []
|
||||
mongodb_version = _version(mdb)
|
||||
|
||||
if _LooseVersion(mongodb_version) >= _LooseVersion("2.6"):
|
||||
if Version(mongodb_version) >= Version("2.6"):
|
||||
for user in mdb.command("usersInfo")["users"]:
|
||||
output.append({"user": user["user"], "roles": user["roles"]})
|
||||
else:
|
||||
|
|
|
@ -11,7 +11,7 @@ import salt.utils.json
|
|||
import salt.utils.path
|
||||
import salt.utils.user
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -50,7 +50,8 @@ def _check_valid_version():
|
|||
res = salt.modules.cmdmod.run(
|
||||
"{npm} --version".format(npm=npm_path), output_loglevel="quiet"
|
||||
)
|
||||
npm_version, valid_version = _LooseVersion(res), _LooseVersion("1.2")
|
||||
npm_version = Version(res)
|
||||
valid_version = Version("1.2")
|
||||
# pylint: enable=no-member
|
||||
if npm_version < valid_version:
|
||||
raise CommandExecutionError(
|
||||
|
|
|
@ -33,6 +33,7 @@ import salt.utils.pkg
|
|||
import salt.utils.stringutils
|
||||
import salt.utils.versions
|
||||
from salt.exceptions import CommandExecutionError, MinionError, SaltInvocationError
|
||||
from salt.utils.versions import Version
|
||||
|
||||
REPO_REGEXP = r'^#?\s*(src|src/gz)\s+([^\s<>]+|"[^<>]+")\s+[^\s<>]+'
|
||||
OPKG_CONFDIR = "/etc/opkg"
|
||||
|
@ -1229,9 +1230,7 @@ def version_cmp(
|
|||
["opkg", "--version"], output_loglevel="trace", python_shell=False
|
||||
)
|
||||
opkg_version = output.split(" ")[2].strip()
|
||||
if salt.utils.versions.LooseVersion(
|
||||
opkg_version
|
||||
) >= salt.utils.versions.LooseVersion("0.3.4"):
|
||||
if Version(opkg_version) >= Version("0.3.4"):
|
||||
cmd_compare = ["opkg", "compare-versions"]
|
||||
elif salt.utils.path.which("opkg-compare-versions"):
|
||||
cmd_compare = ["opkg-compare-versions"]
|
||||
|
|
|
@ -20,7 +20,7 @@ import salt.utils.itertools
|
|||
import salt.utils.pkg
|
||||
import salt.utils.systemd
|
||||
from salt.exceptions import CommandExecutionError, MinionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import LooseVersion
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -1036,7 +1036,7 @@ def list_repo_pkgs(*args, **kwargs):
|
|||
# Sort versions newest to oldest
|
||||
for pkgname in ret[reponame]:
|
||||
sorted_versions = sorted(
|
||||
(_LooseVersion(x) for x in ret[reponame][pkgname]), reverse=True
|
||||
(LooseVersion(x) for x in ret[reponame][pkgname]), reverse=True
|
||||
)
|
||||
ret[reponame][pkgname] = [x.vstring for x in sorted_versions]
|
||||
return ret
|
||||
|
@ -1047,7 +1047,7 @@ def list_repo_pkgs(*args, **kwargs):
|
|||
byrepo_ret.setdefault(pkgname, []).extend(ret[reponame][pkgname])
|
||||
for pkgname in byrepo_ret:
|
||||
sorted_versions = sorted(
|
||||
(_LooseVersion(x) for x in byrepo_ret[pkgname]), reverse=True
|
||||
(LooseVersion(x) for x in byrepo_ret[pkgname]), reverse=True
|
||||
)
|
||||
byrepo_ret[pkgname] = [x.vstring for x in sorted_versions]
|
||||
return byrepo_ret
|
||||
|
|
|
@ -154,10 +154,8 @@ def _get_pip_bin(bin_env):
|
|||
Locate the pip binary, either from `bin_env` as a virtualenv, as the
|
||||
executable itself, or from searching conventional filesystem locations
|
||||
"""
|
||||
bundled = _check_bundled()
|
||||
|
||||
if not bin_env:
|
||||
if bundled:
|
||||
if _check_bundled():
|
||||
logger.debug("pip: Using pip from bundled app")
|
||||
return [os.path.normpath(sys.executable), "pip"]
|
||||
else:
|
||||
|
|
|
@ -57,7 +57,7 @@ import salt.utils.path
|
|||
import salt.utils.stringutils
|
||||
from salt.exceptions import CommandExecutionError, SaltInvocationError
|
||||
from salt.ext.saslprep import saslprep
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import LooseVersion
|
||||
|
||||
try:
|
||||
import csv
|
||||
|
@ -336,7 +336,7 @@ def _parsed_version(
|
|||
)
|
||||
|
||||
if psql_version:
|
||||
return _LooseVersion(psql_version)
|
||||
return LooseVersion(psql_version)
|
||||
else:
|
||||
log.warning(
|
||||
"Attempt to parse version of Postgres server failed. "
|
||||
|
@ -998,11 +998,11 @@ def user_list(
|
|||
runas=runas,
|
||||
)
|
||||
if ver:
|
||||
if ver >= _LooseVersion("9.1"):
|
||||
if ver >= LooseVersion("9.1"):
|
||||
replication_column = "pg_roles.rolreplication"
|
||||
else:
|
||||
replication_column = "NULL"
|
||||
if ver >= _LooseVersion("9.5"):
|
||||
if ver >= LooseVersion("9.5"):
|
||||
rolcatupdate_column = "NULL"
|
||||
else:
|
||||
rolcatupdate_column = "pg_roles.rolcatupdate"
|
||||
|
@ -1790,11 +1790,11 @@ def is_available_extension(
|
|||
|
||||
def _pg_is_older_ext_ver(a, b):
|
||||
"""
|
||||
Compare versions of extensions using salt.utils.versions.LooseVersion.
|
||||
Compare versions of extensions using `looseversion.LooseVersion`.
|
||||
|
||||
Returns ``True`` if version a is lesser than b.
|
||||
"""
|
||||
return _LooseVersion(a) < _LooseVersion(b)
|
||||
return LooseVersion(a) < LooseVersion(b)
|
||||
|
||||
|
||||
def is_installed_extension(
|
||||
|
|
|
@ -16,7 +16,7 @@ import salt.utils.path
|
|||
import salt.utils.platform
|
||||
import salt.utils.user
|
||||
from salt.exceptions import CommandExecutionError, SaltInvocationError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -973,7 +973,7 @@ def list_policies(vhost="/", runas=None):
|
|||
ret[vhost] = {}
|
||||
ret[vhost][name] = {}
|
||||
|
||||
if _LooseVersion(version) >= _LooseVersion("3.7"):
|
||||
if Version(version) >= Version("3.7"):
|
||||
# in version 3.7 the position of apply_to and pattern has been
|
||||
# switched
|
||||
ret[vhost][name]["pattern"] = parts[2]
|
||||
|
|
|
@ -163,7 +163,11 @@ def _check_release_cmp(name):
|
|||
log.info("Release code name %s was not found.", name)
|
||||
return None
|
||||
|
||||
current_version = str(salt.version.SaltStackVersion(*salt.version.__version_info__))
|
||||
current_version = str(
|
||||
salt.version.SaltStackVersion( # pylint: disable=no-value-for-parameter
|
||||
*salt.version.__version_info__
|
||||
)
|
||||
)
|
||||
current_version = current_version.rsplit(".", 1)[0]
|
||||
version_cmp = salt.utils.versions.version_cmp(current_version, map_version)
|
||||
return version_cmp
|
||||
|
|
|
@ -119,16 +119,19 @@ def _get_pillar_errors(kwargs, pillar=None):
|
|||
return None if kwargs.get("force") else (pillar or __pillar__).get("_errors")
|
||||
|
||||
|
||||
def _wait(jid):
|
||||
def _wait(jid, max_queue=0):
|
||||
"""
|
||||
Wait for all previously started state jobs to finish running
|
||||
"""
|
||||
if jid is None:
|
||||
jid = salt.utils.jid.gen_jid(__opts__)
|
||||
states = _prior_running_states(jid)
|
||||
while states:
|
||||
time.sleep(1)
|
||||
states = _prior_running_states(jid)
|
||||
if not max_queue or len(states) < max_queue:
|
||||
while states:
|
||||
time.sleep(1)
|
||||
states = _prior_running_states(jid)
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def _snapper_pre(opts, jid):
|
||||
|
@ -413,13 +416,23 @@ def _check_queue(queue, kwargs):
|
|||
Utility function to queue the state run if requested
|
||||
and to check for conflicts in currently running states
|
||||
"""
|
||||
if queue:
|
||||
if queue is None:
|
||||
queue = __salt__["config.option"]("state_queue", False)
|
||||
|
||||
if queue is True:
|
||||
_wait(kwargs.get("__pub_jid"))
|
||||
else:
|
||||
conflict = running(concurrent=kwargs.get("concurrent", False))
|
||||
if conflict:
|
||||
__context__["retcode"] = salt.defaults.exitcodes.EX_STATE_COMPILER_ERROR
|
||||
return conflict
|
||||
queue_ret = False
|
||||
if not isinstance(queue, bool) and isinstance(queue, int):
|
||||
queue_ret = _wait(kwargs.get("__pub_jid"), max_queue=queue)
|
||||
|
||||
if not queue_ret:
|
||||
conflict = running(concurrent=kwargs.get("concurrent", False))
|
||||
if conflict:
|
||||
__context__["retcode"] = salt.defaults.exitcodes.EX_STATE_COMPILER_ERROR
|
||||
return conflict
|
||||
|
||||
return
|
||||
|
||||
|
||||
def _get_initial_pillar(opts):
|
||||
|
@ -431,7 +444,7 @@ def _get_initial_pillar(opts):
|
|||
)
|
||||
|
||||
|
||||
def low(data, queue=False, **kwargs):
|
||||
def low(data, queue=None, **kwargs):
|
||||
"""
|
||||
Execute a single low data call
|
||||
|
||||
|
@ -480,7 +493,7 @@ def _get_test_value(test=None, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def high(data, test=None, queue=False, **kwargs):
|
||||
def high(data, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Execute the compound calls stored in a single set of high data
|
||||
|
||||
|
@ -533,7 +546,7 @@ def high(data, test=None, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def template(tem, queue=False, **kwargs):
|
||||
def template(tem, queue=None, **kwargs):
|
||||
"""
|
||||
Execute the information stored in a template file on the minion.
|
||||
|
||||
|
@ -586,7 +599,7 @@ def template(tem, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def template_str(tem, queue=False, **kwargs):
|
||||
def template_str(tem, queue=None, **kwargs):
|
||||
"""
|
||||
Execute the information stored in a string from an sls template
|
||||
|
||||
|
@ -668,11 +681,19 @@ def apply_(mods=None, **kwargs):
|
|||
|
||||
queue : False
|
||||
Instead of failing immediately when another state run is in progress,
|
||||
queue the new state run to begin running once the other has finished.
|
||||
a value of ``True`` will queue the new state run to begin running once
|
||||
the other has finished.
|
||||
|
||||
This option starts a new thread for each queued state run, so use this
|
||||
option sparingly.
|
||||
|
||||
.. versionchanged:: 3006.0
|
||||
This parameter can also be set via the ``state_queue`` configuration
|
||||
option. Additionally, it can now be set to an integer representing
|
||||
the maximum queue size which can be attained before the state runs
|
||||
will fail to be queued. This can prevent runaway conditions where
|
||||
new threads are started until system performance is hampered.
|
||||
|
||||
localconfig
|
||||
Optionally, instead of using the minion config, load minion opts from
|
||||
the file specified by this argument, and then merge them with the
|
||||
|
@ -727,11 +748,19 @@ def apply_(mods=None, **kwargs):
|
|||
|
||||
queue : False
|
||||
Instead of failing immediately when another state run is in progress,
|
||||
queue the new state run to begin running once the other has finished.
|
||||
a value of ``True`` will queue the new state run to begin running once
|
||||
the other has finished.
|
||||
|
||||
This option starts a new thread for each queued state run, so use this
|
||||
option sparingly.
|
||||
|
||||
.. versionchanged:: 3006.0
|
||||
This parameter can also be set via the ``state_queue`` configuration
|
||||
option. Additionally, it can now be set to an integer representing
|
||||
the maximum queue size which can be attained before the state runs
|
||||
will fail to be queued. This can prevent runaway conditions where
|
||||
new threads are started until system performance is hampered.
|
||||
|
||||
concurrent : False
|
||||
Execute state runs concurrently instead of serially
|
||||
|
||||
|
@ -945,7 +974,7 @@ def run_request(name="default", **kwargs):
|
|||
return {}
|
||||
|
||||
|
||||
def highstate(test=None, queue=False, **kwargs):
|
||||
def highstate(test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Retrieve the state data from the salt master for this minion and execute it
|
||||
|
||||
|
@ -1007,11 +1036,19 @@ def highstate(test=None, queue=False, **kwargs):
|
|||
|
||||
queue : False
|
||||
Instead of failing immediately when another state run is in progress,
|
||||
queue the new state run to begin running once the other has finished.
|
||||
a value of ``True`` will queue the new state run to begin running once
|
||||
the other has finished.
|
||||
|
||||
This option starts a new thread for each queued state run, so use this
|
||||
option sparingly.
|
||||
|
||||
.. versionchanged:: 3006.0
|
||||
This parameter can also be set via the ``state_queue`` configuration
|
||||
option. Additionally, it can now be set to an integer representing
|
||||
the maximum queue size which can be attained before the state runs
|
||||
will fail to be queued. This can prevent runaway conditions where
|
||||
new threads are started until system performance is hampered.
|
||||
|
||||
concurrent : False
|
||||
Execute state runs concurrently instead of serially
|
||||
|
||||
|
@ -1061,15 +1098,9 @@ def highstate(test=None, queue=False, **kwargs):
|
|||
}
|
||||
return ret
|
||||
|
||||
concurrent = kwargs.get("concurrent", False)
|
||||
|
||||
if queue:
|
||||
_wait(kwargs.get("__pub_jid"))
|
||||
else:
|
||||
conflict = running(concurrent)
|
||||
if conflict:
|
||||
__context__["retcode"] = salt.defaults.exitcodes.EX_STATE_COMPILER_ERROR
|
||||
return conflict
|
||||
conflict = _check_queue(queue, kwargs)
|
||||
if conflict is not None:
|
||||
return conflict
|
||||
|
||||
orig_test = __opts__.get("test", None)
|
||||
opts = salt.utils.state.get_sls_opts(__opts__, **kwargs)
|
||||
|
@ -1155,7 +1186,7 @@ def highstate(test=None, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def sls(mods, test=None, exclude=None, queue=False, sync_mods=None, **kwargs):
|
||||
def sls(mods, test=None, exclude=None, queue=None, sync_mods=None, **kwargs):
|
||||
"""
|
||||
Execute the states in one or more SLS files
|
||||
|
||||
|
@ -1198,11 +1229,19 @@ def sls(mods, test=None, exclude=None, queue=False, sync_mods=None, **kwargs):
|
|||
|
||||
queue : False
|
||||
Instead of failing immediately when another state run is in progress,
|
||||
queue the new state run to begin running once the other has finished.
|
||||
a value of ``True`` will queue the new state run to begin running once
|
||||
the other has finished.
|
||||
|
||||
This option starts a new thread for each queued state run, so use this
|
||||
option sparingly.
|
||||
|
||||
.. versionchanged:: 3006.0
|
||||
This parameter can also be set via the ``state_queue`` configuration
|
||||
option. Additionally, it can now be set to an integer representing
|
||||
the maximum queue size which can be attained before the state runs
|
||||
will fail to be queued. This can prevent runaway conditions where
|
||||
new threads are started until system performance is hampered.
|
||||
|
||||
concurrent : False
|
||||
Execute state runs concurrently instead of serially
|
||||
|
||||
|
@ -1279,14 +1318,10 @@ def sls(mods, test=None, exclude=None, queue=False, sync_mods=None, **kwargs):
|
|||
# "env" is not supported; Use "saltenv".
|
||||
kwargs.pop("env")
|
||||
|
||||
# Modification to __opts__ lost after this if-else
|
||||
if queue:
|
||||
_wait(kwargs.get("__pub_jid"))
|
||||
else:
|
||||
conflict = running(concurrent)
|
||||
if conflict:
|
||||
__context__["retcode"] = salt.defaults.exitcodes.EX_STATE_COMPILER_ERROR
|
||||
return conflict
|
||||
# Modification to __opts__ lost after this
|
||||
conflict = _check_queue(queue, kwargs)
|
||||
if conflict is not None:
|
||||
return conflict
|
||||
|
||||
if isinstance(mods, list):
|
||||
disabled = _disabled(mods)
|
||||
|
@ -1442,7 +1477,7 @@ def sls(mods, test=None, exclude=None, queue=False, sync_mods=None, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def top(topfn, test=None, queue=False, **kwargs):
|
||||
def top(topfn, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Execute a specific top file instead of the default. This is useful to apply
|
||||
configurations from a different environment (for example, dev or prod), without
|
||||
|
@ -1450,11 +1485,19 @@ def top(topfn, test=None, queue=False, **kwargs):
|
|||
|
||||
queue : False
|
||||
Instead of failing immediately when another state run is in progress,
|
||||
queue the new state run to begin running once the other has finished.
|
||||
a value of ``True`` will queue the new state run to begin running once
|
||||
the other has finished.
|
||||
|
||||
This option starts a new thread for each queued state run, so use this
|
||||
option sparingly.
|
||||
|
||||
.. versionchanged:: 3006.0
|
||||
This parameter can also be set via the ``state_queue`` configuration
|
||||
option. Additionally, it can now be set to an integer representing
|
||||
the maximum queue size which can be attained before the state runs
|
||||
will fail to be queued. This can prevent runaway conditions where
|
||||
new threads are started until system performance is hampered.
|
||||
|
||||
saltenv
|
||||
Specify a salt fileserver environment to be used when applying states
|
||||
|
||||
|
@ -1542,7 +1585,7 @@ def top(topfn, test=None, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_highstate(queue=False, **kwargs):
|
||||
def show_highstate(queue=None, **kwargs):
|
||||
"""
|
||||
Retrieve the highstate data from the salt master and display it
|
||||
|
||||
|
@ -1601,7 +1644,7 @@ def show_highstate(queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_lowstate(queue=False, **kwargs):
|
||||
def show_lowstate(queue=None, **kwargs):
|
||||
"""
|
||||
List out the low data that will be applied to this minion
|
||||
|
||||
|
@ -1638,7 +1681,7 @@ def show_lowstate(queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_state_usage(queue=False, **kwargs):
|
||||
def show_state_usage(queue=None, **kwargs):
|
||||
"""
|
||||
Retrieve the highstate data from the salt master to analyse used and unused states
|
||||
|
||||
|
@ -1672,7 +1715,7 @@ def show_state_usage(queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_states(queue=False, **kwargs):
|
||||
def show_states(queue=None, **kwargs):
|
||||
"""
|
||||
Returns the list of states that will be applied on highstate.
|
||||
|
||||
|
@ -1722,7 +1765,7 @@ def show_states(queue=False, **kwargs):
|
|||
return list(states.keys())
|
||||
|
||||
|
||||
def sls_id(id_, mods, test=None, queue=False, **kwargs):
|
||||
def sls_id(id_, mods, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Call a single ID from the named module(s) and handle all requisites
|
||||
|
||||
|
@ -1849,7 +1892,7 @@ def sls_id(id_, mods, test=None, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_low_sls(mods, test=None, queue=False, **kwargs):
|
||||
def show_low_sls(mods, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Display the low data from a specific sls. The default environment is
|
||||
``base``, use ``saltenv`` to specify a different environment.
|
||||
|
@ -1945,7 +1988,7 @@ def show_low_sls(mods, test=None, queue=False, **kwargs):
|
|||
return ret
|
||||
|
||||
|
||||
def show_sls(mods, test=None, queue=False, **kwargs):
|
||||
def show_sls(mods, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Display the state data from a specific sls or list of sls files on the
|
||||
master. The default environment is ``base``, use ``saltenv`` to specify a
|
||||
|
@ -2039,7 +2082,7 @@ def show_sls(mods, test=None, queue=False, **kwargs):
|
|||
return high_
|
||||
|
||||
|
||||
def sls_exists(mods, test=None, queue=False, **kwargs):
|
||||
def sls_exists(mods, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Tests for the existence the of a specific SLS or list of SLS files on the
|
||||
master. Similar to :py:func:`state.show_sls <salt.modules.state.show_sls>`,
|
||||
|
@ -2061,7 +2104,7 @@ def sls_exists(mods, test=None, queue=False, **kwargs):
|
|||
return isinstance(show_sls(mods, test=test, queue=queue, **kwargs), dict)
|
||||
|
||||
|
||||
def id_exists(ids, mods, test=None, queue=False, **kwargs):
|
||||
def id_exists(ids, mods, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Tests for the existence of a specific ID or list of IDs within the
|
||||
specified SLS file(s). Similar to :py:func:`state.sls_exists
|
||||
|
@ -2088,7 +2131,7 @@ def id_exists(ids, mods, test=None, queue=False, **kwargs):
|
|||
return ids.issubset(sls_ids)
|
||||
|
||||
|
||||
def show_top(queue=False, **kwargs):
|
||||
def show_top(queue=None, **kwargs):
|
||||
"""
|
||||
Return the top data that the minion will use for a highstate
|
||||
|
||||
|
@ -2130,7 +2173,7 @@ def show_top(queue=False, **kwargs):
|
|||
return matches
|
||||
|
||||
|
||||
def single(fun, name, test=None, queue=False, **kwargs):
|
||||
def single(fun, name, test=None, queue=None, **kwargs):
|
||||
"""
|
||||
Execute a single state function with the named kwargs, returns False if
|
||||
insufficient data is sent to the command
|
||||
|
|
|
@ -16,6 +16,7 @@ import salt.utils.args
|
|||
import salt.utils.functools
|
||||
import salt.utils.hashutils
|
||||
import salt.utils.platform
|
||||
import salt.utils.versions
|
||||
import salt.version
|
||||
from salt.utils.decorators import depends
|
||||
|
||||
|
@ -675,3 +676,27 @@ def raise_exception(name, *args, **kwargs):
|
|||
except AttributeError:
|
||||
log.error("No such exception: %s", name)
|
||||
return False
|
||||
|
||||
|
||||
def deprecation_warning():
|
||||
r"""
|
||||
Return True, but also produce two DeprecationWarnings. One by date, the
|
||||
other by the codename - release Oganesson, which should correspond to Salt
|
||||
3108.
|
||||
|
||||
CLI Example:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
salt \* test.deprecation_warning
|
||||
"""
|
||||
# This warn should always stay in Salt.
|
||||
salt.utils.versions.warn_until(
|
||||
"Oganesson",
|
||||
"This is a test deprecation warning by version.",
|
||||
)
|
||||
salt.utils.versions.warn_until_date(
|
||||
"30000101",
|
||||
"This is a test deprecation warning by date very far into the future ({date}).",
|
||||
)
|
||||
return True
|
||||
|
|
|
@ -111,7 +111,7 @@ import salt.utils.data
|
|||
import salt.utils.files
|
||||
import salt.utils.stringutils
|
||||
from salt.exceptions import CommandExecutionError
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
# pylint: disable=C0103
|
||||
|
||||
|
@ -122,7 +122,7 @@ try:
|
|||
import OpenSSL
|
||||
|
||||
HAS_SSL = True
|
||||
OpenSSL_version = _LooseVersion(OpenSSL.__dict__.get("__version__", "0.0"))
|
||||
OpenSSL_version = Version(OpenSSL.__dict__.get("__version__", "0.0"))
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
|
@ -138,14 +138,14 @@ def __virtual__():
|
|||
Only load this module if the ca config options are set
|
||||
"""
|
||||
global X509_EXT_ENABLED
|
||||
if HAS_SSL and OpenSSL_version >= _LooseVersion("0.10"):
|
||||
if OpenSSL_version < _LooseVersion("0.14"):
|
||||
if HAS_SSL and OpenSSL_version >= Version("0.10"):
|
||||
if OpenSSL_version < Version("0.14"):
|
||||
X509_EXT_ENABLED = False
|
||||
log.debug(
|
||||
"You should upgrade pyOpenSSL to at least 0.14.1 to "
|
||||
"enable the use of X509 extensions in the tls module"
|
||||
)
|
||||
elif OpenSSL_version <= _LooseVersion("0.15"):
|
||||
elif OpenSSL_version <= Version("0.15"):
|
||||
log.debug(
|
||||
"You should upgrade pyOpenSSL to at least 0.15.1 to "
|
||||
"enable the full use of X509 extensions in the tls module"
|
||||
|
|
|
@ -7,7 +7,7 @@ import base64
|
|||
import urllib.parse
|
||||
|
||||
import salt.utils.json
|
||||
from salt.utils.versions import LooseVersion as _LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
try:
|
||||
import OpenSSL
|
||||
|
@ -30,8 +30,8 @@ def __virtual__():
|
|||
OPENSSL_MIN_VER
|
||||
),
|
||||
)
|
||||
cur_version = _LooseVersion(OpenSSL.__version__)
|
||||
min_version = _LooseVersion(OPENSSL_MIN_VER)
|
||||
cur_version = Version(OpenSSL.__version__)
|
||||
min_version = Version(OPENSSL_MIN_VER)
|
||||
if cur_version < min_version:
|
||||
return (
|
||||
False,
|
||||
|
|
|
@ -65,7 +65,7 @@ from salt.exceptions import (
|
|||
SaltInvocationError,
|
||||
SaltRenderError,
|
||||
)
|
||||
from salt.utils.versions import LooseVersion
|
||||
from salt.utils.versions import Version
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
@ -2356,7 +2356,7 @@ def _reverse_cmp_pkg_versions(pkg1, pkg2):
|
|||
"""
|
||||
Compare software package versions
|
||||
"""
|
||||
return 1 if LooseVersion(pkg1) > LooseVersion(pkg2) else -1
|
||||
return 1 if Version(pkg1) > Version(pkg2) else -1
|
||||
|
||||
|
||||
def _get_latest_pkg_version(pkginfo):
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue