mirror of
https://github.com/saltstack/salt-bootstrap.git
synced 2025-04-15 17:20:20 +00:00
Merge develop into stable(auto resolving conflicts to the develop version)
This commit is contained in:
commit
23931c8522
28 changed files with 4360 additions and 1281 deletions
37
.github/workflows/checksums.yml
vendored
37
.github/workflows/checksums.yml
vendored
|
@ -1,37 +0,0 @@
|
|||
name: Checksums
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- stable
|
||||
|
||||
jobs:
|
||||
checksums:
|
||||
name: Update Scripts Checksums
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
with:
|
||||
ref: stable
|
||||
|
||||
- name: Get bootstrap-salt.sh sha256sum
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
run: |
|
||||
echo "SH=$(sha256sum bootstrap-salt.sh | awk '{ print $1 }')" >> $GITHUB_ENV
|
||||
echo "PS1=$(sha256sum bootstrap-salt.ps1 | awk '{ print $1 }')" >> $GITHUB_ENV
|
||||
echo "BS_VERSION=$(sh bootstrap-salt.sh -v | awk '{ print $4 }')" >> $GITHUB_ENV
|
||||
|
||||
- name: Update Checksums
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
run: |
|
||||
echo ${{ env.SH }} > bootstrap-salt.sh.sha256
|
||||
echo ${{ env.PS1 }} > bootstrap-salt.ps1.sha256
|
||||
|
||||
- name: Create Pull Request Against Master
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
with:
|
||||
title: Update sha256 checksums
|
||||
commit-message: Update sha256 checksums
|
||||
delete-branch: true
|
568
.github/workflows/ci.yml
vendored
Normal file
568
.github/workflows/ci.yml
vendored
Normal file
|
@ -0,0 +1,568 @@
|
|||
name: CI
|
||||
on:
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
concurrency:
|
||||
# If changes are pushed to a PR, stop all running workflows before starting new ones
|
||||
group: ${{ github.head_ref || (github.repository == 'saltstack/salt-bootstrap' && github.run_id || github.ref_name) }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
|
||||
collect-changed-files:
|
||||
name: Collect changed files
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
run-tests: ${{ steps.set-output.outputs.run-tests }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get specific changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v25
|
||||
with:
|
||||
separator: ","
|
||||
files: |
|
||||
bootstrap-salt.*
|
||||
Gemfile
|
||||
kitchen*.yml
|
||||
tests/**
|
||||
.github/workflows/**
|
||||
files_ignore: |
|
||||
.github/workflows/release.yml
|
||||
|
||||
- name: Set Job Output
|
||||
id: set-output
|
||||
run: |
|
||||
echo "::set-output name=run-tests::${{ steps.changed-files.outputs.any_modified }}"
|
||||
|
||||
generate-actions-workflow:
|
||||
name: Generate The Actions Workflow
|
||||
runs-on: ubuntu-latest
|
||||
needs: collect-changed-files
|
||||
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Pre-Commit
|
||||
run: |
|
||||
python3 -m pip install -U pip
|
||||
python3 -m pip install pre-commit
|
||||
pre-commit install --install-hooks
|
||||
|
||||
- name: Generate Workflow Actions
|
||||
run: |
|
||||
pre-commit run -av generate-actions-workflow
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
||||
|
||||
lint:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
needs: collect-changed-files
|
||||
container: koalaman/shellcheck-alpine:v0.6.0
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: ShellCheck
|
||||
run: |
|
||||
shellcheck -s sh -f tty bootstrap-salt.sh
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
||||
|
||||
|
||||
freebsd-131:
|
||||
name: FreeBSD 13.1
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-bsd.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: freebsd-131
|
||||
display-name: FreeBSD 13.1
|
||||
timeout: 20
|
||||
runs-on: macos-10.15
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
freebsd-123:
|
||||
name: FreeBSD 12.3
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-bsd.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: freebsd-123
|
||||
display-name: FreeBSD 12.3
|
||||
timeout: 20
|
||||
runs-on: macos-10.15
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
openbsd-6:
|
||||
name: OpenBSD 6
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-bsd.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: openbsd-6
|
||||
display-name: OpenBSD 6
|
||||
timeout: 20
|
||||
runs-on: macos-10.15
|
||||
instances: '["latest"]'
|
||||
|
||||
|
||||
|
||||
macos-1015:
|
||||
name: macOS 10.15
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-macos.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: macos-1015
|
||||
display-name: macOS 10.15
|
||||
timeout: 20
|
||||
runs-on: macos-10.15
|
||||
instances: '["stable-3003", "stable-3004", "latest"]'
|
||||
|
||||
|
||||
macos-11:
|
||||
name: macOS 11
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-macos.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: macos-11
|
||||
display-name: macOS 11
|
||||
timeout: 20
|
||||
runs-on: macos-11
|
||||
instances: '["stable-3003", "stable-3004", "latest"]'
|
||||
|
||||
|
||||
macos-12:
|
||||
name: macOS 12
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-macos.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: macos-12
|
||||
display-name: macOS 12
|
||||
timeout: 20
|
||||
runs-on: macos-12
|
||||
instances: '["stable-3003", "stable-3004", "latest"]'
|
||||
|
||||
|
||||
|
||||
windows-2019:
|
||||
name: Windows 2019
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-windows.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: windows-2019
|
||||
display-name: Windows 2019
|
||||
timeout: 20
|
||||
runs-on: windows-2019
|
||||
instances: '["stable-3003", "stable-3004", "latest"]'
|
||||
|
||||
|
||||
windows-2022:
|
||||
name: Windows 2022
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-windows.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: windows-2022
|
||||
display-name: Windows 2022
|
||||
timeout: 20
|
||||
runs-on: windows-2022
|
||||
instances: '["stable-3003", "stable-3004", "latest"]'
|
||||
|
||||
|
||||
|
||||
almalinux-8:
|
||||
name: AlmaLinux 8
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: almalinux-8
|
||||
display-name: AlmaLinux 8
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
amazon-2:
|
||||
name: Amazon 2
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: amazon-2
|
||||
display-name: Amazon 2
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "stable-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
arch:
|
||||
name: Arch
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: arch
|
||||
display-name: Arch
|
||||
timeout: 20
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
centos-7:
|
||||
name: CentOS 7
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: centos-7
|
||||
display-name: CentOS 7
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
centos-stream8:
|
||||
name: CentOS Stream 8
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: centos-stream8
|
||||
display-name: CentOS Stream 8
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
debian-10:
|
||||
name: Debian 10
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: debian-10
|
||||
display-name: Debian 10
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "stable-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
debian-11:
|
||||
name: Debian 11
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: debian-11
|
||||
display-name: Debian 11
|
||||
timeout: 20
|
||||
instances: '["stable-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
debian-9:
|
||||
name: Debian 9
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: debian-9
|
||||
display-name: Debian 9
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
fedora-35:
|
||||
name: Fedora 35
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: fedora-35
|
||||
display-name: Fedora 35
|
||||
timeout: 20
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
fedora-36:
|
||||
name: Fedora 36
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: fedora-36
|
||||
display-name: Fedora 36
|
||||
timeout: 20
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
gentoo:
|
||||
name: Gentoo
|
||||
if: github.event_name == 'push'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: gentoo
|
||||
display-name: Gentoo
|
||||
timeout: 90
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
gentoo-systemd:
|
||||
name: Gentoo (systemd)
|
||||
if: github.event_name == 'push'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: gentoo-systemd
|
||||
display-name: Gentoo (systemd)
|
||||
timeout: 90
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
opensuse-15:
|
||||
name: Opensuse 15
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: opensuse-15
|
||||
display-name: Opensuse 15
|
||||
timeout: 20
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
opensuse-tumbleweed:
|
||||
name: Opensuse Tumbleweed
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: opensuse-tumbleweed
|
||||
display-name: Opensuse Tumbleweed
|
||||
timeout: 20
|
||||
instances: '["git-master", "latest"]'
|
||||
|
||||
|
||||
oraclelinux-7:
|
||||
name: Oracle Linux 7
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: oraclelinux-7
|
||||
display-name: Oracle Linux 7
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
oraclelinux-8:
|
||||
name: Oracle Linux 8
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: oraclelinux-8
|
||||
display-name: Oracle Linux 8
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
rockylinux-8:
|
||||
name: Rocky Linux 8
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: rockylinux-8
|
||||
display-name: Rocky Linux 8
|
||||
timeout: 20
|
||||
instances: '["stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
ubuntu-1804:
|
||||
name: Ubuntu 18.04
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: ubuntu-1804
|
||||
display-name: Ubuntu 18.04
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "git-3003", "stable-3004", "git-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
ubuntu-2004:
|
||||
name: Ubuntu 20.04
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: ubuntu-2004
|
||||
display-name: Ubuntu 20.04
|
||||
timeout: 20
|
||||
instances: '["stable-3003", "stable-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
ubuntu-2204:
|
||||
name: Ubuntu 22.04
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
uses: ./.github/workflows/test-linux.yml
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: ubuntu-2204
|
||||
display-name: Ubuntu 22.04
|
||||
timeout: 20
|
||||
instances: '["stable-3004", "git-master", "latest"]'
|
||||
|
||||
|
||||
set-pipeline-exit-status:
|
||||
# This step is just so we can make github require this step, to pass checks
|
||||
# on a pull request instead of requiring all
|
||||
name: Set the ${{ github.workflow }} Pipeline Exit Status
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- macos-1015
|
||||
- macos-11
|
||||
- macos-12
|
||||
- windows-2019
|
||||
- windows-2022
|
||||
- almalinux-8
|
||||
- amazon-2
|
||||
- arch
|
||||
- centos-7
|
||||
- centos-stream8
|
||||
- debian-10
|
||||
- debian-11
|
||||
- debian-9
|
||||
- fedora-35
|
||||
- fedora-36
|
||||
- gentoo
|
||||
- gentoo-systemd
|
||||
- opensuse-15
|
||||
- opensuse-tumbleweed
|
||||
- oraclelinux-7
|
||||
- oraclelinux-8
|
||||
- rockylinux-8
|
||||
- ubuntu-1804
|
||||
- ubuntu-2004
|
||||
- ubuntu-2204
|
||||
if: always()
|
||||
steps:
|
||||
|
||||
- name: Download Exit Status Files
|
||||
if: always()
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
||||
|
||||
- name: Delete Exit Status Artifacts
|
||||
if: always()
|
||||
uses: geekyeggo/delete-artifact@v1
|
||||
with:
|
||||
name: exitstatus
|
||||
failOnError: false
|
||||
|
||||
- name: Set Pipeline Exit Status
|
||||
run: |
|
||||
grep -RE 'failure|cancelled' exitstatus/ && exit 1 || exit 0
|
||||
|
||||
- name: Done
|
||||
if: always()
|
||||
run:
|
||||
echo "All worflows finished"
|
271
.github/workflows/release.yml
vendored
271
.github/workflows/release.yml
vendored
|
@ -1,81 +1,292 @@
|
|||
name: Release
|
||||
name: Cut Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*'
|
||||
on: workflow_dispatch
|
||||
|
||||
jobs:
|
||||
bootstrap:
|
||||
name: Update Release Checksums on Develop
|
||||
update-develop:
|
||||
name: Update CHANGELOG.md and bootstrap-salt.sh
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
permissions:
|
||||
contents: write # To be able to publish the release
|
||||
environment: Release
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
- name: Check For Admin Permission
|
||||
uses: actions-cool/check-user-permission@v2
|
||||
with:
|
||||
require: admin
|
||||
username: ${{ github.triggering_actor }}
|
||||
|
||||
- name: Check Branch Triggering Release
|
||||
run: |
|
||||
if [ "${{ github.ref_name }}" != "develop" ]
|
||||
then
|
||||
echo "This workflow should only be triggered from the develop branch"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: develop
|
||||
repository: ${{ github.repository }}
|
||||
ssh-key: ${{ secrets.SALT_BOOTSTRAP_RELEASE_KEY }}
|
||||
|
||||
- name: Update Git Settings
|
||||
run: |
|
||||
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot] on behalf of ${{ github.event.sender.login }}"
|
||||
|
||||
- name: Set up Python 3.7
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Requirements
|
||||
run: |
|
||||
python3 -m pip install requests pre-commit
|
||||
pre-commit install --install-hooks
|
||||
|
||||
- name: Update Repository
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
python3 .github/workflows/scripts/cut-release.py --repo ${{ github.repository }}
|
||||
export CUT_RELEASE_VERSION=$(cat .cut_release_version)
|
||||
echo "CUT_RELEASE_VERSION=${CUT_RELEASE_VERSION}" >> $GITHUB_ENV
|
||||
|
||||
- name: Show Changes
|
||||
run: |
|
||||
git status
|
||||
git diff
|
||||
|
||||
- name: Commit Changes
|
||||
run: |
|
||||
git commit -am "Update develop branch for the ${CUT_RELEASE_VERSION} release" || \
|
||||
git commit -am "Update develop branch for the ${CUT_RELEASE_VERSION} release"
|
||||
|
||||
- name: Push Changes
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
branch: develop
|
||||
ssh: true
|
||||
|
||||
- name: Upload Release Details
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: release-details
|
||||
path: |
|
||||
.cut_release_version
|
||||
.cut_release_changes
|
||||
|
||||
merge-develop-into-stable:
|
||||
name: Merge develop into stable
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
needs: update-develop
|
||||
environment: Release
|
||||
permissions:
|
||||
contents: write # To be able to publish the release
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: stable
|
||||
repository: ${{ github.repository }}
|
||||
ssh-key: ${{ secrets.SALT_BOOTSTRAP_RELEASE_KEY }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get bootstrap-salt.sh sha256sum
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
- name: Update Git Settings
|
||||
run: |
|
||||
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot] on behalf of @${{ github.event.sender.login }}"
|
||||
|
||||
- name: Download Release Details
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: release-details
|
||||
|
||||
- name: Update Environment
|
||||
run: |
|
||||
export CUT_RELEASE_VERSION=$(cat .cut_release_version)
|
||||
echo "CUT_RELEASE_VERSION=${CUT_RELEASE_VERSION}" >> $GITHUB_ENV
|
||||
|
||||
- name: Merge develop into stable
|
||||
run: |
|
||||
git merge --no-ff -m "Merge develop into stable" origin/develop || touch .git-conflicts
|
||||
if [ -f .git-conflicts ]
|
||||
then
|
||||
git diff
|
||||
for f in $(git status | grep 'both modified' | awk '{ print $3 }')
|
||||
do
|
||||
git checkout --theirs $f
|
||||
git add $f
|
||||
done
|
||||
git commit -a -m "Merge develop into stable(auto resolving conflicts to the develop version)"
|
||||
fi
|
||||
|
||||
- name: Tag Release
|
||||
uses: mathieudutour/github-tag-action@v6.0
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
custom_tag: ${{ env.CUT_RELEASE_VERSION }}
|
||||
tag_prefix: ""
|
||||
create_annotated_tag: true
|
||||
|
||||
- name: Push Changes
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
branch: stable
|
||||
tags: true
|
||||
ssh: true
|
||||
|
||||
publish-release:
|
||||
name: Create GitHub Release
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
needs: merge-develop-into-stable
|
||||
environment: Release
|
||||
permissions:
|
||||
contents: write # To be able to publish the release
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: stable
|
||||
repository: ${{ github.repository }}
|
||||
ssh-key: ${{ secrets.SALT_BOOTSTRAP_RELEASE_KEY }}
|
||||
- name: Download Release Details
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: release-details
|
||||
|
||||
- name: Update Environment
|
||||
run: |
|
||||
export CUT_RELEASE_VERSION=$(cat .cut_release_version)
|
||||
echo "CUT_RELEASE_VERSION=${CUT_RELEASE_VERSION}" >> $GITHUB_ENV
|
||||
|
||||
- name: Create Github Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
name: ${{ env.CUT_RELEASE_VERSION }}
|
||||
tag_name: ${{ env.CUT_RELEASE_VERSION }}
|
||||
body_path: .cut_release_changes
|
||||
target_commitish: stable
|
||||
draft: false
|
||||
prerelease: false
|
||||
generate_release_notes: false
|
||||
files: |
|
||||
bootstrap-salt.sh
|
||||
bootstrap-salt.ps1
|
||||
LICENSE
|
||||
|
||||
- name: Delete Release Details Artifact
|
||||
uses: geekyeggo/delete-artifact@v1
|
||||
with:
|
||||
name: release-details
|
||||
failOnError: false
|
||||
|
||||
update-develop-checksums:
|
||||
name: Update Release Checksums on Develop
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
needs: publish-release
|
||||
environment: Release
|
||||
permissions:
|
||||
contents: write # For action peter-evans/create-pull-request
|
||||
pull-requests: write # For action peter-evans/create-pull-request
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: stable
|
||||
repository: ${{ github.repository }}
|
||||
ssh-key: ${{ secrets.SALT_BOOTSTRAP_RELEASE_KEY }}
|
||||
|
||||
- name: Get bootstrap-salt.sh on stable branch sha256sum
|
||||
run: |
|
||||
echo "SH=$(sha256sum bootstrap-salt.sh | awk '{ print $1 }')" >> $GITHUB_ENV
|
||||
echo "BS_VERSION=$(sh bootstrap-salt.sh -v | awk '{ print $4 }')" >> $GITHUB_ENV
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: develop
|
||||
repository: ${{ github.repository }}
|
||||
ssh-key: ${{ secrets.SALT_BOOTSTRAP_RELEASE_KEY }}
|
||||
|
||||
- name: Update Git Settings
|
||||
run: |
|
||||
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot] on behalf of @${{ github.event.sender.login }}"
|
||||
|
||||
- name: Set up Python 3.7
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
uses: actions/setup-python@v1
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.7
|
||||
|
||||
- name: Update Latest Release on README
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
run: |
|
||||
python3 .github/workflows/scripts/update-release-shasum.py ${{ env.BS_VERSION }} ${{ env.SH }}
|
||||
|
||||
- name: Create Pull Request Against Develop
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
- name: Show Changes
|
||||
run: |
|
||||
git status
|
||||
git diff
|
||||
|
||||
- name: Commit Changes
|
||||
run: |
|
||||
git commit -am "Update README.rst with ${{ env.BS_VERSION }} release sha256sum" || \
|
||||
git commit -am "Update README.rst with ${{ env.BS_VERSION }} release sha256sum"
|
||||
|
||||
- name: Push Changes
|
||||
uses: ad-m/github-push-action@master
|
||||
with:
|
||||
title: Update README.rst with ${{ env.BS_VERSION }} release sha256sum
|
||||
commit-message: Update README.rst with ${{ env.BS_VERSION }} release sha256sum
|
||||
delete-branch: true
|
||||
repository: ${{ github.repository }}
|
||||
branch: develop
|
||||
ssh: true
|
||||
|
||||
|
||||
salt:
|
||||
name: Update Release on Salt Repo
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
needs: update-develop-checksums
|
||||
environment: Open PR Against Salt
|
||||
permissions:
|
||||
contents: write # For action peter-evans/create-pull-request
|
||||
pull-requests: write # For action peter-evans/create-pull-request
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: stable
|
||||
repository: ${{ github.repository }}
|
||||
|
||||
- name: Get bootstrap version
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
run: |
|
||||
echo "BS_VERSION=$(sh bootstrap-salt.sh -v | awk '{ print $4 }')" >> $GITHUB_ENV
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: saltstack/salt
|
||||
ref: master
|
||||
path: salt-checkout
|
||||
token: ${{ secrets.SALT_REPO_WRITE_TOKEN }}
|
||||
|
||||
- name: Update Git Settings
|
||||
run: |
|
||||
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot] on behalf of @${{ github.event.sender.login }}"
|
||||
|
||||
- name: Update bootstrap script on Salt
|
||||
if: github.repository == 'saltstack/salt-bootstrap'
|
||||
run: |
|
||||
cp bootstrap-salt.sh salt-checkout/salt/cloud/deploy/bootstrap-salt.sh
|
||||
|
||||
- name: Create Pull Request Against Develop
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
uses: peter-evans/create-pull-request@v4
|
||||
with:
|
||||
title: Update the bootstrap script to v${{ env.BS_VERSION }}
|
||||
title: "Update the bootstrap script to v${{ env.BS_VERSION }}"
|
||||
path: salt-checkout
|
||||
base: master
|
||||
token: ${{ secrets.SALT_REPO_WRITE_TOKEN }}
|
||||
commit-message: Update the bootstrap script to v${{ env.BS_VERSION }}
|
||||
delete-branch: true
|
||||
|
|
203
.github/workflows/scripts/cut-release.py
vendored
Normal file
203
.github/workflows/scripts/cut-release.py
vendored
Normal file
|
@ -0,0 +1,203 @@
|
|||
#!/usr/bin/env python
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
import pathlib
|
||||
import argparse
|
||||
import requests
|
||||
from datetime import datetime
|
||||
|
||||
REPO_ROOT = pathlib.Path(__file__).resolve().parent.parent.parent.parent
|
||||
|
||||
|
||||
class ClassPropertyDescriptor:
|
||||
def __init__(self, fget, fset=None):
|
||||
self.fget = fget
|
||||
self.fset = fset
|
||||
|
||||
def __get__(self, obj, klass=None):
|
||||
if klass is None:
|
||||
klass = type(obj)
|
||||
return self.fget.__get__(obj, klass)()
|
||||
|
||||
def __set__(self, obj, value):
|
||||
if not self.fset:
|
||||
raise AttributeError("can't set attribute")
|
||||
type_ = type(obj)
|
||||
return self.fset.__get__(obj, type_)(value)
|
||||
|
||||
def setter(self, func):
|
||||
if not isinstance(func, (classmethod, staticmethod)):
|
||||
func = classmethod(func)
|
||||
self.fset = func
|
||||
return self
|
||||
|
||||
|
||||
def classproperty(func):
|
||||
if not isinstance(func, (classmethod, staticmethod)):
|
||||
func = classmethod(func)
|
||||
|
||||
return ClassPropertyDescriptor(func)
|
||||
|
||||
|
||||
class Session:
|
||||
|
||||
_instance = None
|
||||
|
||||
def __init__(self, endpoint=None):
|
||||
if endpoint is None:
|
||||
endpoint = "https://api.github.com"
|
||||
self.endpoint = endpoint
|
||||
self.session = requests.Session()
|
||||
self.session.headers.update(
|
||||
{
|
||||
"Accept": "application/vnd.github+json",
|
||||
"Authorization": f"token {os.environ['GITHUB_TOKEN']}",
|
||||
}
|
||||
)
|
||||
|
||||
@classproperty
|
||||
def instance(cls):
|
||||
if cls._instance is None:
|
||||
cls._instance = cls()
|
||||
return cls._instance
|
||||
|
||||
def get(self, path, **kwargs):
|
||||
return self.session.get(f"{self.endpoint}/{path.lstrip('/')}", **kwargs)
|
||||
|
||||
def post(self, path, **kwargs):
|
||||
return self.session.post(f"{self.endpoint}/{path.lstrip('/')}", **kwargs)
|
||||
|
||||
def __enter__(self):
|
||||
self.session.__enter__()
|
||||
return self
|
||||
|
||||
def __exit__(self, *args):
|
||||
self.session.__exit__(*args)
|
||||
|
||||
|
||||
def get_latest_release(options):
|
||||
response = Session.instance.get(f"/repos/{options.repo}/releases/latest")
|
||||
if response.status_code != 404:
|
||||
return response.json()["tag_name"]
|
||||
|
||||
print(
|
||||
f"Failed to get latest release. HTTP Response:\n{response.text}",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
print("Searching tags...", file=sys.stderr, flush=True)
|
||||
|
||||
tags = []
|
||||
page = 0
|
||||
while True:
|
||||
page += 1
|
||||
response = Session.instance.get(
|
||||
f"/repos/{options.repo}/tags", data={"pre_page": 100, "page": page}
|
||||
)
|
||||
repo_tags = response.json()
|
||||
added_tags = False
|
||||
for tag in repo_tags:
|
||||
if tag["name"] not in tags:
|
||||
tags.append(tag["name"])
|
||||
added_tags = True
|
||||
if added_tags is False:
|
||||
break
|
||||
|
||||
return list(sorted(tags))[-1]
|
||||
|
||||
|
||||
def get_generated_changelog(options):
|
||||
response = Session.instance.post(
|
||||
f"/repos/{options.repo}/releases/generate-notes",
|
||||
json={
|
||||
"tag_name": options.release_tag,
|
||||
"previous_tag_name": options.previous_tag,
|
||||
"target_commitish": "develop",
|
||||
},
|
||||
)
|
||||
if response.status_code == 200:
|
||||
return response.json()
|
||||
return response.text
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--repo", required=True, help="The <user>/<repo> to use")
|
||||
parser.add_argument("--release-tag", required=False, help="The tag of the release")
|
||||
parser.add_argument(
|
||||
"--previous-tag",
|
||||
required=False,
|
||||
help="The previous release tag. If not passed, the GH Api will be queried for it.",
|
||||
)
|
||||
|
||||
changelog_file = REPO_ROOT / "CHANGELOG.md"
|
||||
|
||||
if not os.environ.get("GITHUB_TOKEN"):
|
||||
parser.exit(status=1, message="GITHUB_TOKEN environment variable not set")
|
||||
|
||||
options = parser.parse_args()
|
||||
if not options.release_tag:
|
||||
options.release_tag = f"v{datetime.utcnow().strftime('%Y.%m.%d')}"
|
||||
if not options.previous_tag:
|
||||
options.previous_tag = get_latest_release(options)
|
||||
|
||||
print(
|
||||
f"Creating changelog entries from {options.previous_tag} to {options.release_tag} ...",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
|
||||
changelog = get_generated_changelog(options)
|
||||
if not isinstance(changelog, dict):
|
||||
parser.exit(
|
||||
status=1,
|
||||
message=f"Unable to generate changelog. HTTP Response:\n{changelog}",
|
||||
)
|
||||
|
||||
cut_release_version = REPO_ROOT / ".cut_release_version"
|
||||
print(
|
||||
f"* Writing {cut_release_version.relative_to(REPO_ROOT)} ...",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
cut_release_version.write_text(options.release_tag)
|
||||
|
||||
cut_release_changes = REPO_ROOT / ".cut_release_changes"
|
||||
print(
|
||||
f"* Writing {cut_release_changes.relative_to(REPO_ROOT)} ...",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
cut_release_changes.write_text(changelog["body"])
|
||||
|
||||
print(
|
||||
f"* Updating {changelog_file.relative_to(REPO_ROOT)} ...",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
changelog_file.write_text(
|
||||
f"# {changelog['name']}\n\n"
|
||||
+ changelog["body"]
|
||||
+ "\n\n"
|
||||
+ changelog_file.read_text()
|
||||
)
|
||||
|
||||
bootstrap_script_path = REPO_ROOT / "bootstrap-salt.sh"
|
||||
print(
|
||||
f"* Updating {bootstrap_script_path.relative_to(REPO_ROOT)} ...",
|
||||
file=sys.stderr,
|
||||
flush=True,
|
||||
)
|
||||
bootstrap_script_path.write_text(
|
||||
re.sub(
|
||||
r'__ScriptVersion="(.*)"',
|
||||
f'__ScriptVersion="{options.release_tag.lstrip("v")}"',
|
||||
bootstrap_script_path.read_text(),
|
||||
)
|
||||
)
|
||||
parser.exit(status=0, message="CHANGELOG.md and bootstrap-salt.sh updated\n")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
|
@ -1,6 +1,7 @@
|
|||
#!/usr/bin/env python
|
||||
import sys
|
||||
import pathlib
|
||||
import subprocess
|
||||
|
||||
THIS_FILE = pathlib.Path(__file__).resolve()
|
||||
CODE_ROOT = THIS_FILE.parent.parent.parent.parent
|
||||
|
@ -9,6 +10,9 @@ README_PATH = CODE_ROOT / "README.rst"
|
|||
|
||||
def main(version, sha256sum):
|
||||
in_contents = README_PATH.read_text()
|
||||
if version in in_contents:
|
||||
print(f"README file already contains an entry for version {version}")
|
||||
sys.exit(1)
|
||||
out_contents = ""
|
||||
found_anchor = False
|
||||
updated_version = False
|
||||
|
@ -32,6 +36,14 @@ def main(version, sha256sum):
|
|||
if in_contents != out_contents:
|
||||
README_PATH.write_text(out_contents)
|
||||
|
||||
ret = subprocess.run(
|
||||
["git", "diff", "--stat"], universal_newlines=True, capture_output=True
|
||||
)
|
||||
if "1 file changed, 1 insertion(+)" not in ret.stdout:
|
||||
print("Too Many Changes to the readme file")
|
||||
sys.exit(1)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main(sys.argv[1], sys.argv[2])
|
||||
|
|
33
.github/workflows/templates/ci-tail.yml
vendored
Normal file
33
.github/workflows/templates/ci-tail.yml
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
|
||||
set-pipeline-exit-status:
|
||||
# This step is just so we can make github require this step, to pass checks
|
||||
# on a pull request instead of requiring all
|
||||
name: Set the ${{{{ github.workflow }}}} Pipeline Exit Status
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
{needs}
|
||||
if: always()
|
||||
steps:
|
||||
|
||||
- name: Download Exit Status Files
|
||||
if: always()
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
||||
|
||||
- name: Delete Exit Status Artifacts
|
||||
if: always()
|
||||
uses: geekyeggo/delete-artifact@v1
|
||||
with:
|
||||
name: exitstatus
|
||||
failOnError: false
|
||||
|
||||
- name: Set Pipeline Exit Status
|
||||
run: |
|
||||
grep -RE 'failure|cancelled' exitstatus/ && exit 1 || exit 0
|
||||
|
||||
- name: Done
|
||||
if: always()
|
||||
run:
|
||||
echo "All worflows finished"
|
102
.github/workflows/templates/ci.yml
vendored
Normal file
102
.github/workflows/templates/ci.yml
vendored
Normal file
|
@ -0,0 +1,102 @@
|
|||
name: CI
|
||||
on:
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
concurrency:
|
||||
# If changes are pushed to a PR, stop all running workflows before starting new ones
|
||||
group: ${{ github.head_ref || (github.repository == 'saltstack/salt-bootstrap' && github.run_id || github.ref_name) }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
|
||||
collect-changed-files:
|
||||
name: Collect changed files
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
run-tests: ${{ steps.set-output.outputs.run-tests }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get specific changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v25
|
||||
with:
|
||||
separator: ","
|
||||
files: |
|
||||
bootstrap-salt.*
|
||||
Gemfile
|
||||
kitchen*.yml
|
||||
tests/**
|
||||
.github/workflows/**
|
||||
files_ignore: |
|
||||
.github/workflows/release.yml
|
||||
|
||||
- name: Set Job Output
|
||||
id: set-output
|
||||
run: |
|
||||
echo "::set-output name=run-tests::${{ steps.changed-files.outputs.any_modified }}"
|
||||
|
||||
generate-actions-workflow:
|
||||
name: Generate The Actions Workflow
|
||||
runs-on: ubuntu-latest
|
||||
needs: collect-changed-files
|
||||
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Pre-Commit
|
||||
run: |
|
||||
python3 -m pip install -U pip
|
||||
python3 -m pip install pre-commit
|
||||
pre-commit install --install-hooks
|
||||
|
||||
- name: Generate Workflow Actions
|
||||
run: |
|
||||
pre-commit run -av generate-actions-workflow
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
||||
|
||||
lint:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
needs: collect-changed-files
|
||||
container: koalaman/shellcheck-alpine:v0.6.0
|
||||
if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: ShellCheck
|
||||
run: |
|
||||
shellcheck -s sh -f tty bootstrap-salt.sh
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
436
.github/workflows/templates/generate.py
vendored
436
.github/workflows/templates/generate.py
vendored
|
@ -1,6 +1,8 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
import os
|
||||
import json
|
||||
import pathlib
|
||||
import datetime
|
||||
|
||||
os.chdir(os.path.abspath(os.path.dirname(__file__)))
|
||||
|
@ -14,7 +16,6 @@ LINUX_DISTROS = [
|
|||
"debian-10",
|
||||
"debian-11",
|
||||
"debian-9",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -26,10 +27,23 @@ LINUX_DISTROS = [
|
|||
"rockylinux-8",
|
||||
"ubuntu-1804",
|
||||
"ubuntu-2004",
|
||||
"ubuntu-2110",
|
||||
"ubuntu-2204",
|
||||
]
|
||||
OSX = WINDOWS = []
|
||||
WINDOWS = [
|
||||
"windows-2019",
|
||||
"windows-2022",
|
||||
]
|
||||
|
||||
OSX = [
|
||||
"macos-1015",
|
||||
"macos-11",
|
||||
"macos-12",
|
||||
]
|
||||
BSD = [
|
||||
"freebsd-131",
|
||||
"freebsd-123",
|
||||
"openbsd-6",
|
||||
]
|
||||
|
||||
STABLE_DISTROS = [
|
||||
"almalinux-8",
|
||||
|
@ -40,7 +54,6 @@ STABLE_DISTROS = [
|
|||
"debian-10",
|
||||
"debian-11",
|
||||
"debian-9",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -52,50 +65,12 @@ STABLE_DISTROS = [
|
|||
"rockylinux-8",
|
||||
"ubuntu-1804",
|
||||
"ubuntu-2004",
|
||||
"ubuntu-2110",
|
||||
"ubuntu-2204",
|
||||
]
|
||||
|
||||
BLACKLIST_3002 = [
|
||||
"almalinux-8",
|
||||
"arch",
|
||||
"centos-stream8",
|
||||
"debian-11",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
"gentoo-systemd",
|
||||
"opensuse-15",
|
||||
"opensuse-tumbleweed",
|
||||
"rockylinux-8",
|
||||
"ubuntu-2204",
|
||||
]
|
||||
|
||||
BLACKLIST_GIT_3002 = [
|
||||
"almalinux-8",
|
||||
"amazon-2",
|
||||
"arch",
|
||||
"centos-stream8",
|
||||
"debian-10",
|
||||
"debian-11",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
"gentoo-systemd",
|
||||
"opensuse-15",
|
||||
"opensuse-tumbleweed",
|
||||
"rockylinux-8",
|
||||
"ubuntu-2004",
|
||||
"ubuntu-2110",
|
||||
"ubuntu-2204",
|
||||
]
|
||||
|
||||
BLACKLIST_3003 = [
|
||||
"arch",
|
||||
"debian-11",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -111,7 +86,6 @@ BLACKLIST_GIT_3003 = [
|
|||
"arch",
|
||||
"debian-10",
|
||||
"debian-11",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -126,7 +100,6 @@ BLACKLIST_GIT_3003 = [
|
|||
|
||||
BLACKLIST_3004 = [
|
||||
"arch",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -140,7 +113,6 @@ BLACKLIST_GIT_3004 = [
|
|||
"arch",
|
||||
"debian-10",
|
||||
"debian-11",
|
||||
"fedora-34",
|
||||
"fedora-35",
|
||||
"fedora-36",
|
||||
"gentoo",
|
||||
|
@ -152,23 +124,21 @@ BLACKLIST_GIT_3004 = [
|
|||
"ubuntu-2204",
|
||||
]
|
||||
|
||||
SALT_BRANCHES = [
|
||||
"3002",
|
||||
SALT_VERSIONS = [
|
||||
"3003",
|
||||
"3004",
|
||||
"master",
|
||||
"latest",
|
||||
]
|
||||
|
||||
BRANCH_DISPLAY_NAMES = {
|
||||
"3002": "v3002",
|
||||
VERSION_DISPLAY_NAMES = {
|
||||
"3003": "v3003",
|
||||
"3004": "v3004",
|
||||
"master": "Master",
|
||||
"latest": "Latest",
|
||||
}
|
||||
|
||||
STABLE_BRANCH_BLACKLIST = []
|
||||
STABLE_VERSION_BLACKLIST = []
|
||||
|
||||
LATEST_PKG_BLACKLIST = []
|
||||
|
||||
|
@ -181,7 +151,6 @@ DISTRO_DISPLAY_NAMES = {
|
|||
"debian-10": "Debian 10",
|
||||
"debian-11": "Debian 11",
|
||||
"debian-9": "Debian 9",
|
||||
"fedora-34": "Fedora 34",
|
||||
"fedora-35": "Fedora 35",
|
||||
"fedora-36": "Fedora 36",
|
||||
"gentoo": "Gentoo",
|
||||
|
@ -193,8 +162,15 @@ DISTRO_DISPLAY_NAMES = {
|
|||
"rockylinux-8": "Rocky Linux 8",
|
||||
"ubuntu-1804": "Ubuntu 18.04",
|
||||
"ubuntu-2004": "Ubuntu 20.04",
|
||||
"ubuntu-2110": "Ubuntu 21.10",
|
||||
"ubuntu-2204": "Ubuntu 22.04",
|
||||
"macos-1015": "macOS 10.15",
|
||||
"macos-11": "macOS 11",
|
||||
"macos-12": "macOS 12",
|
||||
"freebsd-131": "FreeBSD 13.1",
|
||||
"freebsd-123": "FreeBSD 12.3",
|
||||
"openbsd-6": "OpenBSD 6",
|
||||
"windows-2019": "Windows 2019",
|
||||
"windows-2022": "Windows 2022",
|
||||
}
|
||||
|
||||
TIMEOUT_DEFAULT = 20
|
||||
|
@ -202,170 +178,270 @@ TIMEOUT_OVERRIDES = {
|
|||
"gentoo": 90,
|
||||
"gentoo-systemd": 90,
|
||||
}
|
||||
BRANCH_ONLY_OVERRIDES = [
|
||||
VERSION_ONLY_OVERRIDES = [
|
||||
"gentoo",
|
||||
"gentoo-systemd",
|
||||
]
|
||||
|
||||
TEMPLATE = """
|
||||
{distro}:
|
||||
name: {display_name}{ifcheck}
|
||||
uses: {uses}
|
||||
needs:
|
||||
- lint
|
||||
- generate-actions-workflow
|
||||
with:
|
||||
distro-slug: {distro}
|
||||
display-name: {display_name}
|
||||
timeout: {timeout_minutes}{runs_on}
|
||||
instances: '{instances}'
|
||||
"""
|
||||
|
||||
|
||||
def generate_test_jobs():
|
||||
test_jobs = ""
|
||||
branch_only_test_jobs = ""
|
||||
needs = ["lint", "generate-actions-workflow"]
|
||||
|
||||
for distro in LINUX_DISTROS + OSX + WINDOWS:
|
||||
for distro in BSD:
|
||||
test_jobs += "\n"
|
||||
runs_on = "macos-10.15"
|
||||
runs_on = f"\n runs-on: {runs_on}"
|
||||
ifcheck = "\n if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'"
|
||||
uses = "./.github/workflows/test-bsd.yml"
|
||||
instances = []
|
||||
timeout_minutes = (
|
||||
TIMEOUT_OVERRIDES[distro]
|
||||
if distro in TIMEOUT_OVERRIDES
|
||||
else TIMEOUT_DEFAULT
|
||||
)
|
||||
needs = " needs: lint"
|
||||
if distro in BRANCH_ONLY_OVERRIDES:
|
||||
needs = ""
|
||||
current_test_jobs = ""
|
||||
for salt_version in SALT_VERSIONS:
|
||||
|
||||
for branch in SALT_BRANCHES:
|
||||
|
||||
if branch == "latest":
|
||||
if salt_version == "latest":
|
||||
if distro in LATEST_PKG_BLACKLIST:
|
||||
continue
|
||||
if distro in LINUX_DISTROS:
|
||||
template = "linux.yml"
|
||||
elif distro in OSX:
|
||||
template = "osx.yml"
|
||||
elif distro in WINDOWS:
|
||||
template = "windows.yml"
|
||||
else:
|
||||
print("Don't know how to handle {}".format(distro))
|
||||
|
||||
with open(template) as rfh:
|
||||
current_test_jobs += "\n{}\n".format(
|
||||
rfh.read()
|
||||
.replace(
|
||||
"{python_version}-{bootstrap_type}-{branch}-{distro}",
|
||||
"{branch}-{distro}",
|
||||
)
|
||||
.format(
|
||||
distro=distro,
|
||||
branch=branch,
|
||||
display_name="{} Latest packaged release".format(
|
||||
DISTRO_DISPLAY_NAMES[distro],
|
||||
),
|
||||
timeout_minutes=timeout_minutes,
|
||||
needs=needs,
|
||||
)
|
||||
)
|
||||
instances.append(salt_version)
|
||||
continue
|
||||
|
||||
for python_version in ("py3",):
|
||||
if distro == "openbsd-6":
|
||||
# Only test latest on OpenBSD 6
|
||||
continue
|
||||
|
||||
for bootstrap_type in ("stable", "git"):
|
||||
if bootstrap_type == "stable":
|
||||
if branch == "master":
|
||||
# For the master branch there's no stable build
|
||||
continue
|
||||
if distro not in STABLE_DISTROS:
|
||||
continue
|
||||
if salt_version != "master":
|
||||
# Only test the master branch on BSD's
|
||||
continue
|
||||
|
||||
if branch in STABLE_BRANCH_BLACKLIST:
|
||||
continue
|
||||
|
||||
if distro.startswith("fedora") and branch != "latest":
|
||||
# Fedora does not keep old builds around
|
||||
continue
|
||||
# BSD's don't have a stable release, only use git
|
||||
for bootstrap_type in ("git",):
|
||||
|
||||
BLACKLIST = {
|
||||
"3003": BLACKLIST_3003,
|
||||
"3004": BLACKLIST_3004,
|
||||
}
|
||||
if bootstrap_type == "git":
|
||||
BLACKLIST = {
|
||||
"3002": BLACKLIST_3002,
|
||||
"3003": BLACKLIST_3003,
|
||||
"3004": BLACKLIST_3004,
|
||||
"3003": BLACKLIST_GIT_3003,
|
||||
"3004": BLACKLIST_GIT_3004,
|
||||
}
|
||||
if bootstrap_type == "git":
|
||||
BLACKLIST = {
|
||||
"3002": BLACKLIST_GIT_3002,
|
||||
"3003": BLACKLIST_GIT_3003,
|
||||
"3004": BLACKLIST_GIT_3004,
|
||||
}
|
||||
|
||||
# .0 versions are a virtual version for pinning to the first point release of a major release, such as 3002, there is no git version.
|
||||
if branch.endswith("-0"):
|
||||
continue
|
||||
|
||||
if (
|
||||
branch in ("3002", "3003", "3004")
|
||||
and distro in BLACKLIST[branch]
|
||||
):
|
||||
# .0 versions are a virtual version for pinning to the first
|
||||
# point release of a major release, such as 3003,
|
||||
# there is no git version.
|
||||
if salt_version.endswith("-0"):
|
||||
continue
|
||||
|
||||
if distro in LINUX_DISTROS:
|
||||
template = "linux.yml"
|
||||
elif distro in OSX:
|
||||
template = "osx.yml"
|
||||
elif distro in WINDOWS:
|
||||
template = "windows.yml"
|
||||
else:
|
||||
print("Don't know how to handle {}".format(distro))
|
||||
if (
|
||||
salt_version in ("3003", "3004")
|
||||
and distro in BLACKLIST[salt_version]
|
||||
):
|
||||
continue
|
||||
|
||||
with open(template) as rfh:
|
||||
current_test_jobs += "\n{}\n".format(
|
||||
rfh.read().format(
|
||||
distro=distro,
|
||||
branch=branch,
|
||||
python_version=python_version,
|
||||
bootstrap_type=bootstrap_type,
|
||||
display_name="{} {} {} {}".format(
|
||||
DISTRO_DISPLAY_NAMES[distro],
|
||||
BRANCH_DISPLAY_NAMES[branch],
|
||||
python_version.capitalize(),
|
||||
bootstrap_type.capitalize(),
|
||||
),
|
||||
timeout_minutes=timeout_minutes,
|
||||
needs=needs,
|
||||
)
|
||||
)
|
||||
if distro in BRANCH_ONLY_OVERRIDES:
|
||||
branch_only_test_jobs += current_test_jobs
|
||||
kitchen_target = f"{bootstrap_type}-{salt_version}"
|
||||
instances.append(kitchen_target)
|
||||
|
||||
if instances:
|
||||
needs.append(distro)
|
||||
test_jobs += TEMPLATE.format(
|
||||
distro=distro,
|
||||
runs_on=runs_on,
|
||||
uses=uses,
|
||||
ifcheck=ifcheck,
|
||||
instances=json.dumps(instances),
|
||||
display_name=DISTRO_DISPLAY_NAMES[distro],
|
||||
timeout_minutes=timeout_minutes,
|
||||
)
|
||||
|
||||
test_jobs += "\n"
|
||||
for distro in OSX:
|
||||
test_jobs += "\n"
|
||||
if distro == "macos-1015":
|
||||
runs_on = "macos-10.15"
|
||||
else:
|
||||
test_jobs += current_test_jobs
|
||||
runs_on = distro
|
||||
runs_on = f"\n runs-on: {runs_on}"
|
||||
ifcheck = "\n if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'"
|
||||
uses = "./.github/workflows/test-macos.yml"
|
||||
instances = []
|
||||
timeout_minutes = (
|
||||
TIMEOUT_OVERRIDES[distro]
|
||||
if distro in TIMEOUT_OVERRIDES
|
||||
else TIMEOUT_DEFAULT
|
||||
)
|
||||
|
||||
with open("lint.yml") as rfh:
|
||||
lint_job = "\n{}\n".format(rfh.read())
|
||||
for salt_version in SALT_VERSIONS:
|
||||
|
||||
with open("pre-commit.yml") as rfh:
|
||||
pre_commit_job = "\n{}\n".format(rfh.read())
|
||||
if salt_version == "latest":
|
||||
|
||||
with open("../main.yml", "w") as wfh:
|
||||
with open("main.yml") as rfh:
|
||||
wfh.write(
|
||||
"{}\n".format(
|
||||
rfh.read()
|
||||
.format(
|
||||
jobs="{pre_commit}{lint}{test}".format(
|
||||
lint=lint_job,
|
||||
test=test_jobs,
|
||||
pre_commit=pre_commit_job,
|
||||
),
|
||||
on="push, pull_request",
|
||||
name="Testing",
|
||||
)
|
||||
.strip()
|
||||
)
|
||||
instances.append(salt_version)
|
||||
continue
|
||||
|
||||
for bootstrap_type in ("stable",):
|
||||
if bootstrap_type == "stable":
|
||||
if salt_version == "master":
|
||||
# For the master branch there's no stable build
|
||||
continue
|
||||
|
||||
kitchen_target = f"{bootstrap_type}-{salt_version}"
|
||||
instances.append(kitchen_target)
|
||||
|
||||
if instances:
|
||||
needs.append(distro)
|
||||
test_jobs += TEMPLATE.format(
|
||||
distro=distro,
|
||||
runs_on=runs_on,
|
||||
uses=uses,
|
||||
ifcheck=ifcheck,
|
||||
instances=json.dumps(instances),
|
||||
display_name=DISTRO_DISPLAY_NAMES[distro],
|
||||
timeout_minutes=timeout_minutes,
|
||||
)
|
||||
|
||||
with open("../main-branch-only.yml", "w") as wfh:
|
||||
with open("main.yml") as rfh:
|
||||
wfh.write(
|
||||
"{}\n".format(
|
||||
rfh.read()
|
||||
.format(
|
||||
jobs="{test}".format(
|
||||
test=branch_only_test_jobs,
|
||||
),
|
||||
on="push",
|
||||
name="Branch Testing",
|
||||
)
|
||||
.strip()
|
||||
)
|
||||
test_jobs += "\n"
|
||||
for distro in WINDOWS:
|
||||
test_jobs += "\n"
|
||||
runs_on = f"\n runs-on: {distro}"
|
||||
ifcheck = "\n if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'"
|
||||
uses = "./.github/workflows/test-windows.yml"
|
||||
instances = []
|
||||
timeout_minutes = (
|
||||
TIMEOUT_OVERRIDES[distro]
|
||||
if distro in TIMEOUT_OVERRIDES
|
||||
else TIMEOUT_DEFAULT
|
||||
)
|
||||
|
||||
for salt_version in SALT_VERSIONS:
|
||||
|
||||
if salt_version == "latest":
|
||||
|
||||
instances.append(salt_version)
|
||||
continue
|
||||
|
||||
for bootstrap_type in ("stable",):
|
||||
if bootstrap_type == "stable":
|
||||
if salt_version == "master":
|
||||
# For the master branch there's no stable build
|
||||
continue
|
||||
|
||||
kitchen_target = f"{bootstrap_type}-{salt_version}"
|
||||
instances.append(kitchen_target)
|
||||
|
||||
if instances:
|
||||
needs.append(distro)
|
||||
test_jobs += TEMPLATE.format(
|
||||
distro=distro,
|
||||
runs_on=runs_on,
|
||||
uses=uses,
|
||||
ifcheck=ifcheck,
|
||||
instances=json.dumps(instances),
|
||||
display_name=DISTRO_DISPLAY_NAMES[distro],
|
||||
timeout_minutes=timeout_minutes,
|
||||
)
|
||||
|
||||
test_jobs += "\n"
|
||||
for distro in LINUX_DISTROS:
|
||||
test_jobs += "\n"
|
||||
runs_on = ""
|
||||
ifcheck = "\n if: github.event_name == 'push' || needs.collect-changed-files.outputs.run-tests == 'true'"
|
||||
uses = "./.github/workflows/test-linux.yml"
|
||||
instances = []
|
||||
timeout_minutes = (
|
||||
TIMEOUT_OVERRIDES[distro]
|
||||
if distro in TIMEOUT_OVERRIDES
|
||||
else TIMEOUT_DEFAULT
|
||||
)
|
||||
if distro in VERSION_ONLY_OVERRIDES:
|
||||
ifcheck = "\n if: github.event_name == 'push'"
|
||||
|
||||
for salt_version in SALT_VERSIONS:
|
||||
|
||||
if salt_version == "latest":
|
||||
if distro in LATEST_PKG_BLACKLIST:
|
||||
continue
|
||||
|
||||
instances.append(salt_version)
|
||||
continue
|
||||
|
||||
for bootstrap_type in ("stable", "git"):
|
||||
if bootstrap_type == "stable":
|
||||
if salt_version == "master":
|
||||
# For the master branch there's no stable build
|
||||
continue
|
||||
if distro not in STABLE_DISTROS:
|
||||
continue
|
||||
|
||||
if salt_version in STABLE_VERSION_BLACKLIST:
|
||||
continue
|
||||
|
||||
if distro.startswith("fedora") and salt_version != "latest":
|
||||
# Fedora does not keep old builds around
|
||||
continue
|
||||
|
||||
BLACKLIST = {
|
||||
"3003": BLACKLIST_3003,
|
||||
"3004": BLACKLIST_3004,
|
||||
}
|
||||
if bootstrap_type == "git":
|
||||
BLACKLIST = {
|
||||
"3003": BLACKLIST_GIT_3003,
|
||||
"3004": BLACKLIST_GIT_3004,
|
||||
}
|
||||
|
||||
# .0 versions are a virtual version for pinning to the first
|
||||
# point release of a major release, such as 3003,
|
||||
# there is no git version.
|
||||
if salt_version.endswith("-0"):
|
||||
continue
|
||||
|
||||
if (
|
||||
salt_version in ("3003", "3004")
|
||||
and distro in BLACKLIST[salt_version]
|
||||
):
|
||||
continue
|
||||
|
||||
kitchen_target = f"{bootstrap_type}-{salt_version}"
|
||||
instances.append(kitchen_target)
|
||||
|
||||
if instances:
|
||||
needs.append(distro)
|
||||
test_jobs += TEMPLATE.format(
|
||||
distro=distro,
|
||||
runs_on=runs_on,
|
||||
uses=uses,
|
||||
ifcheck=ifcheck,
|
||||
instances=json.dumps(instances),
|
||||
display_name=DISTRO_DISPLAY_NAMES[distro],
|
||||
timeout_minutes=timeout_minutes,
|
||||
)
|
||||
|
||||
ci_src_workflow = pathlib.Path("ci.yml").resolve()
|
||||
ci_tail_src_workflow = pathlib.Path("ci-tail.yml").resolve()
|
||||
ci_dst_workflow = pathlib.Path("../ci.yml").resolve()
|
||||
ci_workflow_contents = ci_src_workflow.read_text() + test_jobs + "\n"
|
||||
ci_workflow_contents += ci_tail_src_workflow.read_text().format(
|
||||
needs="\n".join([f" - {need}" for need in needs]).lstrip()
|
||||
)
|
||||
ci_dst_workflow.write_text(ci_workflow_contents)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
generate_test_jobs()
|
||||
|
|
12
.github/workflows/templates/lint.yml
vendored
12
.github/workflows/templates/lint.yml
vendored
|
@ -1,12 +0,0 @@
|
|||
lint:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: generate-actions-workflow
|
||||
|
||||
container: koalaman/shellcheck-alpine:v0.6.0
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: ShellCheck
|
||||
run: |
|
||||
shellcheck -s sh -f tty bootstrap-salt.sh
|
44
.github/workflows/templates/linux.yml
vendored
44
.github/workflows/templates/linux.yml
vendored
|
@ -1,44 +0,0 @@
|
|||
{python_version}-{bootstrap_type}-{branch}-{distro}:
|
||||
name: {display_name}
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: {timeout_minutes}
|
||||
|
||||
{needs}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Setup Ruby
|
||||
uses: actions/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6.x
|
||||
|
||||
- name: Install Bundler
|
||||
run: |
|
||||
gem install bundler
|
||||
|
||||
- name: Setup Bundle
|
||||
run: |
|
||||
bundle install --with docker --without opennebula ec2 windows vagrant
|
||||
|
||||
- name: Set up Python 3.7
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: 3.7
|
||||
|
||||
- name: Install Python Dependencies
|
||||
run: |
|
||||
pip install -U pip
|
||||
pip install -r tests/requirements.txt
|
||||
|
||||
- name: Create Test Container
|
||||
run: |
|
||||
bundle exec kitchen create {python_version}-{bootstrap_type}-{branch}-{distro} || bundle exec kitchen create {python_version}-{bootstrap_type}-{branch}-{distro}
|
||||
|
||||
- name: Test Bootstrap In Test Container
|
||||
run: |
|
||||
bundle exec kitchen verify {python_version}-{bootstrap_type}-{branch}-{distro}
|
||||
|
||||
- name: Destroy Test Container
|
||||
if: always()
|
||||
run: |
|
||||
bundle exec kitchen destroy {python_version}-{bootstrap_type}-{branch}-{distro}
|
20
.github/workflows/templates/pre-commit.yml
vendored
20
.github/workflows/templates/pre-commit.yml
vendored
|
@ -1,20 +0,0 @@
|
|||
generate-actions-workflow:
|
||||
name: Generate The Actions Workflow
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
|
||||
- name: Set up Python 3.7
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: 3.7
|
||||
|
||||
- name: Install Pre-Commit
|
||||
run: |
|
||||
pip install -U pip
|
||||
pip install pre-commit
|
||||
pre-commit install
|
||||
|
||||
- name: Generate Workflow Actions
|
||||
run: |
|
||||
pre-commit run -av generate-actions-workflow
|
97
.github/workflows/test-bsd.yml
vendored
Normal file
97
.github/workflows/test-bsd.yml
vendored
Normal file
|
@ -0,0 +1,97 @@
|
|||
name: Test FreeBSD & OpenBSD
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
distro-slug:
|
||||
type: string
|
||||
required: true
|
||||
description: The Distribution Slug
|
||||
|
||||
display-name:
|
||||
type: string
|
||||
required: true
|
||||
description: The Display Name For The Job
|
||||
|
||||
runs-on:
|
||||
type: string
|
||||
required: true
|
||||
description: The GitHub MacOS Worker To Run Workflow On
|
||||
|
||||
instances:
|
||||
type: string
|
||||
required: true
|
||||
description: The Instances To Test
|
||||
|
||||
timeout:
|
||||
type: number
|
||||
required: false
|
||||
default: 20
|
||||
description: The timeout(in minutes) for the workflow
|
||||
|
||||
env:
|
||||
VAGRANT_HOME: '${{ github.workspace }}/.vagrant.d'
|
||||
KITCHEN_LOCAL_YAML: 'kitchen.bsd.yml'
|
||||
|
||||
jobs:
|
||||
Test:
|
||||
name: ${{ matrix.instance }}
|
||||
runs-on: ${{ inputs.runs-on }}
|
||||
timeout-minutes: ${{ inputs.timeout }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
instance: ${{ fromJSON(inputs.instances) }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6.10
|
||||
bundler-cache: true
|
||||
|
||||
- name: Setup Vagrant Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
${{ github.workspace }}/.kitchen
|
||||
${{ github.workspace }}/.vagrant.d/
|
||||
key: "${{ runner.os }}|vagrant|${{ inputs.distro-slug }}|${{ hashFiles('Gemfile', '.github/workflows/test-bsd.yml', 'kitchen.bsd.yml') }}"
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Python Dependencies
|
||||
run: |
|
||||
pip install -U pip
|
||||
pip install -r tests/requirements.txt
|
||||
|
||||
- name: Create Test Instance
|
||||
run: |
|
||||
bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }} || \
|
||||
(sleep 10 && bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }})
|
||||
|
||||
- name: Test Bootstrap
|
||||
run: |
|
||||
bundle exec kitchen verify ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Destroy Test Instance
|
||||
if: always()
|
||||
run: |
|
||||
bundle exec kitchen destroy ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}-${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
80
.github/workflows/test-linux.yml
vendored
Normal file
80
.github/workflows/test-linux.yml
vendored
Normal file
|
@ -0,0 +1,80 @@
|
|||
name: Test Linux
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
distro-slug:
|
||||
type: string
|
||||
required: true
|
||||
description: The Distribution Slug
|
||||
|
||||
display-name:
|
||||
type: string
|
||||
required: true
|
||||
description: The Display Name For The Job
|
||||
|
||||
instances:
|
||||
type: string
|
||||
required: true
|
||||
description: The Instances To Test
|
||||
|
||||
timeout:
|
||||
type: number
|
||||
required: false
|
||||
default: 20
|
||||
|
||||
|
||||
jobs:
|
||||
Test:
|
||||
name: ${{ matrix.instance }}
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: ${{ inputs.timeout }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
instance: ${{ fromJSON(inputs.instances) }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6.10
|
||||
bundler-cache: true
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Python Dependencies
|
||||
run: |
|
||||
python3 -m pip install -U pip
|
||||
python3 -m pip install -r tests/requirements.txt
|
||||
|
||||
- name: Create Test Instance
|
||||
run: |
|
||||
bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }} || \
|
||||
(sleep 10 && bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }})
|
||||
|
||||
- name: Test Bootstrap
|
||||
run: |
|
||||
bundle exec kitchen verify ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Destroy Test Instance
|
||||
if: always()
|
||||
run: |
|
||||
bundle exec kitchen destroy ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}-${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
88
.github/workflows/test-macos.yml
vendored
Normal file
88
.github/workflows/test-macos.yml
vendored
Normal file
|
@ -0,0 +1,88 @@
|
|||
name: Test MacOS
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
distro-slug:
|
||||
type: string
|
||||
required: true
|
||||
description: The Distribution Slug
|
||||
|
||||
display-name:
|
||||
type: string
|
||||
required: true
|
||||
description: The Display Name For The Job
|
||||
|
||||
runs-on:
|
||||
type: string
|
||||
required: true
|
||||
description: The GitHub MacOS Worker To Run Workflow On
|
||||
|
||||
instances:
|
||||
type: string
|
||||
required: true
|
||||
description: The Instances To Test
|
||||
|
||||
timeout:
|
||||
type: number
|
||||
required: false
|
||||
default: 20
|
||||
description: The timeout(in minutes) for the workflow
|
||||
|
||||
env:
|
||||
KITCHEN_LOCAL_YAML: 'kitchen.macos.yml'
|
||||
|
||||
jobs:
|
||||
Test:
|
||||
name: ${{ matrix.instance }}
|
||||
runs-on: ${{ inputs.runs-on }}
|
||||
timeout-minutes: ${{ inputs.timeout }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
instance: ${{ fromJSON(inputs.instances) }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6.10
|
||||
bundler-cache: true
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Python Dependencies
|
||||
run: |
|
||||
pip install -U pip
|
||||
pip install -r tests/requirements.txt
|
||||
|
||||
- name: Create Test Instance
|
||||
run: |
|
||||
bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }} || \
|
||||
(sleep 10 && bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }})
|
||||
|
||||
- name: Test Bootstrap
|
||||
run: |
|
||||
bundle exec kitchen verify ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Destroy Test Instance
|
||||
if: always()
|
||||
run: |
|
||||
bundle exec kitchen destroy ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}-${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
113
.github/workflows/test-windows.yml
vendored
Normal file
113
.github/workflows/test-windows.yml
vendored
Normal file
|
@ -0,0 +1,113 @@
|
|||
name: Test Windows
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
distro-slug:
|
||||
type: string
|
||||
required: true
|
||||
description: The Distribution Slug
|
||||
|
||||
display-name:
|
||||
type: string
|
||||
required: true
|
||||
description: The Display Name For The Job
|
||||
|
||||
runs-on:
|
||||
type: string
|
||||
required: true
|
||||
description: The GitHub Windows Worker To Run Workflow On
|
||||
|
||||
instances:
|
||||
type: string
|
||||
required: true
|
||||
description: The Instances To Test
|
||||
|
||||
timeout:
|
||||
type: number
|
||||
required: false
|
||||
default: 20
|
||||
description: The timeout(in minutes) for the workflow
|
||||
|
||||
env:
|
||||
machine_user: kitchen
|
||||
machine_pass: Password1
|
||||
machine_port: 5985
|
||||
KITCHEN_LOCAL_YAML: 'kitchen.windows.yml'
|
||||
|
||||
jobs:
|
||||
Test:
|
||||
name: ${{ matrix.instance }}
|
||||
runs-on: ${{ inputs.runs-on }}
|
||||
timeout-minutes: ${{ inputs.timeout }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
instance: ${{ fromJSON(inputs.instances) }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 2.6.10
|
||||
bundler-cache: true
|
||||
|
||||
- name: Install Chef
|
||||
uses: actionshub/chef-install@1.1.0
|
||||
with:
|
||||
project: chef
|
||||
version: 16.10.8
|
||||
|
||||
- name: Add Chef bindir to PATH
|
||||
uses: myci-actions/export-env-var-powershell@1
|
||||
with:
|
||||
name: PATH
|
||||
value: "C:\\opscode\\chef\\bin;C:\\opscode\\chef\\embedded\\bin;$env:PATH"
|
||||
|
||||
- name: Setup test user
|
||||
run: |
|
||||
$password = ConvertTo-SecureString $env:machine_pass -AsPlainText -Force
|
||||
New-LocalUser $env:machine_user -Password $password
|
||||
Add-LocalGroupMember -Group "Administrators" -Member $env:machine_user
|
||||
|
||||
- name: Set up WinRM
|
||||
run: |
|
||||
Set-WSManQuickConfig -Force
|
||||
|
||||
- name: Set up Python 3.9
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Install Python Dependencies
|
||||
run: |
|
||||
pip install -U pip
|
||||
pip install -r tests/requirements.txt
|
||||
|
||||
- name: Create Test Instance
|
||||
run: |
|
||||
bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }} || \
|
||||
(sleep 10 && bundle exec kitchen create ${{ matrix.instance }}-${{ inputs.distro-slug }})
|
||||
|
||||
- name: Test Bootstrap
|
||||
run: |
|
||||
bundle exec kitchen verify ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Destroy Test Instance
|
||||
if: always()
|
||||
run: |
|
||||
bundle exec kitchen destroy ${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Set Exit Status
|
||||
if: always()
|
||||
run: |
|
||||
mkdir exitstatus
|
||||
echo "${{ job.status }}" > exitstatus/${{ github.job }}-${{ matrix.instance }}-${{ inputs.distro-slug }}
|
||||
|
||||
- name: Upload Exit Status
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: exitstatus
|
||||
path: exitstatus
|
|
@ -2,7 +2,7 @@
|
|||
minimum_pre_commit_version: 1.15.2
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v2.1.0
|
||||
rev: v4.3.0
|
||||
hooks:
|
||||
- id: check-merge-conflict # Check for files that contain merge conflict strings.
|
||||
- id: trailing-whitespace # Trims trailing whitespace.
|
||||
|
@ -11,8 +11,13 @@ repos:
|
|||
args: [--fix=lf]
|
||||
- id: end-of-file-fixer # Makes sure files end in a newline and only a newline.
|
||||
|
||||
- repo: https://github.com/executablebooks/mdformat
|
||||
rev: 0.7.14
|
||||
hooks:
|
||||
- id: mdformat
|
||||
|
||||
- repo: https://github.com/psf/black
|
||||
rev: 22.3.0
|
||||
rev: 22.6.0
|
||||
hooks:
|
||||
- id: black
|
||||
|
||||
|
@ -22,7 +27,7 @@ repos:
|
|||
name: Generate Github Actions Workflow
|
||||
entry: .github/workflows/templates/generate.py
|
||||
pass_filenames: false
|
||||
files: '.github/workflows/templates/.*'
|
||||
files: '^.github/workflows/.*$'
|
||||
language: script
|
||||
|
||||
- id: shellcheck
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
This authors list is kept for historical purposes
|
||||
=================================================
|
||||
|
||||
Feel free to add yourself to this list, but for a full list of contributors,
|
||||
`check here <https://github.com/saltstack/salt-bootstrap/graphs/contributors>`_.
|
||||
|
||||
Authors
|
||||
=======
|
||||
-------
|
||||
|
||||
Here's a list of everyone who contributed to salt-bootstrap in alphabetical
|
||||
order.
|
||||
|
|
965
CHANGELOG.md
Normal file
965
CHANGELOG.md
Normal file
|
@ -0,0 +1,965 @@
|
|||
# v2022.08.12
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Update README.rst with 2022.05.19 release sha256sum by @github-actions in https://github.com/saltstack/salt-bootstrap/pull/1832
|
||||
- ci(eol): remove `fedora-34` and `3002` by @myii in https://github.com/saltstack/salt-bootstrap/pull/1835
|
||||
- ci(freebsd): replace `13.0` with newly released `13.1` box by @myii in https://github.com/saltstack/salt-bootstrap/pull/1836
|
||||
- feat: add support and update CI for openSUSE Leap 15.4 by @myii in https://github.com/saltstack/salt-bootstrap/pull/1837
|
||||
- Rename to py39-salt, Python 3.9 is default version on FreeBSD by @krionbsd in https://github.com/saltstack/salt-bootstrap/pull/1842
|
||||
- Adding bits to install Salt packages built using Tiamat. by @garethgreenaway in https://github.com/saltstack/salt-bootstrap/pull/1819
|
||||
- replace all references of tiamat to onedir by @garethgreenaway in https://github.com/saltstack/salt-bootstrap/pull/1845
|
||||
- use SHA-256 key for Red Hat / CentOS relesaes 9 and over. by @garethgreenaway in https://github.com/saltstack/salt-bootstrap/pull/1846
|
||||
- Add version for Salt version 3005. by @garethgreenaway in https://github.com/saltstack/salt-bootstrap/pull/1848
|
||||
- Automate the release process by @s0undt3ch in https://github.com/saltstack/salt-bootstrap/pull/1849
|
||||
- Tighten Release Workflow Permissions & Rework the CI Workflow by @s0undt3ch in https://github.com/saltstack/salt-bootstrap/pull/1850
|
||||
- Fix Release Workflow by @s0undt3ch in https://github.com/saltstack/salt-bootstrap/pull/1852
|
||||
- Fix parameter name for the changed files action by @s0undt3ch in https://github.com/saltstack/salt-bootstrap/pull/1853
|
||||
- Specify the repository by @s0undt3ch in https://github.com/saltstack/salt-bootstrap/pull/1854
|
||||
|
||||
**Full Changelog**: https://github.com/saltstack/salt-bootstrap/compare/v2022.05.19...v2022.08.12
|
||||
|
||||
# v2022.05.19:
|
||||
|
||||
- Fix situations where the registry key for root_dir does not exist
|
||||
on Windows (twangboy) #1828
|
||||
- Add Ubuntu 22 support (krionbsd) #1820
|
||||
- Add Fedora 36 support (myii) #1818
|
||||
|
||||
# v2022.03.15:
|
||||
|
||||
- Add detection and functions for AlmaLinux and Rocky Linux (myii) #1803
|
||||
- Copy configs to correct config dirs (v3004+) (dafyddj) #1798
|
||||
- Support Non-LTS Ubuntu 21.04 & 21.10 (blindpirate) #1793
|
||||
- Use native repositories for Debian 11 (jpacura) #1615
|
||||
- Keep all command-line parameters when UAC is enabled (Simon-TheUser) #1613
|
||||
- Add support for Raspbian (Jille) #1612
|
||||
- Add openrc to alpine:latest dependencies (krionbsd) #1609
|
||||
- Add CentOS 7 base key (bryceml) #1608
|
||||
- Fix git master install on alpine 3.12+ (Nascire) #1604
|
||||
- Sort help alphabetically (krionbsd) #1601
|
||||
|
||||
# v2021.09.17:
|
||||
|
||||
- Re-add Ubuntu-16 support as it's still supported with 3001 and 3002 (krionbsd) #1594
|
||||
- Add oncoming 3004 release (krionbsd) #1593
|
||||
|
||||
# v2021.09.14:
|
||||
|
||||
- Update latest Salt version in README (krionbsd) #1588
|
||||
- Make Python 3 the default (bryceml) #1577
|
||||
- Don't output info if using the default -x value (bryceml) #1587
|
||||
|
||||
# v2021.08.19:
|
||||
|
||||
- Update README with instructions to use salt-bootstrap custom version (ari) #1580
|
||||
- Remove unsupported versions (bryceml) #1578
|
||||
- Update FreeBSD default Python version to 3.8 (myii) #1574
|
||||
|
||||
# v2021.06.23:
|
||||
|
||||
- Use salt.list instead of saltstack.list (bryceml) #1563
|
||||
- Use fetch_url function for curl (xeacott) #1562
|
||||
- Add Ubuntu 21.04 support (krionbsd) #1559
|
||||
- Remove python2-futures package for ArchLinux (myii) #1546
|
||||
|
||||
# v2020.03.02:
|
||||
|
||||
- Debian 11 (bullseye/testing) support using Debian 10 packages (jpacura, bryceml) #1514
|
||||
- Fix bootstrap on Gentoo (ijansky) #1516 #1518
|
||||
- Fix project URLs (bryceml) #1526
|
||||
- FreeBSD also needs the \_PKI_DIR reset (krionbsd) #1523
|
||||
- Fix openSUSE Tumbleweed support. (myii) #1525
|
||||
- Fix Debian and Ubuntu version support. (jpacura) #1529
|
||||
- Powershell: Implement configure only option (for Vagrant). (dafyddj) #1530
|
||||
- Powershell: Handle Vagrant's `grains_config` option. (dafyddj) #1520
|
||||
- apt-key is deprecated on Debian 10+ and Ubuntu 20+ (bryceml) #1533
|
||||
- Fix python Tornado on FreeBSD. (krionbsd) #1522
|
||||
|
||||
# v2020.10.20:
|
||||
|
||||
- Add support to allow bootstrapping Salt 3002 (s0undt3ch) #1506
|
||||
|
||||
# v2020.10.19:
|
||||
|
||||
- Fix v3000+ with git install on FreeBSD (krionbsd) #1487
|
||||
- Update README giving ONE example of WINDOWS bootstrapping. Default to python3 instead of
|
||||
python2. (noelmcloughlin) #1496
|
||||
- Support git and stable salt-bootstrap on Gentoo. (ijansky) #1500
|
||||
- Add support for Linux Mint 20. (taigrr) #1502
|
||||
- Adding missing functions for Red Hat 8. (mbochenk) #1489
|
||||
- Allow pinning minor 3xxx versions. (max-arnold) #1491
|
||||
|
||||
# v2020.06.23:
|
||||
|
||||
- Fix for Cumulus Linux 4.1 (darylturner) #1474
|
||||
- Fix file download exit code, improve error message on failed download (bryceml) #1478
|
||||
- Add support for Ubuntu 20.04 (bryceml) #1479
|
||||
- Default Ubuntu 20.04 to Py3 since there isn't a Py2 release for it (bryceml) #1480
|
||||
- Warn instead of exit when using -R and -x python3 on centos to allow installing python3
|
||||
versions of salt on centos from other repos. Old unsupported releases probably need to
|
||||
manually install epel-release before running the bootstrap script for versions before 2018.3.5
|
||||
and before 2019.2.1 (bryceml) #1482
|
||||
- Start maintaining .sha256 files for the bootstrap script
|
||||
|
||||
# v2020.05.28:
|
||||
|
||||
- Fix Opensuse Tumbleweed (noelmcloughlin) #1441
|
||||
- Remove Debian 8 from Python 3 supported list (jay1648) #1448
|
||||
- Fixed deps parsing for FreeBSD git installs (cedwards) #1462
|
||||
- Added support for the upcoming Sodium release (s0undt3ch) #1466
|
||||
- Fixed KDE Neon detection (ender8282) #1466
|
||||
- Updated README python 2 and 3 installations (gdebunne) #1466
|
||||
- Updated README and CONTRIBUTING to prefer Salt's master branch (DmitryKuzmenko) #1466
|
||||
- Fixed IUS repo addresses (oeuftete) #1469
|
||||
- Updated tests to assert target Python and Salt versions (s0undt3ch) #1470
|
||||
- Fixed Amazon 2 -x support (s0undt3ch) #1470
|
||||
- Fix Fedora stable installs for older releases (s0undt3ch) #1470
|
||||
- Fix CentOS 8 installations (s0undt3ch) #1470
|
||||
- Default Debian 10 to Py3 (s0undt3ch) #1470
|
||||
- Fix Arch Linux installs (s0undt3ch) #1470
|
||||
|
||||
# v2020.02.24:
|
||||
|
||||
- Fix SLES 15 install (max298) #1431
|
||||
- Fix 3000(Neon) stable install (sblaisot) #1433
|
||||
- Fix Amazon Linux Py3 install (s0undt3ch) #1434
|
||||
|
||||
# v2020.02.04:
|
||||
|
||||
- Add support for the Salt Neon(3000) release (s0undt3ch) #1424
|
||||
- Drop support for Fedora \< 30 (s0undt3ch) #1424
|
||||
- Drop support for Debian \< 8 (s0undt3ch) #1424
|
||||
|
||||
# v2020.01.29:
|
||||
|
||||
- FreeBSD fixes (cedwards) #1413
|
||||
- Support the upcoming Neon release (s0undt3ch) #1420
|
||||
|
||||
# v2020.01.21:
|
||||
|
||||
- FreeBSD fixes (kgbsd) #1376
|
||||
- Fix macOS support (s0undt3ch) #1397
|
||||
|
||||
# v2019.11.04:
|
||||
|
||||
- Fix busybox mktemp compatibility (stanzgy) #1369
|
||||
- Install debian 10 packages on debian 10 instead of 9 (kiemlicz) #1375
|
||||
- move centos to python36, use python specified by -x (Ch3LL,bryceml) #1380
|
||||
- Add debian 10 git install support (Ch3LL) #1378
|
||||
|
||||
# v2019.10.03:
|
||||
|
||||
- Fix possible typo with `gnupg-curl` vs `gnupg curl` (zahiar)
|
||||
- Install only python3 packges if requested on ubuntu (noelmcloughlin) #1356
|
||||
- Fixing debian wheezy (bryceml) #1359
|
||||
- Fixed Amazon Linux 2 detection when lsb_release is installed (jars99) #1361
|
||||
- Mac OS Support (felippeb) #1363 #1364 #1365 #1366
|
||||
|
||||
# v2019.05.20:
|
||||
|
||||
- Allow stable version selection for amazon linux (puluanau) #1328
|
||||
- FreeBSD 12 support (sticky-note) #1329
|
||||
- Apt wait for lock modification (ripesensor) #1335
|
||||
- Opensuse 15 Git installation fixes (s0undt3ch) #1340 #1341
|
||||
- Amazon Linux Image fixes (nshenry03) #1343
|
||||
- apt_key_fetch fixes (greut) #1344
|
||||
- CentOS Git and PIP installation m2crypto fixes (s0undt3ch) #1347
|
||||
- CI process enhancements/fixes (s0undt3ch) #1347
|
||||
|
||||
# v2019.02.27:
|
||||
|
||||
- Add support for bunsenlabs devian derivative (kevinquinnyo) #1300
|
||||
- Add support for TurnKey devian derivative (dafyddj) #1313
|
||||
- Fix BSD develop install (hackacad) #1316
|
||||
- Ensure python-concurrent.futures is installed for Ubuntu (garethgreenaway) #1321
|
||||
|
||||
# v2019.01.08:
|
||||
|
||||
- use official amazon linux 2 repo for amazon linux 2 (mchugh19) #1287
|
||||
- Add release info to applicable docs (rallytime) #1292
|
||||
- Modify wait_for_apt function (ripesensor) #1291
|
||||
- Add support for LinuxMint 19 (darkocerdic) #1289
|
||||
- FIX #1237 SmartOS should use pkgin show-deps (sjorge) #1283
|
||||
- Fedora: Reduce DNF calls to 2 during install_dep phase (The-Loeki) #1278
|
||||
|
||||
# v2018.08.15:
|
||||
|
||||
- Add tests using kitchen-salt (gtmanfred) #1279
|
||||
- Add python-futures to Py2 installs (gtmanfred) #1279
|
||||
|
||||
# v2018.08.13:
|
||||
|
||||
- Fedora Py3 fixes (The-Loeki) #1273
|
||||
- Handle commented lines in the requirements files for pip pkgs (rallytime) #1271
|
||||
- Remove typo: extra 'c' was accidentally added in #1269 (rallytime) #1270
|
||||
- \[Arch\] Add python2-futures to list of pkgs on git install (rallytime) #1269
|
||||
- Fix undefined variable warn_msg on amd64 (alexandruavadanii) #1268
|
||||
- SLES12SP changed packages git to git-core and libzmq3 to libzmq4 (mfapouw) #1266
|
||||
- Add opensuse 15 specific installation functions (rallytime) #1263
|
||||
- Remove support for openSUSE Leap 42.2 (rallytime) #1262
|
||||
- Remove support for Fedora 26 (rallytime) #1261
|
||||
- Remove support for Ubuntu 17.10 (rallytime) #1260
|
||||
- Ensure pipe is absent before mkfifo/mknod (noelmcloughlin) #1256
|
||||
- fix for opensuse15 if no lsb_release pkg (noelmcloughlin) #1255
|
||||
- Fix Up ShellCheck errors/warnings for latest version of shellcheck (rallytime) #1253
|
||||
- Remove daily install option on Ubuntu system (icy) #1250
|
||||
- Add python 3 support for Ubuntu 18 (rallytime) #1248
|
||||
- Return immediately if apt-get fails (icy) #1247
|
||||
- Disable shell error about unbound variable during daily install (icy) #1246
|
||||
- OpenSuse_Leap_15.0 saltstack repo support (noelmcloughlin) #1244
|
||||
- Add Python3 package support for Debian 9 (rallytime) #1243
|
||||
- Add Python3 package support for CentOS 7 (rallytime) #1242
|
||||
- Shellcheck fixes found when running latest version (rallytime) #1239
|
||||
- Add Python3 package support for Ubuntu 16.04 (rallytime) #1238
|
||||
- Fix the variable ref from #803 (rallytime) #1229
|
||||
- Add Ubuntu 18.04 support (rallytime) #1228
|
||||
- Call \_\_git_clone_and_checkout directly (jheidbrink) #1226
|
||||
- Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
|
||||
# v2018.04.25:
|
||||
|
||||
- Install py-tornado4 for FreeBSD. (abednarik) #1219
|
||||
- Remove COPR repos configuration for Fedora (vutny ) #1211
|
||||
- Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
- Use integer parameter for sleep command (bdrung) #1205
|
||||
- Add 2018.3 branch to list of stable options (rallytime) #1204
|
||||
- If installing with -P, install tornado\<5.0. (rallytime) #1203
|
||||
- Add M2Crypto to python27 centos 6 bootstrap install (Ch3LL) #1201
|
||||
- Update README to include mention of bootstrap-salt.ps1 for Windows (rallytime) #1200
|
||||
- Port spelling fixes from change in Salt to Bootstrap (rallytime) #1199
|
||||
- Add M2Crypto package back to git install functions (rallytime) #1198
|
||||
- OpenBSD has a cdn which handles selecting the best mirror (jasperla) #1197
|
||||
- Change gnupg2 pacakge to gnupg for non-LTS versions of Ubuntu (rallytime) #1196
|
||||
- Install swig30 as freebsd dep instead of swig. (abednarik) #1191
|
||||
- make salt-syndic optional on salt bootstrap (sybix) #1190
|
||||
- Add \_\_wait_for_apt function: avoid locking on the apt-get process (rallytime) #1186
|
||||
- Update the README.rst file with some grammatical changes (rallytime) #1185
|
||||
- Update Fedora support: 25 is EOL, 27 is supported (rallytime) #1184
|
||||
- Add a note about the use of sudo when running commands to README (rallytime) #1183
|
||||
- Adding support for minor release pinning on AWS Linux (cmclaughlin) #1182
|
||||
- Wait for zypper processes to finish before calling zypper again (rallytime) #1181
|
||||
- only install ca-certificates on opensuse if it isn't already installed (gtmanfred) #1179
|
||||
|
||||
# v2017.12.13:
|
||||
|
||||
- Use HTTPS URL for OpenSuse's saltstack repo (gdm85) #1174
|
||||
- Respect disable repos (-r) option on OpenBSD (eradman) #1171
|
||||
- Fix #1168 : -b option causes error (vutny) #1170
|
||||
- Fix fatal error with using the -b option. (arizvisa) #1169
|
||||
- Devuan support (ymasson) #1165
|
||||
- Fix yum repo on AWS Linux (cmclaughlin) #1164
|
||||
- Use suse repo to install packages, rather than defining them (rallytime) #1157
|
||||
- Remove patch-level-1 specific code for SLES installs (rallytime) #1156
|
||||
- priority sort fedora-release (toanju) #1153
|
||||
- Declare EOL for SUSE Linux Enterprise Server releases (vutny) #1150
|
||||
- Fix #1142: allow git install on Raspbian 9 (vutny) #1146
|
||||
- Follow symlinks when parsing distro release files (vutny) #1145
|
||||
- fedora: use dnf-utils for F26 and above (toanju) #1144
|
||||
- Declare EOL for openSUSE LEAP 42.1 (vutny) #1143
|
||||
- Fix #1137: import GPG key through an HTTP(S) proxy (vutny) #1139
|
||||
- Fix #1138: git install on Debian/Ubuntu various arches (vutny) #1141
|
||||
- Declare EOL for openSUSE releases earlier and including 13.X (vutny) #1136
|
||||
- Update Fedora support: 24 is EOL (rallytime) #1134
|
||||
|
||||
# v2017.08.17:
|
||||
|
||||
- Add new authors (rallytime) #1130
|
||||
- README: Fix typo and Table of Contents for Debian section (vutny) #1129
|
||||
- Reduce the # of days an issue is stale to 6 months (rallytime) #1125
|
||||
- Only install Python version if "-y" is defined (rallytime) #1124
|
||||
- Allow powershell bootstrap script to specify PY2 or 3 (rallytime) #1123
|
||||
- Remove the test that checks if the EPEL RPM was installed (amendlik) #1122
|
||||
- added latest version string of nitrogen release 2017.7 (sourceindex) #1120
|
||||
- use versions specified in base.txt when doing pip installs (aflat) #1116
|
||||
- Remove pip install requirement on Fedora git installs (rallytime) #1114
|
||||
- Introductory support for Debian 10 (Buster) (rallytime) #1113
|
||||
- Add Debian 9 support using official repo.saltstack.com packages (rallytime) #1111
|
||||
- Fix 1105 (vernondcole) #1110
|
||||
- Move SUSE specific function closer to related code (vutny) #1107
|
||||
- Update Authors file (rallytime) #1103
|
||||
- Fix ubuntu 16.04 LTS installation (BlaineAtAffirm) #1102
|
||||
- Add debian_codename_translation function, similar to Ubuntu (rallytime) #1101
|
||||
- Add the CODE_OF_CONDUCT.md file (rallytime) #1100
|
||||
- Update Debian and Ubuntu service file paths to be consistent with salt (rallytime) #1099
|
||||
- Add hash verification information to installation instructions (rallytime) #1098
|
||||
- Fix installing salt-cloud package on Arch Linux (rallytime) #1097
|
||||
- Support bootstrapping on upcoming Debian GNU/Linux 9.0 (vutny) #1096
|
||||
- Removes faulty explicit version ordering (absolutejam) #1095
|
||||
- Remove configuring EPEL repo for Amazon Linux (vutny) #1093
|
||||
- Fix -j/-J (JSON configs) options for Debian 8 (vutny) #1092
|
||||
- Fix #1035: detect and log errors earlier (vutny) #1091
|
||||
- Update AUTHORS file (rallytime) #1089
|
||||
- Autounmask as separate step (decomposite) #1088
|
||||
- Ensure presence of CONFIG_PROTECT_MASK files (decomposite) #1087
|
||||
- Update Fedora support: 23 is EOL now. (rallytime) #1084
|
||||
- Fix the -R option on Debian/Ubuntu (rallytime) #1082
|
||||
- Declare End-Of-Life for Ubuntu 12.04 LTS (vutny) #1080
|
||||
|
||||
# v2017.05.24:
|
||||
|
||||
- Use freebsd repo to query for salt dependencies (Ch3LL) #1076
|
||||
- Allow amazon to work with python2.7 on installs over 2016.11 (Ch3LL) #1073
|
||||
- ensure sles12 enables services with stable installs (Ch3LL) #1075
|
||||
- Declare End-of-Life for RHEL 5 and its variants (vutny) #1070
|
||||
- Fix configuring SaltStack's repo URL for RHEL variants (vutny) #1068
|
||||
- Add Manjaro as Arch derivative (luthes) #1063
|
||||
- Add "unmarkComment" option to probot-stale config (rallytime) #1064
|
||||
- Properly detect all supported Debian GNU/Linux derivatives (vutny) #1062
|
||||
- Archlinux must always update (gtmanfred) #1060
|
||||
- Alpine: fix adding, checking and running Salt Syndic in stable mode (vutny) #1059
|
||||
- Add KDE neon... (EHJ-52n) #1058
|
||||
- Update probot-stale message formatting. (rallytime) #1057
|
||||
- Fix `git` bootstrap mode for CentOS (vutny) #1054
|
||||
- update install_freebsd_10_stable to use FreeBSD repo (bytesatwork-xx) #1053
|
||||
- Support OpenBSD 6.1 (eradman) #1048
|
||||
- Update daysUntilStale value in probot-stale config (rallytime) #1055
|
||||
- Add ability to install and use a different python version when installing salt (Ch3LL) #1049
|
||||
- Add non-LTS type support for Ubuntu 17.04 (rallytime) #1051
|
||||
- Allow -R option to work for Debian/Ubuntu (rallytime) #1045
|
||||
- Adjust "daysUntilStale" variable to 190 days. #1047
|
||||
- Reduce the number of days an issue is considered "stale" (rallytime) #1046
|
||||
- Alpine: fix bootstrapping from Git -- install OpenRC initscripts (vutny) #1044
|
||||
- Add probot-stale config file (rallytime) #1042
|
||||
- Shallow cloning and Python setup fix for BSD (amontalban) #1040
|
||||
- Fix not needed quoting for salt/salt-bootstrap#1026 (amontalban) #1039
|
||||
- Update README file with supported release documentation (rallytime) #1034
|
||||
- Remove \<\<\< bashism (The-Loeki) #1032
|
||||
- \[-R option\] Fix logic error where we trying to enable epel with -R (rallytime) #1033
|
||||
- Alpine: check Salt services have been enabled to start on boot (vutny) #1031
|
||||
- AWS Linux Native Support (bkruger99) #1022
|
||||
- Correct package name for FreeBSD installation (amontalban) #1030
|
||||
- README: describe architectures support for Salt deps on Linux distros (vutny) #1029
|
||||
- This commit addresses some of the issues in salt/salt-bootstrap#996 (amontalban) #1026
|
||||
- Add support for stable installation on Alpine Linux release 3.5 (vutny) #1028
|
||||
- Alpine Linux: fix installation of multiple pkgs ("stable" bootstrap) (vutny) #1027
|
||||
- Add Void Linux support (ndrwdn) #1025
|
||||
- RHEL6: disable stdin to fix shell session hang on killing tee pipe (vutny) #1018
|
||||
- Adding 2016.11 to stable version (ashokrajar) #1017
|
||||
- Update bootstrap-salt.sh (caelor) #1015
|
||||
- Alpine Linux support #1009 (ek9) #1010
|
||||
- Add Table of Contents in README (vutny) #1014
|
||||
|
||||
# v2017.01.10:
|
||||
|
||||
- Update AUTHORS.rst with new contributors (rallytime) #1011
|
||||
- fix bootstrap in Arch Linux by updating package name from salt-zmq to salt (ek9) #1007
|
||||
- Add python-systemd package to debian 8 git install (rallytime) #1003
|
||||
- Updated supported versions for Ubuntu: 12.04, 14.04, 16.04, and 16.10 (best effort) (rallytime) #1002
|
||||
- Add "yakkety" to ubuntu_codename_translation function (rallytime) #1001
|
||||
- Update supported versions for Fedora: 23, 24, and 25. (rallytime) #1000
|
||||
- Handle renaming of gnupg-curl to gnupg1-curl for Ubuntu 16.10 (marco-m) #998
|
||||
- fix systemctl path (dmitrievav) #997
|
||||
- Drop unnecessary workarounds (creating directories) for early releases (vutny) #995
|
||||
- Let's detect newly released Salt 2016.11 stable release (vutny) #994
|
||||
- Adjust code examples to use the actual bootstrap-salt.sh file name (rallytime) #993
|
||||
- Install TLS certs before cloning git repo via https (vutny) #991
|
||||
- Remove fix me comment and fix systemsmanagement link (rallytime) #990
|
||||
- Correct usage description about "config only" mode (vutny) #989
|
||||
- Fix overwriting Minion config from temporarily directory (vutny) #988
|
||||
- Configure Salt components after the dependencies installation (vutny) #987
|
||||
- Add CloudLinux support (rallytime) #986
|
||||
- Apply the insecure flag to git as well (cachedout) #981
|
||||
|
||||
# v2016.10.25:
|
||||
|
||||
- Update AUTHORS.rst with new contributors (rallytime) #978
|
||||
- Let's start detecting the upcoming Debian 9 (Stretch) (lhost) #975
|
||||
- FreeBSD: set \_SALT_ETC_DIR directory to match ports (eradman) #970
|
||||
- Update OpenBSD 6.0+ provisioning (eradman) #969
|
||||
- adds supports for Cumulus Linux (plumbis) #967
|
||||
- Run "pip install -U futures" for SmartOS git install (rallytime) #966
|
||||
- Change /pkg/rpm/ to /pkg/deb/ in install_ubuntu_git_post func (rallytime) #965
|
||||
- SUSE: Refactor systemsmanagement_saltstack repo checks to be DRY (rallytime) #964
|
||||
- Fix detection of EPEL repository with not-expired metadata (sp1r) #963
|
||||
- Display warning message about deprecating the `-G` option (vutny) #958
|
||||
- Allow correct salt paths to be used when -c is passed (justinta) #955
|
||||
- Fix issues with replacing configs when python3 is default in os. (fizmat) #954
|
||||
- Remove m2crypto package installs (rallytime) #951
|
||||
- Try to install SP4 packages on SLE 11 when SP version is older (rallytime) #950
|
||||
- Add python-futures package to install_centos_git_deps (rallytime) #948
|
||||
- Add /etc/portage/package.accept_keywords to CONFIG_PROTECT_MASK (rallytime) #947
|
||||
- Deprecate `-G` option: use `https` scheme for GitHub by default (vutny) #945
|
||||
- \[SECURITY\] Properly handle GnuPG keys for APT repositories (vutny) #940
|
||||
|
||||
# v2016.08.16:
|
||||
|
||||
- Ubuntu git mode: install all deps from SaltStack corp repo by default. (vutny) #936
|
||||
|
||||
# v2016.08.15:
|
||||
|
||||
- Remove chris-lea python-zmq repo. (rallytime) #929
|
||||
- Disable the '--enablerepo=${\_EPEL_REPO}' part of yum install cmds when passing -R/-r. (rallytime) #928
|
||||
- Fix grep pattern in `__check_services_sysvinit`. (vutny) #927
|
||||
- Missing python dependency for salt-cloud added. (toanju) #925
|
||||
- Fix git install mode when using commit hash with `-g` option. (vutny) #922
|
||||
- Install `salt-cloud` package with `-L` option in `stable` mode. (vutny) #919
|
||||
- Fix bootstrapping from Git on CentOS7 when `systemd` is not running. (vutny) #915
|
||||
|
||||
# v2016.07.07:
|
||||
|
||||
- Add new contributors to authors list. (rallytime) #910
|
||||
- Split up python-requests and python-msgpack packages for newer Fedora. (rallytime) #909
|
||||
- Fix typo in repository configuration for FreeBSD. (ekollof) #907
|
||||
- Make sure $STABLE_REV is set before setting up SaltStack repo. (rallytime) #906
|
||||
- Remove tests written question from template. (rallytime) #904
|
||||
- Adding support for Linux Mint 18 (based on Ubuntu 16.04). (eliezerlp) #902
|
||||
- Allow git installation for SLES 12. (rallytime) #903
|
||||
- Set repo_arch for raspberry pi installs. (mrichar1) #899
|
||||
- Change temporary directory for storing executable to C:\\Windows\\Temp. (themalkolm) #897
|
||||
- add apt-transport-https for ubuntu. (epcim) #896
|
||||
- Fix expanding shell script position parameters with nounset enabled. (vutny) #895
|
||||
- RFC: Add tests for bootstrap-salt.ps1. (themalkolm) #893
|
||||
- Keep original name of salt executable executable. (themalkolm) #857
|
||||
|
||||
# v2016.06.27:
|
||||
|
||||
- Fix race condition when doing one-liner bootstrap. (vutny) #889
|
||||
- Add space back in between 'install' and '--install'. (rallytime) #890
|
||||
|
||||
# v2016.06.24:
|
||||
|
||||
- Save invocation command and arguments into variables. (jfindlay) #885
|
||||
- Update the authors list with new contributors. (rallytime) #884
|
||||
- Add option to make setup.py install quiet. (nasenbaer13) #865
|
||||
- Fix lint. (jfindlay) #881
|
||||
- Add -R option to allow a custom repo URL. (rallytime) #877
|
||||
- Exclude path of script when called from another dir. (l2ol33rt) #871
|
||||
- Print invocation info. (jfindlay) #869
|
||||
- Always refresh the Arch Linux keyring if needed. (cachedout) #868
|
||||
- Ubuntu 16.04 LTS Xenial Support. (notpeter) #852
|
||||
- Install Salt packages from repo.saltstack.com on Debian 7 "Wheezy". (vutny) #864
|
||||
- Drop support for Debian 6 old-old-stable "squeeze": reached end-of-life. (vutny) #860
|
||||
- Removed ubuntu version restriction for apt-get update. (marccardinal) #859
|
||||
- Fix bootstrapping from git on Debian 8 by installing latest `tornado` via pip. (vutny) #828
|
||||
- Add the ability to override master and/or minion configs from CLI. (rallytime) #841
|
||||
- Don't sleep 11 seconds if the user allowed overwrite of config files. (poelzi) #832
|
||||
|
||||
# v2016.05.11:
|
||||
|
||||
- Only overwrite the minion config file if '-C' is passed. Otherwise, preserve it. (rallytime) #848
|
||||
|
||||
# v2016.05.10:
|
||||
|
||||
- Removed libzmq4 and forking-deamon-patch for Opensuse13. (jtand) #840
|
||||
- Ubuntu 12.04 needs to be updated before installing packages. (jtand) #829
|
||||
- Always download and install *latest* `epel-release` package on RHEL systems. (vutny) #825
|
||||
- Fix Amazon Linux EOL check. (vutny) #818
|
||||
|
||||
# v2016.04.18:
|
||||
|
||||
- Add support for openSUSE Leap. Thanks Roman Inflianskas(rominf). #693
|
||||
- Fix missing deps installation on Debian. Thanks Steve Groesz(wolfpackmars2). #699
|
||||
- Update SaltStack repo location and latest version for Windows. (brandon099) #711
|
||||
- Better EPEL repository detection on RHEL and CentOS. (vutny) #717
|
||||
- Fix git invocation fail when `man` command is not available. (vutny) #718
|
||||
- Fix `epel-release` package installation on CentOS/RHEL 5. (vutny) #719
|
||||
- Removed deprecated cli option. (abednarik) #705
|
||||
- Remove RHEL optional repo check and enable. (vutny) #720
|
||||
- Remove SaltStack COPR repository configuration for CentOS/RHEL5. (vutny) #721
|
||||
- Add opensuse_Tumbleweed support. (aboe76) #725
|
||||
- Sometimes bootstrap doesn't install zmq. (jtand) #726
|
||||
- Process -s (default sleep for service restarts) in bootstrap-salt.sh. (hipikat) #692
|
||||
- Minion keys and /etc/salt/minion should be overwritten on -C. (cro) #541
|
||||
- Fix for -C (\_CONFIG_ONLY). (beaucephus) #544
|
||||
- Fix when using upstream tags. (The-Loeki) #564
|
||||
- COPR project moved. (rmohr) #738
|
||||
- Update license year range. (pra85) #743
|
||||
- Use POSIX-Compliant Command-Exists Test. (kojiromike) #741
|
||||
- Add -f option to force shallow cloning. (eyj) #660
|
||||
- add SLE 12 support, fix OpenSUSE support. (grep4linux) #748
|
||||
- Fix CentOS git setup.py syntax error upon installation. (The-Loeki) #746
|
||||
- Enable shallow cloning for version branches by default, not only tags. (vutny) #750
|
||||
- do not install copr repo on fedora 22+. (toanju) #751
|
||||
- Add support for pegged versions on YUM based OS'ses through repo.saltstack.com. (The-Loeki) #685
|
||||
- fix for FreeBSD 11 CURRENT install functions. (serge-p) #723
|
||||
- Don't add zypp repo if it already exists. (furlongm) #731
|
||||
- switch repositories for suse and sles fixes `#706`\_. (aboe76) #734
|
||||
- Reformat and correct usage instructions. (vutny) #755
|
||||
- fixed missing repo for suse 12. (aboe76) #756
|
||||
- fix for Amazon Linux. (shawnbutts) #700
|
||||
- adding support for OpenBSD distribution. (serge-p) #722
|
||||
- fixing syntax errors. (beardedeagle) #760
|
||||
- Import CentOS 7 GPG key on RHEL for installing base dependencies from Salt corp repo. (vutny) #765
|
||||
- Fix multiple lint errors (shellcheck) and make some refactoring. (vutny) #768
|
||||
- Fix sleep time option to recognize a numeric argument. (vutny) #771
|
||||
- Update README. (vutny) #787
|
||||
- get tornado from pip on a fedora git install. (jfindlay) #785
|
||||
- Remove the Saltstack repo's alias. (cro) #794
|
||||
- Ability to change cache dir. (clarkperkins) #761
|
||||
- Add config_freebsd_salt func so freebsd puts cfgs in the right place. (ryanwalder) #779
|
||||
- Allow archive versions. (clarkperkins) #769
|
||||
- Lack of HTTPS for RPM packages. (jaredestroud) #783
|
||||
- Ability to change cache dir. (clarkperkins) #761
|
||||
- Bootstrap on Docker. (vutny) #793
|
||||
- add downstream pkg repo for SUSE. (jfindlay) #791
|
||||
- Fixed use of HTTP over HTTPS for anonscm.debian.org. (gdm85) #788
|
||||
- Bump Salt version to latest stable in PS bootstrap script for Windows. (vutny) #801
|
||||
- Add an -l option to switch https to http links. (rallytime) #795
|
||||
- Virtualenv support for Ubuntu. (l2ol33rt) #666
|
||||
- Lint. (jfindlay) #805
|
||||
- use portable command check. (jfindlay) #806
|
||||
- Update epel-release version number (RuriRyan) #809
|
||||
|
||||
# v2015.11.09
|
||||
|
||||
- Make sure that wget is installed. #868
|
||||
|
||||
# v2015.11.04:
|
||||
|
||||
- Allow bypassing dependencies installation. Thanks EYJ. #656.
|
||||
- Add FreeBSD 11 support. Thanks Chris Buechler(cbuechler). #653
|
||||
- Move RHEL installations to use repo.saltstack.com #674
|
||||
- Move Debian 8 installation to use repo.saltstack.com #674
|
||||
- Fix error finding python-jinja2 in RHEL 7. Thanks Rob Eden(hedinfaok). #654
|
||||
- Move Ubuntu 12 and 14 installations to use repo.saltstack.com #674
|
||||
- Move FreeBSD installations to use repo.saltstack.com #674
|
||||
- Use dnf on Fedora 22 and later. Thanks Michele Bologna (mbologna). #665
|
||||
|
||||
# v2015.08.06:
|
||||
|
||||
- Fix python-requests installations for Ubuntu >= 14.04 LTS. #631, #632, #633
|
||||
- Install python-crypto from Chris Lea's PPA for Ubuntu \< 14.04
|
||||
- Exit the git checkout directory before deleting it. Thanks Bret Fisher. #634
|
||||
- Use prefix /usr for centos git install. Thanks Stanislav B. #638
|
||||
- Drop Ubuntu EOL versions. All Ubuntu version before 12.04.
|
||||
- Make sure python-dev is installed wheb trying to install tornado from PyPi. #640
|
||||
|
||||
# v2015.07.22:
|
||||
|
||||
- Fix tornado installation in Ubuntu. Thanks Yushi Nakai. #627
|
||||
- Install tornado using pip on Ubuntu for Salt's v2015.8.xx onward stable releases.
|
||||
- Install requests on Ubuntu from Chris Lea's PPA. #630
|
||||
|
||||
# v2015.07.17:
|
||||
|
||||
- Make sure setuptools is installed before using it. #598.
|
||||
- `systemd` is only fully supported from 15.04 onwards. #602
|
||||
- Fix debian mirrors issue. Thanks Wolodja Wentland(babilen). #606
|
||||
- Fix python-jinja2 repo move on RHEL6. Thanks lomeroe. #621
|
||||
- Allow skipping services. Thanks denmat. #455
|
||||
- Fix missing Debian init script. #607 saltstack/salt#25270 and saltstack/salt#25456
|
||||
- Fix SmartOS etc path. Thanks Bret Fisher. #624
|
||||
- Fix possible unbound variable in Gentoo. #625
|
||||
- Properly detect the git binary in SmartOS. #611
|
||||
|
||||
# v2015.05.07:
|
||||
|
||||
- Lower required requests version dependency. Use system requests package where possible.
|
||||
- Allow Ubuntu alternate ppas. Thanks Peter Tripp(notpeter). #563
|
||||
|
||||
# v2015.05.04:
|
||||
|
||||
- Fix the configuration path for FreeBSD. #567/#552. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
\+ Fix non grouping support in POSIX sed. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
- Add Debian 8 support. Thanks Matt Black(mafrosis)
|
||||
- Improve Debian version parsing. Thanks Mark Lee(malept)
|
||||
- Make sure we update packages list one Chris Lea's PPA repository is added.
|
||||
- Hard code the Debian Squeeze backports to the DE mirror since the main repository is down.
|
||||
Thanks @panticz. #589.
|
||||
- Only install git if not already installed. #560
|
||||
- Fix openSUSE 13.2 where we need to pass --replaceflags. Thanks Roman Inflianskas(rominf).
|
||||
#504.
|
||||
- Make sure that a recent enough requests package is installed in Debian/Ubuntu.
|
||||
- Install tornado on git installs for the develop branch if necessary. #580
|
||||
- Add support for Ubuntu 15.04
|
||||
|
||||
# v2015.03.15:
|
||||
|
||||
- Add multi-master support. Thanks Fred Reimer(freimer). #555
|
||||
|
||||
# v2015.03.04:
|
||||
|
||||
- Fix the salt package selection on Arch stable installs.
|
||||
|
||||
# v2015.02.28:
|
||||
|
||||
- Fix Debian backports repository.
|
||||
|
||||
# v2015.02.27:
|
||||
|
||||
- Try other tools besides wget when downloading the COPR repo file. Thanks Ronald van
|
||||
Zantvoort(The-Loeki)
|
||||
- No need to install packages from the Unstable repository for debian, use backports. Thanks
|
||||
Ari Aosved(devaos)
|
||||
- Fix an issue in CentOS where the syndic package wasn't being installed(since it's now a
|
||||
separate package). Thanks Ronald van Zantvoort(The-Loeki)
|
||||
- Enable the server-optionals repository for RHEL >= 7
|
||||
- RHEL/CentOS 5 now uses the COPR repository. #533
|
||||
|
||||
# v2015.01.12:
|
||||
|
||||
- Add package upgrades support to FreeBSD. Thanks William Eshagh(eshagl).
|
||||
- Make sure wget is installed on debian bare systems.
|
||||
- Make sure the Arch pacman database is up to date
|
||||
- Install `python-hashlib` in CentOS 5 in order to use the COPR repository
|
||||
|
||||
# v2014.12.11:
|
||||
|
||||
- Enable binary installations on CentOS 7. Thanks ggillies
|
||||
- Updated the URL for EPEL 7
|
||||
|
||||
# v2014.10.30:
|
||||
|
||||
- Apply the forking patch to openSUSE git installations.
|
||||
|
||||
# v2014.10.28:
|
||||
|
||||
- Install the python systemd bindings for Arch and Fedora git installations
|
||||
- Allow cloning from Salt's git repository using HTTPS. #475
|
||||
|
||||
# v2014.10.21:
|
||||
|
||||
- Fix path to python on FreeBSD. Thanks Pavel Snagovsky(paha)
|
||||
- Fix syndic installation on RHEL based installations. Thanks markgaylard
|
||||
- Properly detect the git checkout `basename` directory instead of hard coding it. Thanks
|
||||
Howard Mei(HowardMei).
|
||||
- Allow installing ZMQ for SaltStack's COPR repository.
|
||||
- Allow installing ZMQ4/PyZMQ14 from Chris Lea's PPA repository.
|
||||
|
||||
# v2014.10.14:
|
||||
|
||||
- Fixed a regex issue with matching Salt's tags. Match v2014.7 but not 2014.7 as a valid tag
|
||||
- Distro Support Added:
|
||||
- Added Linux Mint 17 support(Thanks Skyler Berg)
|
||||
- Disrto Suuport Fixed:
|
||||
- Init pacman keys if not done so previously
|
||||
|
||||
# v2014.09.25:
|
||||
|
||||
- Properly detect Amazon AMI's >= 2014.9. #468
|
||||
|
||||
# v2014.09.09:
|
||||
|
||||
- Distro Support Fixes:
|
||||
- Updated the URL for EPEL 7
|
||||
- PIP based installations on Ubuntu 10.04 need setuptools installed
|
||||
- Arch stopped providing the version information on `/etc/arch-release`
|
||||
- Complete `salt-api` services checking. #450
|
||||
|
||||
# v2014.08.30:
|
||||
|
||||
- Skip service checks for `salt-api`, since this should be an opt-in service not necessarily
|
||||
meant to start at boot time.
|
||||
- Distro Support Fixes:
|
||||
- Also install the salt-api service on RHEL based distributions for git based
|
||||
installations.
|
||||
- Properly detect Arch Linux when lsb-release is available
|
||||
- Updated the URL for EPEL 7
|
||||
|
||||
# v2014.08.23:
|
||||
|
||||
- Avoid redirect breakage when installing EPEL with rpm on RHEL 5
|
||||
- Ensure python-apt is installed by the bootstrap script for Debian & Ubuntu minions. Thanks
|
||||
@garethgreenaway.
|
||||
- Don't shallow clone on git versions lower than 1.7.10
|
||||
- Only shallow clone on git tag based installations
|
||||
- Configurable Salt repository clone directory for git based installations
|
||||
- Distro Support Fixed:
|
||||
- Fixed the URL to download EPEL for Cent 5
|
||||
- Use the full path to the `chkconfig` binary when checking for services in SysV init
|
||||
systems.
|
||||
- Fixed an issue where the default sleep period(3 secs) on Ubuntu would cause a race
|
||||
condition with upstart wherein the package installation would call an upstart start and
|
||||
before it could complete, bootstrap would call another. The result was *two* copies of salt
|
||||
running which ended up causing a most stubborn bug that's documented in
|
||||
https://github.com/saltstack/salt/issues/12248
|
||||
|
||||
# v2014.07.29:
|
||||
|
||||
- Shallow clone Salt's repository for speed improvements. In case of failure, resume old
|
||||
behaviour.
|
||||
- Fixed bug introduced in 0577622 when salt-api service install and checks were added
|
||||
- Distro Support Fixed:
|
||||
- Fixed infinite loop when handling RHEL dependencies. Thanks Dan Mick(@dmick).
|
||||
|
||||
# v2014.07.27:
|
||||
|
||||
- Amazon Linux AMI 2010.xx is not explicitly not supported.
|
||||
- Install the `salt-api` scripts if available when the `salt-master` is also installed.
|
||||
- Added support for a configurable sleep time when starting, restarting and checking for
|
||||
enabled services.
|
||||
- Drop the `tsflags` requirement for RHEL and RHEL based distributions.
|
||||
- When sorting release files, oracle-release has higher priority than redhat-release.
|
||||
- Distro Support Fixed:
|
||||
- Debian >= 7 uses system's python-requests package, not PIP
|
||||
- Install 'python-zypp' in SuSE and openSUSE(required by Salt's zypper module)
|
||||
- Only install EPEL on requiring distributions if not already installed
|
||||
- CentOS 7 now uses systemd and the script now properly handles it
|
||||
- systemd in openSUSE 12.2 complains if service does not contain ``` .service`` * Properly detect openSUSE using ```lsb_release
|
||||
- SLES 11 SP3 ships with both python-M2Crypto-0.22.\* and python-m2crypto-0.21 and we will
|
||||
be asked which we want to install, even with --non-interactive. Let's try to install the
|
||||
higher version first and then the lower one in case of failure.
|
||||
- Allow some extra time on RHEL for the optionals repo check in case the repository
|
||||
subscription is being managed externally.
|
||||
|
||||
# v2014.06.30:
|
||||
|
||||
- Distro Support Fixed:
|
||||
- Bump build/maintenance version for epel-release package. Thanks Gregory Meno(GregMeno)
|
||||
- Properly detect Amazon Linux AMI when using `lsb_release`
|
||||
- Fix `tsflags` installation.
|
||||
|
||||
# v2014.06.28:
|
||||
|
||||
- Fixed `tsflags` packages detection for RHEL and Oracle Linux 6.5
|
||||
|
||||
# v2014.06.21:
|
||||
|
||||
- Also export the HTTPS proxy environment variable. Thanks Giuseppe Iannello(gianello).
|
||||
- Distro Support Fixed:
|
||||
- Improve Oracle Linux Server detection
|
||||
- Overcome the Oracle Linux awkwardness. `--enablerepo=XYX` disables ALL OTHER REPOS!!!!
|
||||
- Oracle Linux also support testing repositories installation
|
||||
|
||||
# v2014.06.19:
|
||||
|
||||
- Allow passing the master address as an environment variable, `BS_SALT_MASTER_ADDRESS`
|
||||
- Fixed an issue with the keys pre-seed. We were passing absolute paths where we only needed
|
||||
basenames.
|
||||
- Added HTTP proxy configuration support. Thanks Giuseppe Iannello(gianello),
|
||||
- Distro Support Added:
|
||||
- Elementary OS
|
||||
- RHEL 7 Beta/RC
|
||||
- Kali Linux. Thanks Valentin Bud(valentinbud)
|
||||
- Distro Support Fixed:
|
||||
- Improved RHEL optionals repository detection
|
||||
|
||||
# v2014.04.16:
|
||||
|
||||
- Fixed a bug for RHEL 6 based distributions where yum-utils was not getting installed.
|
||||
- Added minor version check for RHEL 6 optional channel.
|
||||
- Added quotes around "apache-libcloud>=$\_LIBCLOUD_MIN_VERSION" for proper version requirements
|
||||
handling.
|
||||
- Install the python 'requests' package which is now a hard dependency in Salt.
|
||||
- When installing from a user defined repository add the official one as a remote and fetch
|
||||
its tags for proper versioning.
|
||||
- Distro Support Fixed:
|
||||
- CentOS netinstall ISO's don't install `chkconfig`
|
||||
- Improved RHEL optional repository detection. This allows user repository usage, which
|
||||
don't need the optional repository support since they usually provide their packages.
|
||||
- Distro Support Added:
|
||||
- Oracle Linux
|
||||
- Scientific Linux
|
||||
|
||||
# v2014.03.10-1:
|
||||
|
||||
- Distro Support Fixed:
|
||||
- Fix the Debian services running function
|
||||
|
||||
# v2014.03.10:
|
||||
|
||||
- Debian based distributions which don't use upstart now also check if the salt services are
|
||||
enabled.
|
||||
- Distro Support Fixed:
|
||||
- RedHat based distributions now have a proper services enabled checker.
|
||||
|
||||
# v2014.02.27:
|
||||
|
||||
- Fixed a bug on the services enabled function searching logic.
|
||||
- Arch, Fedora, openSUSE and SuSE now check for services enabled, if using systemd
|
||||
- CentOS(and any RedHat based) and Ubuntu now check for services enabled is using upstart
|
||||
- Distro Support Added:
|
||||
- Debian 8. Thank You Boris Feld(Lothiraldan).
|
||||
|
||||
# v2014.02.19:
|
||||
|
||||
- Fixed a problem with the quotes of an error message
|
||||
- Arch installations now uses the community repository
|
||||
- Distro Support Fixed:
|
||||
- Fixed Fedora Git based installations(git was not being installed)
|
||||
|
||||
# v2014.02.18:
|
||||
|
||||
- Debian based distribution now get a warning stating that NOT starting daemons does not work
|
||||
as supposed, mainly because that's the Debian policy.
|
||||
- Fix bug introduced when implementing the master ip flag. The default minion includes
|
||||
directory is `minion.d`, not `minion.conf.d`
|
||||
|
||||
# v2014.02.16:
|
||||
|
||||
- The script now allows setting up the salt-master address as a separate configuration file by
|
||||
passing `-A` to the script.
|
||||
- Add support to install apache-libcloud by passing the `-L` flag. In some distribution it's
|
||||
also needed to pass `-P` because the minimal apache-libcloud version is `0.14.0`. This support
|
||||
is still missing for FreeBSD and SmartOS.
|
||||
- Fixed an issue when copying or moving files. We now test to see if the destination is a
|
||||
directory and create a full path from that so that the "do not override" logic works as
|
||||
supposed. #294.
|
||||
- Allow passing additional package names to install while installing Salt's dependencies. #262
|
||||
- Pass the salt configuration directory, default or from environment variable to the setup.py
|
||||
script for git based installations. #305
|
||||
- Distro Support Fixed:
|
||||
- FreeBSD `fetch` now has a notion of insecure certificates. Handle this properly. Thank
|
||||
You Mike Carlson(m87carlson).
|
||||
- Arch, openSUSE and SuSE are now upgradable when the `-U` flag is passed.
|
||||
- Force overwrites now works for existing init.d scripts on CentOS git installations. #259
|
||||
- Distro Support Added:
|
||||
- FreeBSD 10 is now also supported. Thank You Mike Carlson(m87carlson).
|
||||
- Red Had Enterprise Workstation is now supported.
|
||||
|
||||
# v1.5.11:
|
||||
|
||||
- Fixed an out of scope variable missed when moving functions around.
|
||||
|
||||
# v1.5.10:
|
||||
|
||||
- Salt no longer has the master branch in git, install from develop as default.
|
||||
- Installing from Git on Red Hat based distributions now also needs `yum-utils` installed.
|
||||
- Allow the script to use a different git repository to install from.
|
||||
- Fixed a bug where a branch name with dashes would be wrongly detected as an option to the
|
||||
script.
|
||||
- Default to secure file downloads(if any).
|
||||
- Distro Support Fixed:
|
||||
- Minimal Ubuntu installation might not have upstart installed, fixed.
|
||||
- FreeBSD now uses the official FreeBSD repository. Thank You Paul Brian(lifeisstillgood)!
|
||||
|
||||
# v1.5.9:
|
||||
|
||||
- Allow to not start the daemons after bootstrapping salt. This will allow `vagrant-lxc`
|
||||
installations, `debootstrap*`, etc, to finish properly. Thanks Henrik Holmboe (holmboe).
|
||||
- Distro Support Fixed:
|
||||
- Salt >= 0.17 requires ElementTree which is on the python standard library after python
|
||||
2.6 but openSUSE split that into a separate package.
|
||||
- Fixed a logic preventing proper Ubuntu bootstrapping on some situations.
|
||||
|
||||
# v1.5.8:
|
||||
|
||||
- Fixed an Ubuntu regression. `add-apt-repository` is only available on
|
||||
`software-properties-common` after 12.10, inclusive. Thanks Diego Woitasen(diegows)
|
||||
|
||||
# v1.5.7:
|
||||
|
||||
- For RedHat based distributions which rely on `epel`, the user can now pass `testing` to the
|
||||
script and `epel-testing` shall be used to bootstrap salt and it's dependencies.
|
||||
- No full system upgrades, if optional by the distribution, shall be done unless `-U` is passed
|
||||
to the bootstrap script(required upgrade procedures must exist on the script, currently Debian
|
||||
and RedHat based distributions support system upgrades).
|
||||
- Fixed an issue where passing BS_KEEP_TEMP_FILES=1 to the script was causing an error. #206.
|
||||
- Switched FreeBSD default packages repository to PCBSD(http://www.pcbsd.org) and added
|
||||
multiple repository support to install salt from the SaltStack's FreeBSD repository. Thanks
|
||||
Christer Edwards(cedwards).
|
||||
- Improved Gentoo Support. Thanks Elias Probst(eliasp).
|
||||
- Stop execution soon for end of life distributions or non supported distribution versions.
|
||||
- Distro Support Fixed:
|
||||
- Fixed an unbound variable while bootstraping Gentoo.
|
||||
- Fixed CentOS/RHEL 5.
|
||||
- Fixed crypto++ compilation. Thanks Kenneth Wilke(KennethWilke)!
|
||||
- Fixed FreeBSD git installations not pointing to the proper salt configuration directory,
|
||||
which on FreeBSD is '/usr/local/etc/salt'.
|
||||
- Fixed testing installation for Red Hat based distributions. Thanks Jeff Strunk(jstrunk)
|
||||
- Fixed wrong package name on Arch. Thanks Niels Abspoel(aboe76)
|
||||
- Make sure the Ubuntu universe repository is enabled. Thanks Karl Grzeszczak(karlgrz).
|
||||
- Fixed SmartOS installation. Thanks Matthieu Guegan(mguegan).
|
||||
|
||||
# v1.5.6:
|
||||
|
||||
- If there's a `grains` file on the provided temporary configuration directory, move it to the
|
||||
proper place while moving the minion configuration file.
|
||||
- Gentoo bootstraps can now use a bin host to provide binary packages, just set the
|
||||
`BS_GENTOO_USE_BINHOST` environment variable.
|
||||
- If `BS_KEEP_TEMP_FILES=1` is found on the environment, the script will copy the files instead
|
||||
of moving them.
|
||||
- There were still some `mv` and `cp` occurrences which were not using their `{move,copy}file`
|
||||
replacements which ended up on now respecting the "Do not override existing configuration"
|
||||
feature.
|
||||
- Distro Support Fixed:
|
||||
- Arch now upgrades it's system package properly as suggested on their mailing list.
|
||||
- Arch now moves back any configuration files provided by the user renamed by pacman on the
|
||||
installation process.
|
||||
- Fixed SmartOS detection(was being detected as Solaris) and bootstrapping. Fixed SmartOS
|
||||
different gcc package names for different package sets.
|
||||
- Fixed FreeBSD git based installations(no rc.d scripts were available).
|
||||
- Fixed FreeBSD not re-evaluating the `PKI_DIR` variable since the `SALT_ETC_DIR` was
|
||||
redefined.
|
||||
- Distro Support Added:
|
||||
- Linux Mint. Thanks Alex Van't Hof(alexvh)!
|
||||
- Linaro.
|
||||
|
||||
# v1.5.5:
|
||||
|
||||
- Fixed a variable error in the new pre-seed feature.
|
||||
- Fixed the destination path to where the pre-seed minions keys should be copied.
|
||||
- Debian installations now use SaltStack's repository.
|
||||
- Configuration files can now be passed as an URL to a compressed file. Thanks Geoff Garside!
|
||||
- Distro Support Fixed:
|
||||
- Debian's optional ZMQ3 support was fixed (libzmq3 has moved from experimental to
|
||||
unstable).
|
||||
- Ubuntu Lucid Daily PPA
|
||||
- SmartOS no longer ignores $SALT_ETC_DIR. Matthieu Guegan!
|
||||
- FreeBSD no longer ignores $SALT_ETC_DIR. Thanks Geoff Garside!
|
||||
- FreeBSD does not try to install pkgng if pkg is installed. Thanks Geoff Garside!
|
||||
- SunOS (Make use of XPG4 binaries on SunOS). Thanks Matthieu Guegan!
|
||||
- openSUSE (Don't fail if only one of the repositories failed to update)
|
||||
- Arch (Fixed the GPG issues for git installations)
|
||||
- Distro Support Added:
|
||||
- Gentoo. Thanks kaithar!
|
||||
|
||||
# v1.5.4:
|
||||
|
||||
- Fixed an issue we had when /proc/cpuinfo had more than one CPU. Detected on AMD CPUs.
|
||||
- OpenSUSE 12.3 uses lsb_release. Fix the returned distro name "openSUSE project" to "openSUSE"
|
||||
which the script handles.
|
||||
- Added an custom move function which will only override if required and if we permit it.
|
||||
- Implemented the necessary function to pre-seed minion keys on a salt master as an optional
|
||||
argument.
|
||||
- Distro Support Fixed:
|
||||
- FreeBSD (Don't let the script fail if PACKAGESITE is not set)
|
||||
- Debian Stable installations (the function search was not working as supposed)
|
||||
- Distro Support Added:
|
||||
- Ubuntu 13.04 (Was disabled because of a bad beta1. Fixed in beta2)
|
||||
|
||||
# v1.5.3:
|
||||
|
||||
- Return 0 or 1 from functions
|
||||
- Convert several pipes into a single awk call
|
||||
- Fixed `/etc/os-release` parsing
|
||||
- Fixed `config_salt()`
|
||||
- Distro Support Fixed:
|
||||
- EPEL-based installations (CentOS, Amazon Linux, RedHat)
|
||||
- SuSE/OpenSUSE (problem running the script twice, ie, existing `devel_languages_python`
|
||||
repository)
|
||||
- SuSE 11 SP1 (pip based install and config trigger)
|
||||
- Distro Support Added:
|
||||
- Debian 7 (Only git installations at the moment)
|
||||
|
||||
# v1.5.2:
|
||||
|
||||
- Fix issue with Travis testing (it installs it's own ZeroMQ3 lib
|
||||
- Allow setting the debug output from an environment variable
|
||||
- Fix an escape issue in the `printf` calls used in our echo calls
|
||||
- Don't overwrite files (`config`, `init.d`, etc). Use a specific flag to force overwrites.
|
||||
- Distro Support Fixed:
|
||||
- Ubuntu daily installs.
|
||||
- Distro Support Added:
|
||||
- Trisquel 6.0 (Ubuntu 12.04)
|
||||
|
||||
# v1.5.1:
|
||||
|
||||
- Improved unittesting.
|
||||
- Starting daemons.
|
||||
- Make sure that daemons are really running.
|
||||
- For the users to make the choice if installing from PIP (if required since there aren't system
|
||||
pacakges).
|
||||
- Fixed salt's git cloning when the salt git tree is already present on the system.
|
||||
- Distro Support Fixed:
|
||||
- Debian 6
|
||||
- Ubuntu 12.10
|
||||
- CentOS
|
||||
- Distro Support Added:
|
||||
- SuSE 11 SP1/11 SP2
|
||||
- OpenSUSE 12.x
|
||||
|
||||
# v1.5:
|
||||
|
||||
- First stable version of the script
|
||||
- Support for:
|
||||
- Ubuntu 10.x/11.x/12.x
|
||||
- Debian 6.x
|
||||
- CentOS 5/6
|
||||
- Red Hat 5/6
|
||||
- Red Hat Enterprise 5/6
|
||||
- Fedora
|
||||
- Arch
|
||||
- SmartOS
|
||||
- FreeBSD 9.0
|
873
ChangeLog
873
ChangeLog
|
@ -1,873 +0,0 @@
|
|||
Version TBD (In Progress on the Develop Branch):
|
||||
|
||||
Version 2022.03.15:
|
||||
* Add detection and functions for AlmaLinux and Rocky Linux (myii) #1803
|
||||
* Copy configs to correct config dirs (v3004+) (dafyddj) #1798
|
||||
* Support Non-LTS Ubuntu 21.04 & 21.10 (blindpirate) #1793
|
||||
* Use native repositories for Debian 11 (jpacura) #1615
|
||||
* Keep all command-line parameters when UAC is enabled (Simon-TheUser) #1613
|
||||
* Add support for Raspbian (Jille) #1612
|
||||
* Add openrc to alpine:latest dependencies (krionbsd) #1609
|
||||
* Add CentOS 7 base key (bryceml) #1608
|
||||
* Fix git master install on alpine 3.12+ (Nascire) #1604
|
||||
* Sort help alphabetically (krionbsd) #1601
|
||||
|
||||
Version 2021.09.17:
|
||||
* Re-add Ubuntu-16 support as it's still supported with 3001 and 3002 (krionbsd) #1594
|
||||
* Add oncoming 3004 release (krionbsd) #1593
|
||||
|
||||
Version 2021.09.14:
|
||||
* Update latest Salt version in README (krionbsd) #1588
|
||||
* Make Python 3 the default (bryceml) #1577
|
||||
* Don't output info if using the default -x value (bryceml) #1587
|
||||
|
||||
Version 2021.08.19:
|
||||
* Update README with instructions to use salt-bootstrap custom version (ari) #1580
|
||||
* Remove unsupported versions (bryceml) #1578
|
||||
* Update FreeBSD default Python version to 3.8 (myii) #1574
|
||||
|
||||
Version 2021.06.23:
|
||||
* Use salt.list instead of saltstack.list (bryceml) #1563
|
||||
* Use fetch_url function for curl (xeacott) #1562
|
||||
* Add Ubuntu 21.04 support (krionbsd) #1559
|
||||
* Remove python2-futures package for ArchLinux (myii) #1546
|
||||
|
||||
Version 2020.03.02:
|
||||
* Debian 11 (bullseye/testing) support using Debian 10 packages (jpacura, bryceml) #1514
|
||||
* Fix bootstrap on Gentoo (ijansky) #1516 #1518
|
||||
* Fix project URLs (bryceml) #1526
|
||||
* FreeBSD also needs the _PKI_DIR reset (krionbsd) #1523
|
||||
* Fix openSUSE Tumbleweed support. (myii) #1525
|
||||
* Fix Debian and Ubuntu version support. (jpacura) #1529
|
||||
* Powershell: Implement configure only option (for Vagrant). (dafyddj) #1530
|
||||
* Powershell: Handle Vagrant's `grains_config` option. (dafyddj) #1520
|
||||
* apt-key is deprecated on Debian 10+ and Ubuntu 20+ (bryceml) #1533
|
||||
* Fix python Tornado on FreeBSD. (krionbsd) #1522
|
||||
|
||||
Version 2020.10.20:
|
||||
* Add support to allow bootstrapping Salt 3002 (s0undt3ch) #1506
|
||||
|
||||
Version 2020.10.19:
|
||||
* Fix v3000+ with git install on FreeBSD (krionbsd) #1487
|
||||
* Update README giving ONE example of WINDOWS bootstrapping. Default to python3 instead of
|
||||
python2. (noelmcloughlin) #1496
|
||||
* Support git and stable salt-bootstrap on Gentoo. (ijansky) #1500
|
||||
* Add support for Linux Mint 20. (taigrr) #1502
|
||||
* Adding missing functions for Red Hat 8. (mbochenk) #1489
|
||||
* Allow pinning minor 3xxx versions. (max-arnold) #1491
|
||||
|
||||
Version 2020.06.23:
|
||||
* Fix for Cumulus Linux 4.1 (darylturner) #1474
|
||||
* Fix file download exit code, improve error message on failed download (bryceml) #1478
|
||||
* Add support for Ubuntu 20.04 (bryceml) #1479
|
||||
* Default Ubuntu 20.04 to Py3 since there isn't a Py2 release for it (bryceml) #1480
|
||||
* Warn instead of exit when using -R and -x python3 on centos to allow installing python3
|
||||
versions of salt on centos from other repos. Old unsupported releases probably need to
|
||||
manually install epel-release before running the bootstrap script for versions before 2018.3.5
|
||||
and before 2019.2.1 (bryceml) #1482
|
||||
* Start maintaining .sha256 files for the bootstrap script
|
||||
|
||||
Version 2020.05.28:
|
||||
* Fix Opensuse Tumbleweed (noelmcloughlin) #1441
|
||||
* Remove Debian 8 from Python 3 supported list (jay1648) #1448
|
||||
* Fixed deps parsing for FreeBSD git installs (cedwards) #1462
|
||||
* Added support for the upcoming Sodium release (s0undt3ch) #1466
|
||||
* Fixed KDE Neon detection (ender8282) #1466
|
||||
* Updated README python 2 and 3 installations (gdebunne) #1466
|
||||
* Updated README and CONTRIBUTING to prefer Salt's master branch (DmitryKuzmenko) #1466
|
||||
* Fixed IUS repo addresses (oeuftete) #1469
|
||||
* Updated tests to assert target Python and Salt versions (s0undt3ch) #1470
|
||||
* Fixed Amazon 2 -x support (s0undt3ch) #1470
|
||||
* Fix Fedora stable installs for older releases (s0undt3ch) #1470
|
||||
* Fix CentOS 8 installations (s0undt3ch) #1470
|
||||
* Default Debian 10 to Py3 (s0undt3ch) #1470
|
||||
* Fix Arch Linux installs (s0undt3ch) #1470
|
||||
|
||||
Version 2020.02.24:
|
||||
* Fix SLES 15 install (max298) #1431
|
||||
* Fix 3000(Neon) stable install (sblaisot) #1433
|
||||
* Fix Amazon Linux Py3 install (s0undt3ch) #1434
|
||||
|
||||
Version 2020.02.04:
|
||||
* Add support for the Salt Neon(3000) release (s0undt3ch) #1424
|
||||
* Drop support for Fedora < 30 (s0undt3ch) #1424
|
||||
* Drop support for Debian < 8 (s0undt3ch) #1424
|
||||
|
||||
Version 2020.01.29:
|
||||
* FreeBSD fixes (cedwards) #1413
|
||||
* Support the upcoming Neon release (s0undt3ch) #1420
|
||||
|
||||
Version 2020.01.21:
|
||||
* FreeBSD fixes (kgbsd) #1376
|
||||
* Fix macOS support (s0undt3ch) #1397
|
||||
|
||||
Version 2019.11.04:
|
||||
* Fix busybox mktemp compatibility (stanzgy) #1369
|
||||
* Install debian 10 packages on debian 10 instead of 9 (kiemlicz) #1375
|
||||
* move centos to python36, use python specified by -x (Ch3LL,bryceml) #1380
|
||||
* Add debian 10 git install support (Ch3LL) #1378
|
||||
|
||||
Version 2019.10.03:
|
||||
* Fix possible typo with `gnupg-curl` vs `gnupg curl` (zahiar)
|
||||
* Install only python3 packges if requested on ubuntu (noelmcloughlin) #1356
|
||||
* Fixing debian wheezy (bryceml) #1359
|
||||
* Fixed Amazon Linux 2 detection when lsb_release is installed (jars99) #1361
|
||||
* Mac OS Support (felippeb) #1363 #1364 #1365 #1366
|
||||
|
||||
Version 2019.05.20:
|
||||
* Allow stable version selection for amazon linux (puluanau) #1328
|
||||
* FreeBSD 12 support (sticky-note) #1329
|
||||
* Apt wait for lock modification (ripesensor) #1335
|
||||
* Opensuse 15 Git installation fixes (s0undt3ch) #1340 #1341
|
||||
* Amazon Linux Image fixes (nshenry03) #1343
|
||||
* apt_key_fetch fixes (greut) #1344
|
||||
* CentOS Git and PIP installation m2crypto fixes (s0undt3ch) #1347
|
||||
* CI process enhancements/fixes (s0undt3ch) #1347
|
||||
|
||||
Version 2019.02.27:
|
||||
* Add support for bunsenlabs devian derivative (kevinquinnyo) #1300
|
||||
* Add support for TurnKey devian derivative (dafyddj) #1313
|
||||
* Fix BSD develop install (hackacad) #1316
|
||||
* Ensure python-concurrent.futures is installed for Ubuntu (garethgreenaway) #1321
|
||||
|
||||
Version 2019.01.08:
|
||||
* use official amazon linux 2 repo for amazon linux 2 (mchugh19) #1287
|
||||
* Add release info to applicable docs (rallytime) #1292
|
||||
* Modify wait_for_apt function (ripesensor) #1291
|
||||
* Add support for LinuxMint 19 (darkocerdic) #1289
|
||||
* FIX #1237 SmartOS should use pkgin show-deps (sjorge) #1283
|
||||
* Fedora: Reduce DNF calls to 2 during install_dep phase (The-Loeki) #1278
|
||||
|
||||
Version 2018.08.15:
|
||||
* Add tests using kitchen-salt (gtmanfred) #1279
|
||||
* Add python-futures to Py2 installs (gtmanfred) #1279
|
||||
|
||||
Version 2018.08.13:
|
||||
* Fedora Py3 fixes (The-Loeki) #1273
|
||||
* Handle commented lines in the requirements files for pip pkgs (rallytime) #1271
|
||||
* Remove typo: extra 'c' was accidentally added in #1269 (rallytime) #1270
|
||||
* [Arch] Add python2-futures to list of pkgs on git install (rallytime) #1269
|
||||
* Fix undefined variable warn_msg on amd64 (alexandruavadanii) #1268
|
||||
* SLES12SP changed packages git to git-core and libzmq3 to libzmq4 (mfapouw) #1266
|
||||
* Add opensuse 15 specific installation functions (rallytime) #1263
|
||||
* Remove support for openSUSE Leap 42.2 (rallytime) #1262
|
||||
* Remove support for Fedora 26 (rallytime) #1261
|
||||
* Remove support for Ubuntu 17.10 (rallytime) #1260
|
||||
* Ensure pipe is absent before mkfifo/mknod (noelmcloughlin) #1256
|
||||
* fix for opensuse15 if no lsb_release pkg (noelmcloughlin) #1255
|
||||
* Fix Up ShellCheck errors/warnings for latest version of shellcheck (rallytime) #1253
|
||||
* Remove daily install option on Ubuntu system (icy) #1250
|
||||
* Add python 3 support for Ubuntu 18 (rallytime) #1248
|
||||
* Return immediately if apt-get fails (icy) #1247
|
||||
* Disable shell error about unbound variable during daily install (icy) #1246
|
||||
* OpenSuse_Leap_15.0 saltstack repo support (noelmcloughlin) #1244
|
||||
* Add Python3 package support for Debian 9 (rallytime) #1243
|
||||
* Add Python3 package support for CentOS 7 (rallytime) #1242
|
||||
* Shellcheck fixes found when running latest version (rallytime) #1239
|
||||
* Add Python3 package support for Ubuntu 16.04 (rallytime) #1238
|
||||
* Fix the variable ref from #803 (rallytime) #1229
|
||||
* Add Ubuntu 18.04 support (rallytime) #1228
|
||||
* Call __git_clone_and_checkout directly (jheidbrink) #1226
|
||||
* Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
|
||||
Version 2018.04.25:
|
||||
* Install py-tornado4 for FreeBSD. (abednarik) #1219
|
||||
* Remove COPR repos configuration for Fedora (vutny ) #1211
|
||||
* Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
* Use integer parameter for sleep command (bdrung) #1205
|
||||
* Add 2018.3 branch to list of stable options (rallytime) #1204
|
||||
* If installing with -P, install tornado<5.0. (rallytime) #1203
|
||||
* Add M2Crypto to python27 centos 6 bootstrap install (Ch3LL) #1201
|
||||
* Update README to include mention of bootstrap-salt.ps1 for Windows (rallytime) #1200
|
||||
* Port spelling fixes from change in Salt to Bootstrap (rallytime) #1199
|
||||
* Add M2Crypto package back to git install functions (rallytime) #1198
|
||||
* OpenBSD has a cdn which handles selecting the best mirror (jasperla) #1197
|
||||
* Change gnupg2 pacakge to gnupg for non-LTS versions of Ubuntu (rallytime) #1196
|
||||
* Install swig30 as freebsd dep instead of swig. (abednarik) #1191
|
||||
* make salt-syndic optional on salt bootstrap (sybix) #1190
|
||||
* Add __wait_for_apt function: avoid locking on the apt-get process (rallytime) #1186
|
||||
* Update the README.rst file with some grammatical changes (rallytime) #1185
|
||||
* Update Fedora support: 25 is EOL, 27 is supported (rallytime) #1184
|
||||
* Add a note about the use of sudo when running commands to README (rallytime) #1183
|
||||
* Adding support for minor release pinning on AWS Linux (cmclaughlin) #1182
|
||||
* Wait for zypper processes to finish before calling zypper again (rallytime) #1181
|
||||
* only install ca-certificates on opensuse if it isn't already installed (gtmanfred) #1179
|
||||
|
||||
Version 2017.12.13:
|
||||
* Use HTTPS URL for OpenSuse's saltstack repo (gdm85) #1174
|
||||
* Respect disable repos (-r) option on OpenBSD (eradman) #1171
|
||||
* Fix #1168 : -b option causes error (vutny) #1170
|
||||
* Fix fatal error with using the -b option. (arizvisa) #1169
|
||||
* Devuan support (ymasson) #1165
|
||||
* Fix yum repo on AWS Linux (cmclaughlin) #1164
|
||||
* Use suse repo to install packages, rather than defining them (rallytime) #1157
|
||||
* Remove patch-level-1 specific code for SLES installs (rallytime) #1156
|
||||
* priority sort fedora-release (toanju) #1153
|
||||
* Declare EOL for SUSE Linux Enterprise Server releases (vutny) #1150
|
||||
* Fix #1142: allow git install on Raspbian 9 (vutny) #1146
|
||||
* Follow symlinks when parsing distro release files (vutny) #1145
|
||||
* fedora: use dnf-utils for F26 and above (toanju) #1144
|
||||
* Declare EOL for openSUSE LEAP 42.1 (vutny) #1143
|
||||
* Fix #1137: import GPG key through an HTTP(S) proxy (vutny) #1139
|
||||
* Fix #1138: git install on Debian/Ubuntu various arches (vutny) #1141
|
||||
* Declare EOL for openSUSE releases earlier and including 13.X (vutny) #1136
|
||||
* Update Fedora support: 24 is EOL (rallytime) #1134
|
||||
|
||||
Version 2017.08.17:
|
||||
* Add new authors (rallytime) #1130
|
||||
* README: Fix typo and Table of Contents for Debian section (vutny) #1129
|
||||
* Reduce the # of days an issue is stale to 6 months (rallytime) #1125
|
||||
* Only install Python version if "-y" is defined (rallytime) #1124
|
||||
* Allow powershell bootstrap script to specify PY2 or 3 (rallytime) #1123
|
||||
* Remove the test that checks if the EPEL RPM was installed (amendlik) #1122
|
||||
* added latest version string of nitrogen release 2017.7 (sourceindex) #1120
|
||||
* use versions specified in base.txt when doing pip installs (aflat) #1116
|
||||
* Remove pip install requirement on Fedora git installs (rallytime) #1114
|
||||
* Introductory support for Debian 10 (Buster) (rallytime) #1113
|
||||
* Add Debian 9 support using official repo.saltstack.com packages (rallytime) #1111
|
||||
* Fix 1105 (vernondcole) #1110
|
||||
* Move SUSE specific function closer to related code (vutny) #1107
|
||||
* Update Authors file (rallytime) #1103
|
||||
* Fix ubuntu 16.04 LTS installation (BlaineAtAffirm) #1102
|
||||
* Add debian_codename_translation function, similar to Ubuntu (rallytime) #1101
|
||||
* Add the CODE_OF_CONDUCT.md file (rallytime) #1100
|
||||
* Update Debian and Ubuntu service file paths to be consistent with salt (rallytime) #1099
|
||||
* Add hash verification information to installation instructions (rallytime) #1098
|
||||
* Fix installing salt-cloud package on Arch Linux (rallytime) #1097
|
||||
* Support bootstrapping on upcoming Debian GNU/Linux 9.0 (vutny) #1096
|
||||
* Removes faulty explicit version ordering (absolutejam) #1095
|
||||
* Remove configuring EPEL repo for Amazon Linux (vutny) #1093
|
||||
* Fix -j/-J (JSON configs) options for Debian 8 (vutny) #1092
|
||||
* Fix #1035: detect and log errors earlier (vutny) #1091
|
||||
* Update AUTHORS file (rallytime) #1089
|
||||
* Autounmask as separate step (decomposite) #1088
|
||||
* Ensure presence of CONFIG_PROTECT_MASK files (decomposite) #1087
|
||||
* Update Fedora support: 23 is EOL now. (rallytime) #1084
|
||||
* Fix the -R option on Debian/Ubuntu (rallytime) #1082
|
||||
* Declare End-Of-Life for Ubuntu 12.04 LTS (vutny) #1080
|
||||
|
||||
Version 2017.05.24:
|
||||
* Use freebsd repo to query for salt dependencies (Ch3LL) #1076
|
||||
* Allow amazon to work with python2.7 on installs over 2016.11 (Ch3LL) #1073
|
||||
* ensure sles12 enables services with stable installs (Ch3LL) #1075
|
||||
* Declare End-of-Life for RHEL 5 and its variants (vutny) #1070
|
||||
* Fix configuring SaltStack's repo URL for RHEL variants (vutny) #1068
|
||||
* Add Manjaro as Arch derivative (luthes) #1063
|
||||
* Add "unmarkComment" option to probot-stale config (rallytime) #1064
|
||||
* Properly detect all supported Debian GNU/Linux derivatives (vutny) #1062
|
||||
* Archlinux must always update (gtmanfred) #1060
|
||||
* Alpine: fix adding, checking and running Salt Syndic in stable mode (vutny) #1059
|
||||
* Add KDE neon... (EHJ-52n) #1058
|
||||
* Update probot-stale message formatting. (rallytime) #1057
|
||||
* Fix `git` bootstrap mode for CentOS (vutny) #1054
|
||||
* update install_freebsd_10_stable to use FreeBSD repo (bytesatwork-xx) #1053
|
||||
* Support OpenBSD 6.1 (eradman) #1048
|
||||
* Update daysUntilStale value in probot-stale config (rallytime) #1055
|
||||
* Add ability to install and use a different python version when installing salt (Ch3LL) #1049
|
||||
* Add non-LTS type support for Ubuntu 17.04 (rallytime) #1051
|
||||
* Allow -R option to work for Debian/Ubuntu (rallytime) #1045
|
||||
* Adjust "daysUntilStale" variable to 190 days. #1047
|
||||
* Reduce the number of days an issue is considered "stale" (rallytime) #1046
|
||||
* Alpine: fix bootstrapping from Git -- install OpenRC initscripts (vutny) #1044
|
||||
* Add probot-stale config file (rallytime) #1042
|
||||
* Shallow cloning and Python setup fix for BSD (amontalban) #1040
|
||||
* Fix not needed quoting for salt/salt-bootstrap#1026 (amontalban) #1039
|
||||
* Update README file with supported release documentation (rallytime) #1034
|
||||
* Remove <<< bashism (The-Loeki) #1032
|
||||
* [-R option] Fix logic error where we trying to enable epel with -R (rallytime) #1033
|
||||
* Alpine: check Salt services have been enabled to start on boot (vutny) #1031
|
||||
* AWS Linux Native Support (bkruger99) #1022
|
||||
* Correct package name for FreeBSD installation (amontalban) #1030
|
||||
* README: describe architectures support for Salt deps on Linux distros (vutny) #1029
|
||||
* This commit addresses some of the issues in salt/salt-bootstrap#996 (amontalban) #1026
|
||||
* Add support for stable installation on Alpine Linux release 3.5 (vutny) #1028
|
||||
* Alpine Linux: fix installation of multiple pkgs ("stable" bootstrap) (vutny) #1027
|
||||
* Add Void Linux support (ndrwdn) #1025
|
||||
* RHEL6: disable stdin to fix shell session hang on killing tee pipe (vutny) #1018
|
||||
* Adding 2016.11 to stable version (ashokrajar) #1017
|
||||
* Update bootstrap-salt.sh (caelor) #1015
|
||||
* Alpine Linux support #1009 (ek9) #1010
|
||||
* Add Table of Contents in README (vutny) #1014
|
||||
|
||||
Version 2017.01.10:
|
||||
* Update AUTHORS.rst with new contributors (rallytime) #1011
|
||||
* fix bootstrap in Arch Linux by updating package name from salt-zmq to salt (ek9) #1007
|
||||
* Add python-systemd package to debian 8 git install (rallytime) #1003
|
||||
* Updated supported versions for Ubuntu: 12.04, 14.04, 16.04, and 16.10 (best effort) (rallytime) #1002
|
||||
* Add "yakkety" to ubuntu_codename_translation function (rallytime) #1001
|
||||
* Update supported versions for Fedora: 23, 24, and 25. (rallytime) #1000
|
||||
* Handle renaming of gnupg-curl to gnupg1-curl for Ubuntu 16.10 (marco-m) #998
|
||||
* fix systemctl path (dmitrievav) #997
|
||||
* Drop unnecessary workarounds (creating directories) for early releases (vutny) #995
|
||||
* Let's detect newly released Salt 2016.11 stable release (vutny) #994
|
||||
* Adjust code examples to use the actual bootstrap-salt.sh file name (rallytime) #993
|
||||
* Install TLS certs before cloning git repo via https (vutny) #991
|
||||
* Remove fix me comment and fix systemsmanagement link (rallytime) #990
|
||||
* Correct usage description about "config only" mode (vutny) #989
|
||||
* Fix overwriting Minion config from temporarily directory (vutny) #988
|
||||
* Configure Salt components after the dependencies installation (vutny) #987
|
||||
* Add CloudLinux support (rallytime) #986
|
||||
* Apply the insecure flag to git as well (cachedout) #981
|
||||
|
||||
Version 2016.10.25:
|
||||
* Update AUTHORS.rst with new contributors (rallytime) #978
|
||||
* Let's start detecting the upcoming Debian 9 (Stretch) (lhost) #975
|
||||
* FreeBSD: set _SALT_ETC_DIR directory to match ports (eradman) #970
|
||||
* Update OpenBSD 6.0+ provisioning (eradman) #969
|
||||
* adds supports for Cumulus Linux (plumbis) #967
|
||||
* Run "pip install -U futures" for SmartOS git install (rallytime) #966
|
||||
* Change /pkg/rpm/ to /pkg/deb/ in install_ubuntu_git_post func (rallytime) #965
|
||||
* SUSE: Refactor systemsmanagement_saltstack repo checks to be DRY (rallytime) #964
|
||||
* Fix detection of EPEL repository with not-expired metadata (sp1r) #963
|
||||
* Display warning message about deprecating the `-G` option (vutny) #958
|
||||
* Allow correct salt paths to be used when -c is passed (justinta) #955
|
||||
* Fix issues with replacing configs when python3 is default in os. (fizmat) #954
|
||||
* Remove m2crypto package installs (rallytime) #951
|
||||
* Try to install SP4 packages on SLE 11 when SP version is older (rallytime) #950
|
||||
* Add python-futures package to install_centos_git_deps (rallytime) #948
|
||||
* Add /etc/portage/package.accept_keywords to CONFIG_PROTECT_MASK (rallytime) #947
|
||||
* Deprecate `-G` option: use `https` scheme for GitHub by default (vutny) #945
|
||||
* [SECURITY] Properly handle GnuPG keys for APT repositories (vutny) #940
|
||||
|
||||
Version 2016.08.16:
|
||||
* Ubuntu git mode: install all deps from SaltStack corp repo by default. (vutny) #936
|
||||
|
||||
Version 2016.08.15:
|
||||
* Remove chris-lea python-zmq repo. (rallytime) #929
|
||||
* Disable the '--enablerepo=${_EPEL_REPO}' part of yum install cmds when passing -R/-r. (rallytime) #928
|
||||
* Fix grep pattern in `__check_services_sysvinit`. (vutny) #927
|
||||
* Missing python dependency for salt-cloud added. (toanju) #925
|
||||
* Fix git install mode when using commit hash with `-g` option. (vutny) #922
|
||||
* Install `salt-cloud` package with `-L` option in `stable` mode. (vutny) #919
|
||||
* Fix bootstrapping from Git on CentOS7 when `systemd` is not running. (vutny) #915
|
||||
|
||||
Version 2016.07.07:
|
||||
* Add new contributors to authors list. (rallytime) #910
|
||||
* Split up python-requests and python-msgpack packages for newer Fedora. (rallytime) #909
|
||||
* Fix typo in repository configuration for FreeBSD. (ekollof) #907
|
||||
* Make sure $STABLE_REV is set before setting up SaltStack repo. (rallytime) #906
|
||||
* Remove tests written question from template. (rallytime) #904
|
||||
* Adding support for Linux Mint 18 (based on Ubuntu 16.04). (eliezerlp) #902
|
||||
* Allow git installation for SLES 12. (rallytime) #903
|
||||
* Set repo_arch for raspberry pi installs. (mrichar1) #899
|
||||
* Change temporary directory for storing executable to C:\Windows\Temp. (themalkolm) #897
|
||||
* add apt-transport-https for ubuntu. (epcim) #896
|
||||
* Fix expanding shell script position parameters with nounset enabled. (vutny) #895
|
||||
* RFC: Add tests for bootstrap-salt.ps1. (themalkolm) #893
|
||||
* Keep original name of salt executable executable. (themalkolm) #857
|
||||
|
||||
Version 2016.06.27:
|
||||
* Fix race condition when doing one-liner bootstrap. (vutny) #889
|
||||
* Add space back in between 'install' and '--install'. (rallytime) #890
|
||||
|
||||
Version 2016.06.24:
|
||||
* Save invocation command and arguments into variables. (jfindlay) #885
|
||||
* Update the authors list with new contributors. (rallytime) #884
|
||||
* Add option to make setup.py install quiet. (nasenbaer13) #865
|
||||
* Fix lint. (jfindlay) #881
|
||||
* Add -R option to allow a custom repo URL. (rallytime) #877
|
||||
* Exclude path of script when called from another dir. (l2ol33rt) #871
|
||||
* Print invocation info. (jfindlay) #869
|
||||
* Always refresh the Arch Linux keyring if needed. (cachedout) #868
|
||||
* Ubuntu 16.04 LTS Xenial Support. (notpeter) #852
|
||||
* Install Salt packages from repo.saltstack.com on Debian 7 "Wheezy". (vutny) #864
|
||||
* Drop support for Debian 6 old-old-stable "squeeze": reached end-of-life. (vutny) #860
|
||||
* Removed ubuntu version restriction for apt-get update. (marccardinal) #859
|
||||
* Fix bootstrapping from git on Debian 8 by installing latest `tornado` via pip. (vutny) #828
|
||||
* Add the ability to override master and/or minion configs from CLI. (rallytime) #841
|
||||
* Don't sleep 11 seconds if the user allowed overwrite of config files. (poelzi) #832
|
||||
|
||||
Version 2016.05.11:
|
||||
* Only overwrite the minion config file if '-C' is passed. Otherwise, preserve it. (rallytime) #848
|
||||
|
||||
Version 2016.05.10:
|
||||
* Removed libzmq4 and forking-deamon-patch for Opensuse13. (jtand) #840
|
||||
* Ubuntu 12.04 needs to be updated before installing packages. (jtand) #829
|
||||
* Always download and install *latest* `epel-release` package on RHEL systems. (vutny) #825
|
||||
* Fix Amazon Linux EOL check. (vutny) #818
|
||||
|
||||
Version 2016.04.18:
|
||||
* Add support for openSUSE Leap. Thanks Roman Inflianskas(rominf). #693
|
||||
* Fix missing deps installation on Debian. Thanks Steve Groesz(wolfpackmars2). #699
|
||||
* Update SaltStack repo location and latest version for Windows. (brandon099) #711
|
||||
* Better EPEL repository detection on RHEL and CentOS. (vutny) #717
|
||||
* Fix git invocation fail when `man` command is not available. (vutny) #718
|
||||
* Fix `epel-release` package installation on CentOS/RHEL 5. (vutny) #719
|
||||
* Removed deprecated cli option. (abednarik) #705
|
||||
* Remove RHEL optional repo check and enable. (vutny) #720
|
||||
* Remove SaltStack COPR repository configuration for CentOS/RHEL5. (vutny) #721
|
||||
* Add opensuse_Tumbleweed support. (aboe76) #725
|
||||
* Sometimes bootstrap doesn't install zmq. (jtand) #726
|
||||
* Process -s (default sleep for service restarts) in bootstrap-salt.sh. (hipikat) #692
|
||||
* Minion keys and /etc/salt/minion should be overwritten on -C. (cro) #541
|
||||
* Fix for -C (_CONFIG_ONLY). (beaucephus) #544
|
||||
* Fix when using upstream tags. (The-Loeki) #564
|
||||
* COPR project moved. (rmohr) #738
|
||||
* Update license year range. (pra85) #743
|
||||
* Use POSIX-Compliant Command-Exists Test. (kojiromike) #741
|
||||
* Add -f option to force shallow cloning. (eyj) #660
|
||||
* add SLE 12 support, fix OpenSUSE support. (grep4linux) #748
|
||||
* Fix CentOS git setup.py syntax error upon installation. (The-Loeki) #746
|
||||
* Enable shallow cloning for version branches by default, not only tags. (vutny) #750
|
||||
* do not install copr repo on fedora 22+. (toanju) #751
|
||||
* Add support for pegged versions on YUM based OS'ses through repo.saltstack.com. (The-Loeki) #685
|
||||
* fix for FreeBSD 11 CURRENT install functions. (serge-p) #723
|
||||
* Don't add zypp repo if it already exists. (furlongm) #731
|
||||
* switch repositories for suse and sles fixes `#706`_. (aboe76) #734
|
||||
* Reformat and correct usage instructions. (vutny) #755
|
||||
* fixed missing repo for suse 12. (aboe76) #756
|
||||
* fix for Amazon Linux. (shawnbutts) #700
|
||||
* adding support for OpenBSD distribution. (serge-p) #722
|
||||
* fixing syntax errors. (beardedeagle) #760
|
||||
* Import CentOS 7 GPG key on RHEL for installing base dependencies from Salt corp repo. (vutny) #765
|
||||
* Fix multiple lint errors (shellcheck) and make some refactoring. (vutny) #768
|
||||
* Fix sleep time option to recognize a numeric argument. (vutny) #771
|
||||
* Update README. (vutny) #787
|
||||
* get tornado from pip on a fedora git install. (jfindlay) #785
|
||||
* Remove the Saltstack repo's alias. (cro) #794
|
||||
* Ability to change cache dir. (clarkperkins) #761
|
||||
* Add config_freebsd_salt func so freebsd puts cfgs in the right place. (ryanwalder) #779
|
||||
* Allow archive versions. (clarkperkins) #769
|
||||
* Lack of HTTPS for RPM packages. (jaredestroud) #783
|
||||
* Ability to change cache dir. (clarkperkins) #761
|
||||
* Bootstrap on Docker. (vutny) #793
|
||||
* add downstream pkg repo for SUSE. (jfindlay) #791
|
||||
* Fixed use of HTTP over HTTPS for anonscm.debian.org. (gdm85) #788
|
||||
* Bump Salt version to latest stable in PS bootstrap script for Windows. (vutny) #801
|
||||
* Add an -l option to switch https to http links. (rallytime) #795
|
||||
* Virtualenv support for Ubuntu. (l2ol33rt) #666
|
||||
* Lint. (jfindlay) #805
|
||||
* use portable command check. (jfindlay) #806
|
||||
* Update epel-release version number (RuriRyan) #809
|
||||
|
||||
|
||||
Version 2015.11.09
|
||||
* Make sure that wget is installed. #868
|
||||
|
||||
|
||||
Version 2015.11.04:
|
||||
* Allow bypassing dependencies installation. Thanks EYJ. #656.
|
||||
* Add FreeBSD 11 support. Thanks Chris Buechler(cbuechler). #653
|
||||
* Move RHEL installations to use repo.saltstack.com #674
|
||||
* Move Debian 8 installation to use repo.saltstack.com #674
|
||||
* Fix error finding python-jinja2 in RHEL 7. Thanks Rob Eden(hedinfaok). #654
|
||||
* Move Ubuntu 12 and 14 installations to use repo.saltstack.com #674
|
||||
* Move FreeBSD installations to use repo.saltstack.com #674
|
||||
* Use dnf on Fedora 22 and later. Thanks Michele Bologna (mbologna). #665
|
||||
|
||||
|
||||
Version 2015.08.06:
|
||||
* Fix python-requests installations for Ubuntu >= 14.04 LTS. #631, #632, #633
|
||||
* Install python-crypto from Chris Lea's PPA for Ubuntu < 14.04
|
||||
* Exit the git checkout directory before deleting it. Thanks Bret Fisher. #634
|
||||
* Use prefix /usr for centos git install. Thanks Stanislav B. #638
|
||||
* Drop Ubuntu EOL versions. All Ubuntu version before 12.04.
|
||||
* Make sure python-dev is installed wheb trying to install tornado from PyPi. #640
|
||||
|
||||
|
||||
Version 2015.07.22:
|
||||
* Fix tornado installation in Ubuntu. Thanks Yushi Nakai. #627
|
||||
* Install tornado using pip on Ubuntu for Salt's v2015.8.xx onward stable releases.
|
||||
* Install requests on Ubuntu from Chris Lea's PPA. #630
|
||||
|
||||
Version 2015.07.17:
|
||||
* Make sure setuptools is installed before using it. #598.
|
||||
* `systemd` is only fully supported from 15.04 onwards. #602
|
||||
* Fix debian mirrors issue. Thanks Wolodja Wentland(babilen). #606
|
||||
* Fix python-jinja2 repo move on RHEL6. Thanks lomeroe. #621
|
||||
* Allow skipping services. Thanks denmat. #455
|
||||
* Fix missing Debian init script. #607 saltstack/salt#25270 and saltstack/salt#25456
|
||||
* Fix SmartOS etc path. Thanks Bret Fisher. #624
|
||||
* Fix possible unbound variable in Gentoo. #625
|
||||
* Properly detect the git binary in SmartOS. #611
|
||||
|
||||
Version 2015.05.07:
|
||||
* Lower required requests version dependency. Use system requests package where possible.
|
||||
* Allow Ubuntu alternate ppas. Thanks Peter Tripp(notpeter). #563
|
||||
|
||||
Version 2015.05.04:
|
||||
* Fix the configuration path for FreeBSD. #567/#552. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
+ Fix non grouping support in POSIX sed. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
* Add Debian 8 support. Thanks Matt Black(mafrosis)
|
||||
* Improve Debian version parsing. Thanks Mark Lee(malept)
|
||||
* Make sure we update packages list one Chris Lea's PPA repository is added.
|
||||
* Hard code the Debian Squeeze backports to the DE mirror since the main repository is down.
|
||||
Thanks @panticz. #589.
|
||||
* Only install git if not already installed. #560
|
||||
* Fix openSUSE 13.2 where we need to pass --replaceflags. Thanks Roman Inflianskas(rominf).
|
||||
#504.
|
||||
* Make sure that a recent enough requests package is installed in Debian/Ubuntu.
|
||||
* Install tornado on git installs for the develop branch if necessary. #580
|
||||
* Add support for Ubuntu 15.04
|
||||
|
||||
Version 2015.03.15:
|
||||
* Add multi-master support. Thanks Fred Reimer(freimer). #555
|
||||
|
||||
Version 2015.03.04:
|
||||
* Fix the salt package selection on Arch stable installs.
|
||||
|
||||
Version 2015.02.28:
|
||||
* Fix Debian backports repository.
|
||||
|
||||
Version 2015.02.27:
|
||||
* Try other tools besides wget when downloading the COPR repo file. Thanks Ronald van
|
||||
Zantvoort(The-Loeki)
|
||||
* No need to install packages from the Unstable repository for debian, use backports. Thanks
|
||||
Ari Aosved(devaos)
|
||||
* Fix an issue in CentOS where the syndic package wasn't being installed(since it's now a
|
||||
separate package). Thanks Ronald van Zantvoort(The-Loeki)
|
||||
* Enable the server-optionals repository for RHEL >= 7
|
||||
* RHEL/CentOS 5 now uses the COPR repository. #533
|
||||
|
||||
Version 2015.01.12:
|
||||
* Add package upgrades support to FreeBSD. Thanks William Eshagh(eshagl).
|
||||
* Make sure wget is installed on debian bare systems.
|
||||
* Make sure the Arch pacman database is up to date
|
||||
* Install `python-hashlib` in CentOS 5 in order to use the COPR repository
|
||||
|
||||
Version 2014.12.11:
|
||||
* Enable binary installations on CentOS 7. Thanks ggillies
|
||||
* Updated the URL for EPEL 7
|
||||
|
||||
Version 2014.10.30:
|
||||
* Apply the forking patch to openSUSE git installations.
|
||||
|
||||
Version 2014.10.28:
|
||||
* Install the python systemd bindings for Arch and Fedora git installations
|
||||
* Allow cloning from Salt's git repository using HTTPS. #475
|
||||
|
||||
Version 2014.10.21:
|
||||
* Fix path to python on FreeBSD. Thanks Pavel Snagovsky(paha)
|
||||
* Fix syndic installation on RHEL based installations. Thanks markgaylard
|
||||
* Properly detect the git checkout `basename` directory instead of hard coding it. Thanks
|
||||
Howard Mei(HowardMei).
|
||||
* Allow installing ZMQ for SaltStack's COPR repository.
|
||||
* Allow installing ZMQ4/PyZMQ14 from Chris Lea's PPA repository.
|
||||
|
||||
Version 2014.10.14:
|
||||
* Fixed a regex issue with matching Salt's tags. Match v2014.7 but not 2014.7 as a valid tag
|
||||
* Distro Support Added:
|
||||
* Added Linux Mint 17 support(Thanks Skyler Berg)
|
||||
* Disrto Suuport Fixed:
|
||||
* Init pacman keys if not done so previously
|
||||
|
||||
Version 2014.09.25:
|
||||
* Properly detect Amazon AMI's >= 2014.9. #468
|
||||
|
||||
Version 2014.09.09:
|
||||
* Distro Support Fixes:
|
||||
* Updated the URL for EPEL 7
|
||||
* PIP based installations on Ubuntu 10.04 need setuptools installed
|
||||
* Arch stopped providing the version information on `/etc/arch-release`
|
||||
* Complete `salt-api` services checking. #450
|
||||
|
||||
Version 2014.08.30:
|
||||
* Skip service checks for `salt-api`, since this should be an opt-in service not necessarily
|
||||
meant to start at boot time.
|
||||
* Distro Support Fixes:
|
||||
* Also install the salt-api service on RHEL based distributions for git based
|
||||
installations.
|
||||
* Properly detect Arch Linux when lsb-release is available
|
||||
* Updated the URL for EPEL 7
|
||||
|
||||
Version 2014.08.23:
|
||||
* Avoid redirect breakage when installing EPEL with rpm on RHEL 5
|
||||
* Ensure python-apt is installed by the bootstrap script for Debian & Ubuntu minions. Thanks
|
||||
@garethgreenaway.
|
||||
* Don't shallow clone on git versions lower than 1.7.10
|
||||
* Only shallow clone on git tag based installations
|
||||
* Configurable Salt repository clone directory for git based installations
|
||||
* Distro Support Fixed:
|
||||
* Fixed the URL to download EPEL for Cent 5
|
||||
* Use the full path to the `chkconfig` binary when checking for services in SysV init
|
||||
systems.
|
||||
* Fixed an issue where the default sleep period(3 secs) on Ubuntu would cause a race
|
||||
condition with upstart wherein the package installation would call an upstart start and
|
||||
before it could complete, bootstrap would call another. The result was *two* copies of salt
|
||||
running which ended up causing a most stubborn bug that's documented in
|
||||
https://github.com/saltstack/salt/issues/12248
|
||||
|
||||
Version 2014.07.29:
|
||||
* Shallow clone Salt's repository for speed improvements. In case of failure, resume old
|
||||
behaviour.
|
||||
* Fixed bug introduced in 0577622 when salt-api service install and checks were added
|
||||
* Distro Support Fixed:
|
||||
* Fixed infinite loop when handling RHEL dependencies. Thanks Dan Mick(@dmick).
|
||||
|
||||
Version 2014.07.27:
|
||||
* Amazon Linux AMI 2010.xx is not explicitly not supported.
|
||||
* Install the `salt-api` scripts if available when the `salt-master` is also installed.
|
||||
* Added support for a configurable sleep time when starting, restarting and checking for
|
||||
enabled services.
|
||||
* Drop the `tsflags` requirement for RHEL and RHEL based distributions.
|
||||
* When sorting release files, oracle-release has higher priority than redhat-release.
|
||||
* Distro Support Fixed:
|
||||
* Debian >= 7 uses system's python-requests package, not PIP
|
||||
* Install 'python-zypp' in SuSE and openSUSE(required by Salt's zypper module)
|
||||
* Only install EPEL on requiring distributions if not already installed
|
||||
* CentOS 7 now uses systemd and the script now properly handles it
|
||||
* systemd in openSUSE 12.2 complains if service does not contain `.service``
|
||||
* Properly detect openSUSE using `lsb_release
|
||||
* SLES 11 SP3 ships with both python-M2Crypto-0.22.* and python-m2crypto-0.21 and we will
|
||||
be asked which we want to install, even with --non-interactive. Let's try to install the
|
||||
higher version first and then the lower one in case of failure.
|
||||
* Allow some extra time on RHEL for the optionals repo check in case the repository
|
||||
subscription is being managed externally.
|
||||
|
||||
Version 2014.06.30:
|
||||
* Distro Support Fixed:
|
||||
* Bump build/maintenance version for epel-release package. Thanks Gregory Meno(GregMeno)
|
||||
* Properly detect Amazon Linux AMI when using `lsb_release`
|
||||
* Fix `tsflags` installation.
|
||||
|
||||
Version 2014.06.28:
|
||||
* Fixed `tsflags` packages detection for RHEL and Oracle Linux 6.5
|
||||
|
||||
Version 2014.06.21:
|
||||
* Also export the HTTPS proxy environment variable. Thanks Giuseppe Iannello(gianello).
|
||||
* Distro Support Fixed:
|
||||
* Improve Oracle Linux Server detection
|
||||
* Overcome the Oracle Linux awkwardness. `--enablerepo=XYX` disables ALL OTHER REPOS!!!!
|
||||
* Oracle Linux also support testing repositories installation
|
||||
|
||||
Version 2014.06.19:
|
||||
* Allow passing the master address as an environment variable, `BS_SALT_MASTER_ADDRESS`
|
||||
* Fixed an issue with the keys pre-seed. We were passing absolute paths where we only needed
|
||||
basenames.
|
||||
* Added HTTP proxy configuration support. Thanks Giuseppe Iannello(gianello),
|
||||
* Distro Support Added:
|
||||
* Elementary OS
|
||||
* RHEL 7 Beta/RC
|
||||
* Kali Linux. Thanks Valentin Bud(valentinbud)
|
||||
* Distro Support Fixed:
|
||||
* Improved RHEL optionals repository detection
|
||||
|
||||
Version 2014.04.16:
|
||||
* Fixed a bug for RHEL 6 based distributions where yum-utils was not getting installed.
|
||||
* Added minor version check for RHEL 6 optional channel.
|
||||
* Added quotes around "apache-libcloud>=$_LIBCLOUD_MIN_VERSION" for proper version requirements
|
||||
handling.
|
||||
* Install the python 'requests' package which is now a hard dependency in Salt.
|
||||
* When installing from a user defined repository add the official one as a remote and fetch
|
||||
its tags for proper versioning.
|
||||
* Distro Support Fixed:
|
||||
* CentOS netinstall ISO's don't install `chkconfig`
|
||||
* Improved RHEL optional repository detection. This allows user repository usage, which
|
||||
don't need the optional repository support since they usually provide their packages.
|
||||
* Distro Support Added:
|
||||
* Oracle Linux
|
||||
* Scientific Linux
|
||||
|
||||
Version 2014.03.10-1:
|
||||
* Distro Support Fixed:
|
||||
* Fix the Debian services running function
|
||||
|
||||
Version 2014.03.10:
|
||||
* Debian based distributions which don't use upstart now also check if the salt services are
|
||||
enabled.
|
||||
* Distro Support Fixed:
|
||||
* RedHat based distributions now have a proper services enabled checker.
|
||||
|
||||
Version 2014.02.27:
|
||||
* Fixed a bug on the services enabled function searching logic.
|
||||
* Arch, Fedora, openSUSE and SuSE now check for services enabled, if using systemd
|
||||
* CentOS(and any RedHat based) and Ubuntu now check for services enabled is using upstart
|
||||
* Distro Support Added:
|
||||
* Debian 8. Thank You Boris Feld(Lothiraldan).
|
||||
|
||||
Version 2014.02.19:
|
||||
* Fixed a problem with the quotes of an error message
|
||||
* Arch installations now uses the community repository
|
||||
* Distro Support Fixed:
|
||||
* Fixed Fedora Git based installations(git was not being installed)
|
||||
|
||||
Version 2014.02.18:
|
||||
* Debian based distribution now get a warning stating that NOT starting daemons does not work
|
||||
as supposed, mainly because that's the Debian policy.
|
||||
* Fix bug introduced when implementing the master ip flag. The default minion includes
|
||||
directory is `minion.d`, not `minion.conf.d`
|
||||
|
||||
Version 2014.02.16:
|
||||
* The script now allows setting up the salt-master address as a separate configuration file by
|
||||
passing `-A` to the script.
|
||||
* Add support to install apache-libcloud by passing the `-L` flag. In some distribution it's
|
||||
also needed to pass `-P` because the minimal apache-libcloud version is `0.14.0`. This support
|
||||
is still missing for FreeBSD and SmartOS.
|
||||
* Fixed an issue when copying or moving files. We now test to see if the destination is a
|
||||
directory and create a full path from that so that the "do not override" logic works as
|
||||
supposed. #294.
|
||||
* Allow passing additional package names to install while installing Salt's dependencies. #262
|
||||
* Pass the salt configuration directory, default or from environment variable to the setup.py
|
||||
script for git based installations. #305
|
||||
* Distro Support Fixed:
|
||||
* FreeBSD `fetch` now has a notion of insecure certificates. Handle this properly. Thank
|
||||
You Mike Carlson(m87carlson).
|
||||
* Arch, openSUSE and SuSE are now upgradable when the `-U` flag is passed.
|
||||
* Force overwrites now works for existing init.d scripts on CentOS git installations. #259
|
||||
* Distro Support Added:
|
||||
* FreeBSD 10 is now also supported. Thank You Mike Carlson(m87carlson).
|
||||
* Red Had Enterprise Workstation is now supported.
|
||||
|
||||
Version 1.5.11:
|
||||
* Fixed an out of scope variable missed when moving functions around.
|
||||
|
||||
Version 1.5.10:
|
||||
* Salt no longer has the master branch in git, install from develop as default.
|
||||
* Installing from Git on Red Hat based distributions now also needs `yum-utils` installed.
|
||||
* Allow the script to use a different git repository to install from.
|
||||
* Fixed a bug where a branch name with dashes would be wrongly detected as an option to the
|
||||
script.
|
||||
* Default to secure file downloads(if any).
|
||||
* Distro Support Fixed:
|
||||
* Minimal Ubuntu installation might not have upstart installed, fixed.
|
||||
* FreeBSD now uses the official FreeBSD repository. Thank You Paul Brian(lifeisstillgood)!
|
||||
|
||||
Version 1.5.9:
|
||||
* Allow to not start the daemons after bootstrapping salt. This will allow `vagrant-lxc`
|
||||
installations, `debootstrap*`, etc, to finish properly. Thanks Henrik Holmboe (holmboe).
|
||||
* Distro Support Fixed:
|
||||
* Salt >= 0.17 requires ElementTree which is on the python standard library after python
|
||||
2.6 but openSUSE split that into a separate package.
|
||||
* Fixed a logic preventing proper Ubuntu bootstrapping on some situations.
|
||||
|
||||
Version 1.5.8:
|
||||
* Fixed an Ubuntu regression. `add-apt-repository` is only available on
|
||||
`software-properties-common` after 12.10, inclusive. Thanks Diego Woitasen(diegows)
|
||||
|
||||
Version 1.5.7:
|
||||
* For RedHat based distributions which rely on `epel`, the user can now pass `testing` to the
|
||||
script and `epel-testing` shall be used to bootstrap salt and it's dependencies.
|
||||
* No full system upgrades, if optional by the distribution, shall be done unless `-U` is passed
|
||||
to the bootstrap script(required upgrade procedures must exist on the script, currently Debian
|
||||
and RedHat based distributions support system upgrades).
|
||||
* Fixed an issue where passing BS_KEEP_TEMP_FILES=1 to the script was causing an error. #206.
|
||||
* Switched FreeBSD default packages repository to PCBSD(http://www.pcbsd.org) and added
|
||||
multiple repository support to install salt from the SaltStack's FreeBSD repository. Thanks
|
||||
Christer Edwards(cedwards).
|
||||
* Improved Gentoo Support. Thanks Elias Probst(eliasp).
|
||||
* Stop execution soon for end of life distributions or non supported distribution versions.
|
||||
* Distro Support Fixed:
|
||||
* Fixed an unbound variable while bootstraping Gentoo.
|
||||
* Fixed CentOS/RHEL 5.
|
||||
* Fixed crypto++ compilation. Thanks Kenneth Wilke(KennethWilke)!
|
||||
* Fixed FreeBSD git installations not pointing to the proper salt configuration directory,
|
||||
which on FreeBSD is '/usr/local/etc/salt'.
|
||||
* Fixed testing installation for Red Hat based distributions. Thanks Jeff Strunk(jstrunk)
|
||||
* Fixed wrong package name on Arch. Thanks Niels Abspoel(aboe76)
|
||||
* Make sure the Ubuntu universe repository is enabled. Thanks Karl Grzeszczak(karlgrz).
|
||||
* Fixed SmartOS installation. Thanks Matthieu Guegan(mguegan).
|
||||
|
||||
Version 1.5.6:
|
||||
* If there's a `grains` file on the provided temporary configuration directory, move it to the
|
||||
proper place while moving the minion configuration file.
|
||||
* Gentoo bootstraps can now use a bin host to provide binary packages, just set the
|
||||
`BS_GENTOO_USE_BINHOST` environment variable.
|
||||
* If `BS_KEEP_TEMP_FILES=1` is found on the environment, the script will copy the files instead
|
||||
of moving them.
|
||||
* There were still some `mv` and `cp` occurrences which were not using their `{move,copy}file`
|
||||
replacements which ended up on now respecting the "Do not override existing configuration"
|
||||
feature.
|
||||
* Distro Support Fixed:
|
||||
* Arch now upgrades it's system package properly as suggested on their mailing list.
|
||||
* Arch now moves back any configuration files provided by the user renamed by pacman on the
|
||||
installation process.
|
||||
* Fixed SmartOS detection(was being detected as Solaris) and bootstrapping. Fixed SmartOS
|
||||
different gcc package names for different package sets.
|
||||
* Fixed FreeBSD git based installations(no rc.d scripts were available).
|
||||
* Fixed FreeBSD not re-evaluating the `PKI_DIR` variable since the `SALT_ETC_DIR` was
|
||||
redefined.
|
||||
* Distro Support Added:
|
||||
* Linux Mint. Thanks Alex Van't Hof(alexvh)!
|
||||
* Linaro.
|
||||
|
||||
|
||||
Version 1.5.5:
|
||||
* Fixed a variable error in the new pre-seed feature.
|
||||
* Fixed the destination path to where the pre-seed minions keys should be copied.
|
||||
* Debian installations now use SaltStack's repository.
|
||||
* Configuration files can now be passed as an URL to a compressed file. Thanks Geoff Garside!
|
||||
* Distro Support Fixed:
|
||||
* Debian's optional ZMQ3 support was fixed (libzmq3 has moved from experimental to
|
||||
unstable).
|
||||
* Ubuntu Lucid Daily PPA
|
||||
* SmartOS no longer ignores $SALT_ETC_DIR. Matthieu Guegan!
|
||||
* FreeBSD no longer ignores $SALT_ETC_DIR. Thanks Geoff Garside!
|
||||
* FreeBSD does not try to install pkgng if pkg is installed. Thanks Geoff Garside!
|
||||
* SunOS (Make use of XPG4 binaries on SunOS). Thanks Matthieu Guegan!
|
||||
* openSUSE (Don't fail if only one of the repositories failed to update)
|
||||
* Arch (Fixed the GPG issues for git installations)
|
||||
* Distro Support Added:
|
||||
* Gentoo. Thanks kaithar!
|
||||
|
||||
|
||||
Version 1.5.4:
|
||||
* Fixed an issue we had when /proc/cpuinfo had more than one CPU. Detected on AMD CPUs.
|
||||
* OpenSUSE 12.3 uses lsb_release. Fix the returned distro name "openSUSE project" to "openSUSE"
|
||||
which the script handles.
|
||||
* Added an custom move function which will only override if required and if we permit it.
|
||||
* Implemented the necessary function to pre-seed minion keys on a salt master as an optional
|
||||
argument.
|
||||
* Distro Support Fixed:
|
||||
* FreeBSD (Don't let the script fail if PACKAGESITE is not set)
|
||||
* Debian Stable installations (the function search was not working as supposed)
|
||||
* Distro Support Added:
|
||||
* Ubuntu 13.04 (Was disabled because of a bad beta1. Fixed in beta2)
|
||||
|
||||
|
||||
Version 1.5.3:
|
||||
* Return 0 or 1 from functions
|
||||
* Convert several pipes into a single awk call
|
||||
* Fixed `/etc/os-release` parsing
|
||||
* Fixed `config_salt()`
|
||||
* Distro Support Fixed:
|
||||
* EPEL-based installations (CentOS, Amazon Linux, RedHat)
|
||||
* SuSE/OpenSUSE (problem running the script twice, ie, existing `devel_languages_python`
|
||||
repository)
|
||||
* SuSE 11 SP1 (pip based install and config trigger)
|
||||
* Distro Support Added:
|
||||
* Debian 7 (Only git installations at the moment)
|
||||
|
||||
|
||||
Version 1.5.2:
|
||||
* Fix issue with Travis testing (it installs it's own ZeroMQ3 lib
|
||||
* Allow setting the debug output from an environment variable
|
||||
* Fix an escape issue in the `printf` calls used in our echo calls
|
||||
* Don't overwrite files (`config`, `init.d`, etc). Use a specific flag to force overwrites.
|
||||
* Distro Support Fixed:
|
||||
* Ubuntu daily installs.
|
||||
* Distro Support Added:
|
||||
* Trisquel 6.0 (Ubuntu 12.04)
|
||||
|
||||
|
||||
Version 1.5.1:
|
||||
* Improved unittesting.
|
||||
* Starting daemons.
|
||||
* Make sure that daemons are really running.
|
||||
* For the users to make the choice if installing from PIP (if required since there aren't system
|
||||
pacakges).
|
||||
* Fixed salt's git cloning when the salt git tree is already present on the system.
|
||||
* Distro Support Fixed:
|
||||
* Debian 6
|
||||
* Ubuntu 12.10
|
||||
* CentOS
|
||||
* Distro Support Added:
|
||||
* SuSE 11 SP1/11 SP2
|
||||
* OpenSUSE 12.x
|
||||
|
||||
|
||||
Version 1.5:
|
||||
* First stable version of the script
|
||||
* Support for:
|
||||
* Ubuntu 10.x/11.x/12.x
|
||||
* Debian 6.x
|
||||
* CentOS 5/6
|
||||
* Red Hat 5/6
|
||||
* Red Hat Enterprise 5/6
|
||||
* Fedora
|
||||
* Arch
|
||||
* SmartOS
|
||||
* FreeBSD 9.0
|
||||
|
||||
|
||||
# Don't remove the line below.
|
||||
# vim: fenc=utf-8 spell spl=en cc=100 tw=99 fo=want ts=4
|
1
ChangeLog
Symbolic link
1
ChangeLog
Symbolic link
|
@ -0,0 +1 @@
|
|||
CHANGELOG.md
|
873
ChangeLog~HEAD
Normal file
873
ChangeLog~HEAD
Normal file
|
@ -0,0 +1,873 @@
|
|||
Version TBD (In Progress on the Develop Branch):
|
||||
|
||||
Version 2022.03.15:
|
||||
* Add detection and functions for AlmaLinux and Rocky Linux (myii) #1803
|
||||
* Copy configs to correct config dirs (v3004+) (dafyddj) #1798
|
||||
* Support Non-LTS Ubuntu 21.04 & 21.10 (blindpirate) #1793
|
||||
* Use native repositories for Debian 11 (jpacura) #1615
|
||||
* Keep all command-line parameters when UAC is enabled (Simon-TheUser) #1613
|
||||
* Add support for Raspbian (Jille) #1612
|
||||
* Add openrc to alpine:latest dependencies (krionbsd) #1609
|
||||
* Add CentOS 7 base key (bryceml) #1608
|
||||
* Fix git master install on alpine 3.12+ (Nascire) #1604
|
||||
* Sort help alphabetically (krionbsd) #1601
|
||||
|
||||
Version 2021.09.17:
|
||||
* Re-add Ubuntu-16 support as it's still supported with 3001 and 3002 (krionbsd) #1594
|
||||
* Add oncoming 3004 release (krionbsd) #1593
|
||||
|
||||
Version 2021.09.14:
|
||||
* Update latest Salt version in README (krionbsd) #1588
|
||||
* Make Python 3 the default (bryceml) #1577
|
||||
* Don't output info if using the default -x value (bryceml) #1587
|
||||
|
||||
Version 2021.08.19:
|
||||
* Update README with instructions to use salt-bootstrap custom version (ari) #1580
|
||||
* Remove unsupported versions (bryceml) #1578
|
||||
* Update FreeBSD default Python version to 3.8 (myii) #1574
|
||||
|
||||
Version 2021.06.23:
|
||||
* Use salt.list instead of saltstack.list (bryceml) #1563
|
||||
* Use fetch_url function for curl (xeacott) #1562
|
||||
* Add Ubuntu 21.04 support (krionbsd) #1559
|
||||
* Remove python2-futures package for ArchLinux (myii) #1546
|
||||
|
||||
Version 2020.03.02:
|
||||
* Debian 11 (bullseye/testing) support using Debian 10 packages (jpacura, bryceml) #1514
|
||||
* Fix bootstrap on Gentoo (ijansky) #1516 #1518
|
||||
* Fix project URLs (bryceml) #1526
|
||||
* FreeBSD also needs the _PKI_DIR reset (krionbsd) #1523
|
||||
* Fix openSUSE Tumbleweed support. (myii) #1525
|
||||
* Fix Debian and Ubuntu version support. (jpacura) #1529
|
||||
* Powershell: Implement configure only option (for Vagrant). (dafyddj) #1530
|
||||
* Powershell: Handle Vagrant's `grains_config` option. (dafyddj) #1520
|
||||
* apt-key is deprecated on Debian 10+ and Ubuntu 20+ (bryceml) #1533
|
||||
* Fix python Tornado on FreeBSD. (krionbsd) #1522
|
||||
|
||||
Version 2020.10.20:
|
||||
* Add support to allow bootstrapping Salt 3002 (s0undt3ch) #1506
|
||||
|
||||
Version 2020.10.19:
|
||||
* Fix v3000+ with git install on FreeBSD (krionbsd) #1487
|
||||
* Update README giving ONE example of WINDOWS bootstrapping. Default to python3 instead of
|
||||
python2. (noelmcloughlin) #1496
|
||||
* Support git and stable salt-bootstrap on Gentoo. (ijansky) #1500
|
||||
* Add support for Linux Mint 20. (taigrr) #1502
|
||||
* Adding missing functions for Red Hat 8. (mbochenk) #1489
|
||||
* Allow pinning minor 3xxx versions. (max-arnold) #1491
|
||||
|
||||
Version 2020.06.23:
|
||||
* Fix for Cumulus Linux 4.1 (darylturner) #1474
|
||||
* Fix file download exit code, improve error message on failed download (bryceml) #1478
|
||||
* Add support for Ubuntu 20.04 (bryceml) #1479
|
||||
* Default Ubuntu 20.04 to Py3 since there isn't a Py2 release for it (bryceml) #1480
|
||||
* Warn instead of exit when using -R and -x python3 on centos to allow installing python3
|
||||
versions of salt on centos from other repos. Old unsupported releases probably need to
|
||||
manually install epel-release before running the bootstrap script for versions before 2018.3.5
|
||||
and before 2019.2.1 (bryceml) #1482
|
||||
* Start maintaining .sha256 files for the bootstrap script
|
||||
|
||||
Version 2020.05.28:
|
||||
* Fix Opensuse Tumbleweed (noelmcloughlin) #1441
|
||||
* Remove Debian 8 from Python 3 supported list (jay1648) #1448
|
||||
* Fixed deps parsing for FreeBSD git installs (cedwards) #1462
|
||||
* Added support for the upcoming Sodium release (s0undt3ch) #1466
|
||||
* Fixed KDE Neon detection (ender8282) #1466
|
||||
* Updated README python 2 and 3 installations (gdebunne) #1466
|
||||
* Updated README and CONTRIBUTING to prefer Salt's master branch (DmitryKuzmenko) #1466
|
||||
* Fixed IUS repo addresses (oeuftete) #1469
|
||||
* Updated tests to assert target Python and Salt versions (s0undt3ch) #1470
|
||||
* Fixed Amazon 2 -x support (s0undt3ch) #1470
|
||||
* Fix Fedora stable installs for older releases (s0undt3ch) #1470
|
||||
* Fix CentOS 8 installations (s0undt3ch) #1470
|
||||
* Default Debian 10 to Py3 (s0undt3ch) #1470
|
||||
* Fix Arch Linux installs (s0undt3ch) #1470
|
||||
|
||||
Version 2020.02.24:
|
||||
* Fix SLES 15 install (max298) #1431
|
||||
* Fix 3000(Neon) stable install (sblaisot) #1433
|
||||
* Fix Amazon Linux Py3 install (s0undt3ch) #1434
|
||||
|
||||
Version 2020.02.04:
|
||||
* Add support for the Salt Neon(3000) release (s0undt3ch) #1424
|
||||
* Drop support for Fedora < 30 (s0undt3ch) #1424
|
||||
* Drop support for Debian < 8 (s0undt3ch) #1424
|
||||
|
||||
Version 2020.01.29:
|
||||
* FreeBSD fixes (cedwards) #1413
|
||||
* Support the upcoming Neon release (s0undt3ch) #1420
|
||||
|
||||
Version 2020.01.21:
|
||||
* FreeBSD fixes (kgbsd) #1376
|
||||
* Fix macOS support (s0undt3ch) #1397
|
||||
|
||||
Version 2019.11.04:
|
||||
* Fix busybox mktemp compatibility (stanzgy) #1369
|
||||
* Install debian 10 packages on debian 10 instead of 9 (kiemlicz) #1375
|
||||
* move centos to python36, use python specified by -x (Ch3LL,bryceml) #1380
|
||||
* Add debian 10 git install support (Ch3LL) #1378
|
||||
|
||||
Version 2019.10.03:
|
||||
* Fix possible typo with `gnupg-curl` vs `gnupg curl` (zahiar)
|
||||
* Install only python3 packges if requested on ubuntu (noelmcloughlin) #1356
|
||||
* Fixing debian wheezy (bryceml) #1359
|
||||
* Fixed Amazon Linux 2 detection when lsb_release is installed (jars99) #1361
|
||||
* Mac OS Support (felippeb) #1363 #1364 #1365 #1366
|
||||
|
||||
Version 2019.05.20:
|
||||
* Allow stable version selection for amazon linux (puluanau) #1328
|
||||
* FreeBSD 12 support (sticky-note) #1329
|
||||
* Apt wait for lock modification (ripesensor) #1335
|
||||
* Opensuse 15 Git installation fixes (s0undt3ch) #1340 #1341
|
||||
* Amazon Linux Image fixes (nshenry03) #1343
|
||||
* apt_key_fetch fixes (greut) #1344
|
||||
* CentOS Git and PIP installation m2crypto fixes (s0undt3ch) #1347
|
||||
* CI process enhancements/fixes (s0undt3ch) #1347
|
||||
|
||||
Version 2019.02.27:
|
||||
* Add support for bunsenlabs devian derivative (kevinquinnyo) #1300
|
||||
* Add support for TurnKey devian derivative (dafyddj) #1313
|
||||
* Fix BSD develop install (hackacad) #1316
|
||||
* Ensure python-concurrent.futures is installed for Ubuntu (garethgreenaway) #1321
|
||||
|
||||
Version 2019.01.08:
|
||||
* use official amazon linux 2 repo for amazon linux 2 (mchugh19) #1287
|
||||
* Add release info to applicable docs (rallytime) #1292
|
||||
* Modify wait_for_apt function (ripesensor) #1291
|
||||
* Add support for LinuxMint 19 (darkocerdic) #1289
|
||||
* FIX #1237 SmartOS should use pkgin show-deps (sjorge) #1283
|
||||
* Fedora: Reduce DNF calls to 2 during install_dep phase (The-Loeki) #1278
|
||||
|
||||
Version 2018.08.15:
|
||||
* Add tests using kitchen-salt (gtmanfred) #1279
|
||||
* Add python-futures to Py2 installs (gtmanfred) #1279
|
||||
|
||||
Version 2018.08.13:
|
||||
* Fedora Py3 fixes (The-Loeki) #1273
|
||||
* Handle commented lines in the requirements files for pip pkgs (rallytime) #1271
|
||||
* Remove typo: extra 'c' was accidentally added in #1269 (rallytime) #1270
|
||||
* [Arch] Add python2-futures to list of pkgs on git install (rallytime) #1269
|
||||
* Fix undefined variable warn_msg on amd64 (alexandruavadanii) #1268
|
||||
* SLES12SP changed packages git to git-core and libzmq3 to libzmq4 (mfapouw) #1266
|
||||
* Add opensuse 15 specific installation functions (rallytime) #1263
|
||||
* Remove support for openSUSE Leap 42.2 (rallytime) #1262
|
||||
* Remove support for Fedora 26 (rallytime) #1261
|
||||
* Remove support for Ubuntu 17.10 (rallytime) #1260
|
||||
* Ensure pipe is absent before mkfifo/mknod (noelmcloughlin) #1256
|
||||
* fix for opensuse15 if no lsb_release pkg (noelmcloughlin) #1255
|
||||
* Fix Up ShellCheck errors/warnings for latest version of shellcheck (rallytime) #1253
|
||||
* Remove daily install option on Ubuntu system (icy) #1250
|
||||
* Add python 3 support for Ubuntu 18 (rallytime) #1248
|
||||
* Return immediately if apt-get fails (icy) #1247
|
||||
* Disable shell error about unbound variable during daily install (icy) #1246
|
||||
* OpenSuse_Leap_15.0 saltstack repo support (noelmcloughlin) #1244
|
||||
* Add Python3 package support for Debian 9 (rallytime) #1243
|
||||
* Add Python3 package support for CentOS 7 (rallytime) #1242
|
||||
* Shellcheck fixes found when running latest version (rallytime) #1239
|
||||
* Add Python3 package support for Ubuntu 16.04 (rallytime) #1238
|
||||
* Fix the variable ref from #803 (rallytime) #1229
|
||||
* Add Ubuntu 18.04 support (rallytime) #1228
|
||||
* Call __git_clone_and_checkout directly (jheidbrink) #1226
|
||||
* Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
|
||||
Version 2018.04.25:
|
||||
* Install py-tornado4 for FreeBSD. (abednarik) #1219
|
||||
* Remove COPR repos configuration for Fedora (vutny ) #1211
|
||||
* Fix for silently ignored version argument on CentOS/RHEL (pjcreath) #1210
|
||||
* Use integer parameter for sleep command (bdrung) #1205
|
||||
* Add 2018.3 branch to list of stable options (rallytime) #1204
|
||||
* If installing with -P, install tornado<5.0. (rallytime) #1203
|
||||
* Add M2Crypto to python27 centos 6 bootstrap install (Ch3LL) #1201
|
||||
* Update README to include mention of bootstrap-salt.ps1 for Windows (rallytime) #1200
|
||||
* Port spelling fixes from change in Salt to Bootstrap (rallytime) #1199
|
||||
* Add M2Crypto package back to git install functions (rallytime) #1198
|
||||
* OpenBSD has a cdn which handles selecting the best mirror (jasperla) #1197
|
||||
* Change gnupg2 pacakge to gnupg for non-LTS versions of Ubuntu (rallytime) #1196
|
||||
* Install swig30 as freebsd dep instead of swig. (abednarik) #1191
|
||||
* make salt-syndic optional on salt bootstrap (sybix) #1190
|
||||
* Add __wait_for_apt function: avoid locking on the apt-get process (rallytime) #1186
|
||||
* Update the README.rst file with some grammatical changes (rallytime) #1185
|
||||
* Update Fedora support: 25 is EOL, 27 is supported (rallytime) #1184
|
||||
* Add a note about the use of sudo when running commands to README (rallytime) #1183
|
||||
* Adding support for minor release pinning on AWS Linux (cmclaughlin) #1182
|
||||
* Wait for zypper processes to finish before calling zypper again (rallytime) #1181
|
||||
* only install ca-certificates on opensuse if it isn't already installed (gtmanfred) #1179
|
||||
|
||||
Version 2017.12.13:
|
||||
* Use HTTPS URL for OpenSuse's saltstack repo (gdm85) #1174
|
||||
* Respect disable repos (-r) option on OpenBSD (eradman) #1171
|
||||
* Fix #1168 : -b option causes error (vutny) #1170
|
||||
* Fix fatal error with using the -b option. (arizvisa) #1169
|
||||
* Devuan support (ymasson) #1165
|
||||
* Fix yum repo on AWS Linux (cmclaughlin) #1164
|
||||
* Use suse repo to install packages, rather than defining them (rallytime) #1157
|
||||
* Remove patch-level-1 specific code for SLES installs (rallytime) #1156
|
||||
* priority sort fedora-release (toanju) #1153
|
||||
* Declare EOL for SUSE Linux Enterprise Server releases (vutny) #1150
|
||||
* Fix #1142: allow git install on Raspbian 9 (vutny) #1146
|
||||
* Follow symlinks when parsing distro release files (vutny) #1145
|
||||
* fedora: use dnf-utils for F26 and above (toanju) #1144
|
||||
* Declare EOL for openSUSE LEAP 42.1 (vutny) #1143
|
||||
* Fix #1137: import GPG key through an HTTP(S) proxy (vutny) #1139
|
||||
* Fix #1138: git install on Debian/Ubuntu various arches (vutny) #1141
|
||||
* Declare EOL for openSUSE releases earlier and including 13.X (vutny) #1136
|
||||
* Update Fedora support: 24 is EOL (rallytime) #1134
|
||||
|
||||
Version 2017.08.17:
|
||||
* Add new authors (rallytime) #1130
|
||||
* README: Fix typo and Table of Contents for Debian section (vutny) #1129
|
||||
* Reduce the # of days an issue is stale to 6 months (rallytime) #1125
|
||||
* Only install Python version if "-y" is defined (rallytime) #1124
|
||||
* Allow powershell bootstrap script to specify PY2 or 3 (rallytime) #1123
|
||||
* Remove the test that checks if the EPEL RPM was installed (amendlik) #1122
|
||||
* added latest version string of nitrogen release 2017.7 (sourceindex) #1120
|
||||
* use versions specified in base.txt when doing pip installs (aflat) #1116
|
||||
* Remove pip install requirement on Fedora git installs (rallytime) #1114
|
||||
* Introductory support for Debian 10 (Buster) (rallytime) #1113
|
||||
* Add Debian 9 support using official repo.saltstack.com packages (rallytime) #1111
|
||||
* Fix 1105 (vernondcole) #1110
|
||||
* Move SUSE specific function closer to related code (vutny) #1107
|
||||
* Update Authors file (rallytime) #1103
|
||||
* Fix ubuntu 16.04 LTS installation (BlaineAtAffirm) #1102
|
||||
* Add debian_codename_translation function, similar to Ubuntu (rallytime) #1101
|
||||
* Add the CODE_OF_CONDUCT.md file (rallytime) #1100
|
||||
* Update Debian and Ubuntu service file paths to be consistent with salt (rallytime) #1099
|
||||
* Add hash verification information to installation instructions (rallytime) #1098
|
||||
* Fix installing salt-cloud package on Arch Linux (rallytime) #1097
|
||||
* Support bootstrapping on upcoming Debian GNU/Linux 9.0 (vutny) #1096
|
||||
* Removes faulty explicit version ordering (absolutejam) #1095
|
||||
* Remove configuring EPEL repo for Amazon Linux (vutny) #1093
|
||||
* Fix -j/-J (JSON configs) options for Debian 8 (vutny) #1092
|
||||
* Fix #1035: detect and log errors earlier (vutny) #1091
|
||||
* Update AUTHORS file (rallytime) #1089
|
||||
* Autounmask as separate step (decomposite) #1088
|
||||
* Ensure presence of CONFIG_PROTECT_MASK files (decomposite) #1087
|
||||
* Update Fedora support: 23 is EOL now. (rallytime) #1084
|
||||
* Fix the -R option on Debian/Ubuntu (rallytime) #1082
|
||||
* Declare End-Of-Life for Ubuntu 12.04 LTS (vutny) #1080
|
||||
|
||||
Version 2017.05.24:
|
||||
* Use freebsd repo to query for salt dependencies (Ch3LL) #1076
|
||||
* Allow amazon to work with python2.7 on installs over 2016.11 (Ch3LL) #1073
|
||||
* ensure sles12 enables services with stable installs (Ch3LL) #1075
|
||||
* Declare End-of-Life for RHEL 5 and its variants (vutny) #1070
|
||||
* Fix configuring SaltStack's repo URL for RHEL variants (vutny) #1068
|
||||
* Add Manjaro as Arch derivative (luthes) #1063
|
||||
* Add "unmarkComment" option to probot-stale config (rallytime) #1064
|
||||
* Properly detect all supported Debian GNU/Linux derivatives (vutny) #1062
|
||||
* Archlinux must always update (gtmanfred) #1060
|
||||
* Alpine: fix adding, checking and running Salt Syndic in stable mode (vutny) #1059
|
||||
* Add KDE neon... (EHJ-52n) #1058
|
||||
* Update probot-stale message formatting. (rallytime) #1057
|
||||
* Fix `git` bootstrap mode for CentOS (vutny) #1054
|
||||
* update install_freebsd_10_stable to use FreeBSD repo (bytesatwork-xx) #1053
|
||||
* Support OpenBSD 6.1 (eradman) #1048
|
||||
* Update daysUntilStale value in probot-stale config (rallytime) #1055
|
||||
* Add ability to install and use a different python version when installing salt (Ch3LL) #1049
|
||||
* Add non-LTS type support for Ubuntu 17.04 (rallytime) #1051
|
||||
* Allow -R option to work for Debian/Ubuntu (rallytime) #1045
|
||||
* Adjust "daysUntilStale" variable to 190 days. #1047
|
||||
* Reduce the number of days an issue is considered "stale" (rallytime) #1046
|
||||
* Alpine: fix bootstrapping from Git -- install OpenRC initscripts (vutny) #1044
|
||||
* Add probot-stale config file (rallytime) #1042
|
||||
* Shallow cloning and Python setup fix for BSD (amontalban) #1040
|
||||
* Fix not needed quoting for salt/salt-bootstrap#1026 (amontalban) #1039
|
||||
* Update README file with supported release documentation (rallytime) #1034
|
||||
* Remove <<< bashism (The-Loeki) #1032
|
||||
* [-R option] Fix logic error where we trying to enable epel with -R (rallytime) #1033
|
||||
* Alpine: check Salt services have been enabled to start on boot (vutny) #1031
|
||||
* AWS Linux Native Support (bkruger99) #1022
|
||||
* Correct package name for FreeBSD installation (amontalban) #1030
|
||||
* README: describe architectures support for Salt deps on Linux distros (vutny) #1029
|
||||
* This commit addresses some of the issues in salt/salt-bootstrap#996 (amontalban) #1026
|
||||
* Add support for stable installation on Alpine Linux release 3.5 (vutny) #1028
|
||||
* Alpine Linux: fix installation of multiple pkgs ("stable" bootstrap) (vutny) #1027
|
||||
* Add Void Linux support (ndrwdn) #1025
|
||||
* RHEL6: disable stdin to fix shell session hang on killing tee pipe (vutny) #1018
|
||||
* Adding 2016.11 to stable version (ashokrajar) #1017
|
||||
* Update bootstrap-salt.sh (caelor) #1015
|
||||
* Alpine Linux support #1009 (ek9) #1010
|
||||
* Add Table of Contents in README (vutny) #1014
|
||||
|
||||
Version 2017.01.10:
|
||||
* Update AUTHORS.rst with new contributors (rallytime) #1011
|
||||
* fix bootstrap in Arch Linux by updating package name from salt-zmq to salt (ek9) #1007
|
||||
* Add python-systemd package to debian 8 git install (rallytime) #1003
|
||||
* Updated supported versions for Ubuntu: 12.04, 14.04, 16.04, and 16.10 (best effort) (rallytime) #1002
|
||||
* Add "yakkety" to ubuntu_codename_translation function (rallytime) #1001
|
||||
* Update supported versions for Fedora: 23, 24, and 25. (rallytime) #1000
|
||||
* Handle renaming of gnupg-curl to gnupg1-curl for Ubuntu 16.10 (marco-m) #998
|
||||
* fix systemctl path (dmitrievav) #997
|
||||
* Drop unnecessary workarounds (creating directories) for early releases (vutny) #995
|
||||
* Let's detect newly released Salt 2016.11 stable release (vutny) #994
|
||||
* Adjust code examples to use the actual bootstrap-salt.sh file name (rallytime) #993
|
||||
* Install TLS certs before cloning git repo via https (vutny) #991
|
||||
* Remove fix me comment and fix systemsmanagement link (rallytime) #990
|
||||
* Correct usage description about "config only" mode (vutny) #989
|
||||
* Fix overwriting Minion config from temporarily directory (vutny) #988
|
||||
* Configure Salt components after the dependencies installation (vutny) #987
|
||||
* Add CloudLinux support (rallytime) #986
|
||||
* Apply the insecure flag to git as well (cachedout) #981
|
||||
|
||||
Version 2016.10.25:
|
||||
* Update AUTHORS.rst with new contributors (rallytime) #978
|
||||
* Let's start detecting the upcoming Debian 9 (Stretch) (lhost) #975
|
||||
* FreeBSD: set _SALT_ETC_DIR directory to match ports (eradman) #970
|
||||
* Update OpenBSD 6.0+ provisioning (eradman) #969
|
||||
* adds supports for Cumulus Linux (plumbis) #967
|
||||
* Run "pip install -U futures" for SmartOS git install (rallytime) #966
|
||||
* Change /pkg/rpm/ to /pkg/deb/ in install_ubuntu_git_post func (rallytime) #965
|
||||
* SUSE: Refactor systemsmanagement_saltstack repo checks to be DRY (rallytime) #964
|
||||
* Fix detection of EPEL repository with not-expired metadata (sp1r) #963
|
||||
* Display warning message about deprecating the `-G` option (vutny) #958
|
||||
* Allow correct salt paths to be used when -c is passed (justinta) #955
|
||||
* Fix issues with replacing configs when python3 is default in os. (fizmat) #954
|
||||
* Remove m2crypto package installs (rallytime) #951
|
||||
* Try to install SP4 packages on SLE 11 when SP version is older (rallytime) #950
|
||||
* Add python-futures package to install_centos_git_deps (rallytime) #948
|
||||
* Add /etc/portage/package.accept_keywords to CONFIG_PROTECT_MASK (rallytime) #947
|
||||
* Deprecate `-G` option: use `https` scheme for GitHub by default (vutny) #945
|
||||
* [SECURITY] Properly handle GnuPG keys for APT repositories (vutny) #940
|
||||
|
||||
Version 2016.08.16:
|
||||
* Ubuntu git mode: install all deps from SaltStack corp repo by default. (vutny) #936
|
||||
|
||||
Version 2016.08.15:
|
||||
* Remove chris-lea python-zmq repo. (rallytime) #929
|
||||
* Disable the '--enablerepo=${_EPEL_REPO}' part of yum install cmds when passing -R/-r. (rallytime) #928
|
||||
* Fix grep pattern in `__check_services_sysvinit`. (vutny) #927
|
||||
* Missing python dependency for salt-cloud added. (toanju) #925
|
||||
* Fix git install mode when using commit hash with `-g` option. (vutny) #922
|
||||
* Install `salt-cloud` package with `-L` option in `stable` mode. (vutny) #919
|
||||
* Fix bootstrapping from Git on CentOS7 when `systemd` is not running. (vutny) #915
|
||||
|
||||
Version 2016.07.07:
|
||||
* Add new contributors to authors list. (rallytime) #910
|
||||
* Split up python-requests and python-msgpack packages for newer Fedora. (rallytime) #909
|
||||
* Fix typo in repository configuration for FreeBSD. (ekollof) #907
|
||||
* Make sure $STABLE_REV is set before setting up SaltStack repo. (rallytime) #906
|
||||
* Remove tests written question from template. (rallytime) #904
|
||||
* Adding support for Linux Mint 18 (based on Ubuntu 16.04). (eliezerlp) #902
|
||||
* Allow git installation for SLES 12. (rallytime) #903
|
||||
* Set repo_arch for raspberry pi installs. (mrichar1) #899
|
||||
* Change temporary directory for storing executable to C:\Windows\Temp. (themalkolm) #897
|
||||
* add apt-transport-https for ubuntu. (epcim) #896
|
||||
* Fix expanding shell script position parameters with nounset enabled. (vutny) #895
|
||||
* RFC: Add tests for bootstrap-salt.ps1. (themalkolm) #893
|
||||
* Keep original name of salt executable executable. (themalkolm) #857
|
||||
|
||||
Version 2016.06.27:
|
||||
* Fix race condition when doing one-liner bootstrap. (vutny) #889
|
||||
* Add space back in between 'install' and '--install'. (rallytime) #890
|
||||
|
||||
Version 2016.06.24:
|
||||
* Save invocation command and arguments into variables. (jfindlay) #885
|
||||
* Update the authors list with new contributors. (rallytime) #884
|
||||
* Add option to make setup.py install quiet. (nasenbaer13) #865
|
||||
* Fix lint. (jfindlay) #881
|
||||
* Add -R option to allow a custom repo URL. (rallytime) #877
|
||||
* Exclude path of script when called from another dir. (l2ol33rt) #871
|
||||
* Print invocation info. (jfindlay) #869
|
||||
* Always refresh the Arch Linux keyring if needed. (cachedout) #868
|
||||
* Ubuntu 16.04 LTS Xenial Support. (notpeter) #852
|
||||
* Install Salt packages from repo.saltstack.com on Debian 7 "Wheezy". (vutny) #864
|
||||
* Drop support for Debian 6 old-old-stable "squeeze": reached end-of-life. (vutny) #860
|
||||
* Removed ubuntu version restriction for apt-get update. (marccardinal) #859
|
||||
* Fix bootstrapping from git on Debian 8 by installing latest `tornado` via pip. (vutny) #828
|
||||
* Add the ability to override master and/or minion configs from CLI. (rallytime) #841
|
||||
* Don't sleep 11 seconds if the user allowed overwrite of config files. (poelzi) #832
|
||||
|
||||
Version 2016.05.11:
|
||||
* Only overwrite the minion config file if '-C' is passed. Otherwise, preserve it. (rallytime) #848
|
||||
|
||||
Version 2016.05.10:
|
||||
* Removed libzmq4 and forking-deamon-patch for Opensuse13. (jtand) #840
|
||||
* Ubuntu 12.04 needs to be updated before installing packages. (jtand) #829
|
||||
* Always download and install *latest* `epel-release` package on RHEL systems. (vutny) #825
|
||||
* Fix Amazon Linux EOL check. (vutny) #818
|
||||
|
||||
Version 2016.04.18:
|
||||
* Add support for openSUSE Leap. Thanks Roman Inflianskas(rominf). #693
|
||||
* Fix missing deps installation on Debian. Thanks Steve Groesz(wolfpackmars2). #699
|
||||
* Update SaltStack repo location and latest version for Windows. (brandon099) #711
|
||||
* Better EPEL repository detection on RHEL and CentOS. (vutny) #717
|
||||
* Fix git invocation fail when `man` command is not available. (vutny) #718
|
||||
* Fix `epel-release` package installation on CentOS/RHEL 5. (vutny) #719
|
||||
* Removed deprecated cli option. (abednarik) #705
|
||||
* Remove RHEL optional repo check and enable. (vutny) #720
|
||||
* Remove SaltStack COPR repository configuration for CentOS/RHEL5. (vutny) #721
|
||||
* Add opensuse_Tumbleweed support. (aboe76) #725
|
||||
* Sometimes bootstrap doesn't install zmq. (jtand) #726
|
||||
* Process -s (default sleep for service restarts) in bootstrap-salt.sh. (hipikat) #692
|
||||
* Minion keys and /etc/salt/minion should be overwritten on -C. (cro) #541
|
||||
* Fix for -C (_CONFIG_ONLY). (beaucephus) #544
|
||||
* Fix when using upstream tags. (The-Loeki) #564
|
||||
* COPR project moved. (rmohr) #738
|
||||
* Update license year range. (pra85) #743
|
||||
* Use POSIX-Compliant Command-Exists Test. (kojiromike) #741
|
||||
* Add -f option to force shallow cloning. (eyj) #660
|
||||
* add SLE 12 support, fix OpenSUSE support. (grep4linux) #748
|
||||
* Fix CentOS git setup.py syntax error upon installation. (The-Loeki) #746
|
||||
* Enable shallow cloning for version branches by default, not only tags. (vutny) #750
|
||||
* do not install copr repo on fedora 22+. (toanju) #751
|
||||
* Add support for pegged versions on YUM based OS'ses through repo.saltstack.com. (The-Loeki) #685
|
||||
* fix for FreeBSD 11 CURRENT install functions. (serge-p) #723
|
||||
* Don't add zypp repo if it already exists. (furlongm) #731
|
||||
* switch repositories for suse and sles fixes `#706`_. (aboe76) #734
|
||||
* Reformat and correct usage instructions. (vutny) #755
|
||||
* fixed missing repo for suse 12. (aboe76) #756
|
||||
* fix for Amazon Linux. (shawnbutts) #700
|
||||
* adding support for OpenBSD distribution. (serge-p) #722
|
||||
* fixing syntax errors. (beardedeagle) #760
|
||||
* Import CentOS 7 GPG key on RHEL for installing base dependencies from Salt corp repo. (vutny) #765
|
||||
* Fix multiple lint errors (shellcheck) and make some refactoring. (vutny) #768
|
||||
* Fix sleep time option to recognize a numeric argument. (vutny) #771
|
||||
* Update README. (vutny) #787
|
||||
* get tornado from pip on a fedora git install. (jfindlay) #785
|
||||
* Remove the Saltstack repo's alias. (cro) #794
|
||||
* Ability to change cache dir. (clarkperkins) #761
|
||||
* Add config_freebsd_salt func so freebsd puts cfgs in the right place. (ryanwalder) #779
|
||||
* Allow archive versions. (clarkperkins) #769
|
||||
* Lack of HTTPS for RPM packages. (jaredestroud) #783
|
||||
* Ability to change cache dir. (clarkperkins) #761
|
||||
* Bootstrap on Docker. (vutny) #793
|
||||
* add downstream pkg repo for SUSE. (jfindlay) #791
|
||||
* Fixed use of HTTP over HTTPS for anonscm.debian.org. (gdm85) #788
|
||||
* Bump Salt version to latest stable in PS bootstrap script for Windows. (vutny) #801
|
||||
* Add an -l option to switch https to http links. (rallytime) #795
|
||||
* Virtualenv support for Ubuntu. (l2ol33rt) #666
|
||||
* Lint. (jfindlay) #805
|
||||
* use portable command check. (jfindlay) #806
|
||||
* Update epel-release version number (RuriRyan) #809
|
||||
|
||||
|
||||
Version 2015.11.09
|
||||
* Make sure that wget is installed. #868
|
||||
|
||||
|
||||
Version 2015.11.04:
|
||||
* Allow bypassing dependencies installation. Thanks EYJ. #656.
|
||||
* Add FreeBSD 11 support. Thanks Chris Buechler(cbuechler). #653
|
||||
* Move RHEL installations to use repo.saltstack.com #674
|
||||
* Move Debian 8 installation to use repo.saltstack.com #674
|
||||
* Fix error finding python-jinja2 in RHEL 7. Thanks Rob Eden(hedinfaok). #654
|
||||
* Move Ubuntu 12 and 14 installations to use repo.saltstack.com #674
|
||||
* Move FreeBSD installations to use repo.saltstack.com #674
|
||||
* Use dnf on Fedora 22 and later. Thanks Michele Bologna (mbologna). #665
|
||||
|
||||
|
||||
Version 2015.08.06:
|
||||
* Fix python-requests installations for Ubuntu >= 14.04 LTS. #631, #632, #633
|
||||
* Install python-crypto from Chris Lea's PPA for Ubuntu < 14.04
|
||||
* Exit the git checkout directory before deleting it. Thanks Bret Fisher. #634
|
||||
* Use prefix /usr for centos git install. Thanks Stanislav B. #638
|
||||
* Drop Ubuntu EOL versions. All Ubuntu version before 12.04.
|
||||
* Make sure python-dev is installed wheb trying to install tornado from PyPi. #640
|
||||
|
||||
|
||||
Version 2015.07.22:
|
||||
* Fix tornado installation in Ubuntu. Thanks Yushi Nakai. #627
|
||||
* Install tornado using pip on Ubuntu for Salt's v2015.8.xx onward stable releases.
|
||||
* Install requests on Ubuntu from Chris Lea's PPA. #630
|
||||
|
||||
Version 2015.07.17:
|
||||
* Make sure setuptools is installed before using it. #598.
|
||||
* `systemd` is only fully supported from 15.04 onwards. #602
|
||||
* Fix debian mirrors issue. Thanks Wolodja Wentland(babilen). #606
|
||||
* Fix python-jinja2 repo move on RHEL6. Thanks lomeroe. #621
|
||||
* Allow skipping services. Thanks denmat. #455
|
||||
* Fix missing Debian init script. #607 saltstack/salt#25270 and saltstack/salt#25456
|
||||
* Fix SmartOS etc path. Thanks Bret Fisher. #624
|
||||
* Fix possible unbound variable in Gentoo. #625
|
||||
* Properly detect the git binary in SmartOS. #611
|
||||
|
||||
Version 2015.05.07:
|
||||
* Lower required requests version dependency. Use system requests package where possible.
|
||||
* Allow Ubuntu alternate ppas. Thanks Peter Tripp(notpeter). #563
|
||||
|
||||
Version 2015.05.04:
|
||||
* Fix the configuration path for FreeBSD. #567/#552. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
+ Fix non grouping support in POSIX sed. Thanks Ronald van Zantvoort(The-Loeki).
|
||||
* Add Debian 8 support. Thanks Matt Black(mafrosis)
|
||||
* Improve Debian version parsing. Thanks Mark Lee(malept)
|
||||
* Make sure we update packages list one Chris Lea's PPA repository is added.
|
||||
* Hard code the Debian Squeeze backports to the DE mirror since the main repository is down.
|
||||
Thanks @panticz. #589.
|
||||
* Only install git if not already installed. #560
|
||||
* Fix openSUSE 13.2 where we need to pass --replaceflags. Thanks Roman Inflianskas(rominf).
|
||||
#504.
|
||||
* Make sure that a recent enough requests package is installed in Debian/Ubuntu.
|
||||
* Install tornado on git installs for the develop branch if necessary. #580
|
||||
* Add support for Ubuntu 15.04
|
||||
|
||||
Version 2015.03.15:
|
||||
* Add multi-master support. Thanks Fred Reimer(freimer). #555
|
||||
|
||||
Version 2015.03.04:
|
||||
* Fix the salt package selection on Arch stable installs.
|
||||
|
||||
Version 2015.02.28:
|
||||
* Fix Debian backports repository.
|
||||
|
||||
Version 2015.02.27:
|
||||
* Try other tools besides wget when downloading the COPR repo file. Thanks Ronald van
|
||||
Zantvoort(The-Loeki)
|
||||
* No need to install packages from the Unstable repository for debian, use backports. Thanks
|
||||
Ari Aosved(devaos)
|
||||
* Fix an issue in CentOS where the syndic package wasn't being installed(since it's now a
|
||||
separate package). Thanks Ronald van Zantvoort(The-Loeki)
|
||||
* Enable the server-optionals repository for RHEL >= 7
|
||||
* RHEL/CentOS 5 now uses the COPR repository. #533
|
||||
|
||||
Version 2015.01.12:
|
||||
* Add package upgrades support to FreeBSD. Thanks William Eshagh(eshagl).
|
||||
* Make sure wget is installed on debian bare systems.
|
||||
* Make sure the Arch pacman database is up to date
|
||||
* Install `python-hashlib` in CentOS 5 in order to use the COPR repository
|
||||
|
||||
Version 2014.12.11:
|
||||
* Enable binary installations on CentOS 7. Thanks ggillies
|
||||
* Updated the URL for EPEL 7
|
||||
|
||||
Version 2014.10.30:
|
||||
* Apply the forking patch to openSUSE git installations.
|
||||
|
||||
Version 2014.10.28:
|
||||
* Install the python systemd bindings for Arch and Fedora git installations
|
||||
* Allow cloning from Salt's git repository using HTTPS. #475
|
||||
|
||||
Version 2014.10.21:
|
||||
* Fix path to python on FreeBSD. Thanks Pavel Snagovsky(paha)
|
||||
* Fix syndic installation on RHEL based installations. Thanks markgaylard
|
||||
* Properly detect the git checkout `basename` directory instead of hard coding it. Thanks
|
||||
Howard Mei(HowardMei).
|
||||
* Allow installing ZMQ for SaltStack's COPR repository.
|
||||
* Allow installing ZMQ4/PyZMQ14 from Chris Lea's PPA repository.
|
||||
|
||||
Version 2014.10.14:
|
||||
* Fixed a regex issue with matching Salt's tags. Match v2014.7 but not 2014.7 as a valid tag
|
||||
* Distro Support Added:
|
||||
* Added Linux Mint 17 support(Thanks Skyler Berg)
|
||||
* Disrto Suuport Fixed:
|
||||
* Init pacman keys if not done so previously
|
||||
|
||||
Version 2014.09.25:
|
||||
* Properly detect Amazon AMI's >= 2014.9. #468
|
||||
|
||||
Version 2014.09.09:
|
||||
* Distro Support Fixes:
|
||||
* Updated the URL for EPEL 7
|
||||
* PIP based installations on Ubuntu 10.04 need setuptools installed
|
||||
* Arch stopped providing the version information on `/etc/arch-release`
|
||||
* Complete `salt-api` services checking. #450
|
||||
|
||||
Version 2014.08.30:
|
||||
* Skip service checks for `salt-api`, since this should be an opt-in service not necessarily
|
||||
meant to start at boot time.
|
||||
* Distro Support Fixes:
|
||||
* Also install the salt-api service on RHEL based distributions for git based
|
||||
installations.
|
||||
* Properly detect Arch Linux when lsb-release is available
|
||||
* Updated the URL for EPEL 7
|
||||
|
||||
Version 2014.08.23:
|
||||
* Avoid redirect breakage when installing EPEL with rpm on RHEL 5
|
||||
* Ensure python-apt is installed by the bootstrap script for Debian & Ubuntu minions. Thanks
|
||||
@garethgreenaway.
|
||||
* Don't shallow clone on git versions lower than 1.7.10
|
||||
* Only shallow clone on git tag based installations
|
||||
* Configurable Salt repository clone directory for git based installations
|
||||
* Distro Support Fixed:
|
||||
* Fixed the URL to download EPEL for Cent 5
|
||||
* Use the full path to the `chkconfig` binary when checking for services in SysV init
|
||||
systems.
|
||||
* Fixed an issue where the default sleep period(3 secs) on Ubuntu would cause a race
|
||||
condition with upstart wherein the package installation would call an upstart start and
|
||||
before it could complete, bootstrap would call another. The result was *two* copies of salt
|
||||
running which ended up causing a most stubborn bug that's documented in
|
||||
https://github.com/saltstack/salt/issues/12248
|
||||
|
||||
Version 2014.07.29:
|
||||
* Shallow clone Salt's repository for speed improvements. In case of failure, resume old
|
||||
behaviour.
|
||||
* Fixed bug introduced in 0577622 when salt-api service install and checks were added
|
||||
* Distro Support Fixed:
|
||||
* Fixed infinite loop when handling RHEL dependencies. Thanks Dan Mick(@dmick).
|
||||
|
||||
Version 2014.07.27:
|
||||
* Amazon Linux AMI 2010.xx is not explicitly not supported.
|
||||
* Install the `salt-api` scripts if available when the `salt-master` is also installed.
|
||||
* Added support for a configurable sleep time when starting, restarting and checking for
|
||||
enabled services.
|
||||
* Drop the `tsflags` requirement for RHEL and RHEL based distributions.
|
||||
* When sorting release files, oracle-release has higher priority than redhat-release.
|
||||
* Distro Support Fixed:
|
||||
* Debian >= 7 uses system's python-requests package, not PIP
|
||||
* Install 'python-zypp' in SuSE and openSUSE(required by Salt's zypper module)
|
||||
* Only install EPEL on requiring distributions if not already installed
|
||||
* CentOS 7 now uses systemd and the script now properly handles it
|
||||
* systemd in openSUSE 12.2 complains if service does not contain `.service``
|
||||
* Properly detect openSUSE using `lsb_release
|
||||
* SLES 11 SP3 ships with both python-M2Crypto-0.22.* and python-m2crypto-0.21 and we will
|
||||
be asked which we want to install, even with --non-interactive. Let's try to install the
|
||||
higher version first and then the lower one in case of failure.
|
||||
* Allow some extra time on RHEL for the optionals repo check in case the repository
|
||||
subscription is being managed externally.
|
||||
|
||||
Version 2014.06.30:
|
||||
* Distro Support Fixed:
|
||||
* Bump build/maintenance version for epel-release package. Thanks Gregory Meno(GregMeno)
|
||||
* Properly detect Amazon Linux AMI when using `lsb_release`
|
||||
* Fix `tsflags` installation.
|
||||
|
||||
Version 2014.06.28:
|
||||
* Fixed `tsflags` packages detection for RHEL and Oracle Linux 6.5
|
||||
|
||||
Version 2014.06.21:
|
||||
* Also export the HTTPS proxy environment variable. Thanks Giuseppe Iannello(gianello).
|
||||
* Distro Support Fixed:
|
||||
* Improve Oracle Linux Server detection
|
||||
* Overcome the Oracle Linux awkwardness. `--enablerepo=XYX` disables ALL OTHER REPOS!!!!
|
||||
* Oracle Linux also support testing repositories installation
|
||||
|
||||
Version 2014.06.19:
|
||||
* Allow passing the master address as an environment variable, `BS_SALT_MASTER_ADDRESS`
|
||||
* Fixed an issue with the keys pre-seed. We were passing absolute paths where we only needed
|
||||
basenames.
|
||||
* Added HTTP proxy configuration support. Thanks Giuseppe Iannello(gianello),
|
||||
* Distro Support Added:
|
||||
* Elementary OS
|
||||
* RHEL 7 Beta/RC
|
||||
* Kali Linux. Thanks Valentin Bud(valentinbud)
|
||||
* Distro Support Fixed:
|
||||
* Improved RHEL optionals repository detection
|
||||
|
||||
Version 2014.04.16:
|
||||
* Fixed a bug for RHEL 6 based distributions where yum-utils was not getting installed.
|
||||
* Added minor version check for RHEL 6 optional channel.
|
||||
* Added quotes around "apache-libcloud>=$_LIBCLOUD_MIN_VERSION" for proper version requirements
|
||||
handling.
|
||||
* Install the python 'requests' package which is now a hard dependency in Salt.
|
||||
* When installing from a user defined repository add the official one as a remote and fetch
|
||||
its tags for proper versioning.
|
||||
* Distro Support Fixed:
|
||||
* CentOS netinstall ISO's don't install `chkconfig`
|
||||
* Improved RHEL optional repository detection. This allows user repository usage, which
|
||||
don't need the optional repository support since they usually provide their packages.
|
||||
* Distro Support Added:
|
||||
* Oracle Linux
|
||||
* Scientific Linux
|
||||
|
||||
Version 2014.03.10-1:
|
||||
* Distro Support Fixed:
|
||||
* Fix the Debian services running function
|
||||
|
||||
Version 2014.03.10:
|
||||
* Debian based distributions which don't use upstart now also check if the salt services are
|
||||
enabled.
|
||||
* Distro Support Fixed:
|
||||
* RedHat based distributions now have a proper services enabled checker.
|
||||
|
||||
Version 2014.02.27:
|
||||
* Fixed a bug on the services enabled function searching logic.
|
||||
* Arch, Fedora, openSUSE and SuSE now check for services enabled, if using systemd
|
||||
* CentOS(and any RedHat based) and Ubuntu now check for services enabled is using upstart
|
||||
* Distro Support Added:
|
||||
* Debian 8. Thank You Boris Feld(Lothiraldan).
|
||||
|
||||
Version 2014.02.19:
|
||||
* Fixed a problem with the quotes of an error message
|
||||
* Arch installations now uses the community repository
|
||||
* Distro Support Fixed:
|
||||
* Fixed Fedora Git based installations(git was not being installed)
|
||||
|
||||
Version 2014.02.18:
|
||||
* Debian based distribution now get a warning stating that NOT starting daemons does not work
|
||||
as supposed, mainly because that's the Debian policy.
|
||||
* Fix bug introduced when implementing the master ip flag. The default minion includes
|
||||
directory is `minion.d`, not `minion.conf.d`
|
||||
|
||||
Version 2014.02.16:
|
||||
* The script now allows setting up the salt-master address as a separate configuration file by
|
||||
passing `-A` to the script.
|
||||
* Add support to install apache-libcloud by passing the `-L` flag. In some distribution it's
|
||||
also needed to pass `-P` because the minimal apache-libcloud version is `0.14.0`. This support
|
||||
is still missing for FreeBSD and SmartOS.
|
||||
* Fixed an issue when copying or moving files. We now test to see if the destination is a
|
||||
directory and create a full path from that so that the "do not override" logic works as
|
||||
supposed. #294.
|
||||
* Allow passing additional package names to install while installing Salt's dependencies. #262
|
||||
* Pass the salt configuration directory, default or from environment variable to the setup.py
|
||||
script for git based installations. #305
|
||||
* Distro Support Fixed:
|
||||
* FreeBSD `fetch` now has a notion of insecure certificates. Handle this properly. Thank
|
||||
You Mike Carlson(m87carlson).
|
||||
* Arch, openSUSE and SuSE are now upgradable when the `-U` flag is passed.
|
||||
* Force overwrites now works for existing init.d scripts on CentOS git installations. #259
|
||||
* Distro Support Added:
|
||||
* FreeBSD 10 is now also supported. Thank You Mike Carlson(m87carlson).
|
||||
* Red Had Enterprise Workstation is now supported.
|
||||
|
||||
Version 1.5.11:
|
||||
* Fixed an out of scope variable missed when moving functions around.
|
||||
|
||||
Version 1.5.10:
|
||||
* Salt no longer has the master branch in git, install from develop as default.
|
||||
* Installing from Git on Red Hat based distributions now also needs `yum-utils` installed.
|
||||
* Allow the script to use a different git repository to install from.
|
||||
* Fixed a bug where a branch name with dashes would be wrongly detected as an option to the
|
||||
script.
|
||||
* Default to secure file downloads(if any).
|
||||
* Distro Support Fixed:
|
||||
* Minimal Ubuntu installation might not have upstart installed, fixed.
|
||||
* FreeBSD now uses the official FreeBSD repository. Thank You Paul Brian(lifeisstillgood)!
|
||||
|
||||
Version 1.5.9:
|
||||
* Allow to not start the daemons after bootstrapping salt. This will allow `vagrant-lxc`
|
||||
installations, `debootstrap*`, etc, to finish properly. Thanks Henrik Holmboe (holmboe).
|
||||
* Distro Support Fixed:
|
||||
* Salt >= 0.17 requires ElementTree which is on the python standard library after python
|
||||
2.6 but openSUSE split that into a separate package.
|
||||
* Fixed a logic preventing proper Ubuntu bootstrapping on some situations.
|
||||
|
||||
Version 1.5.8:
|
||||
* Fixed an Ubuntu regression. `add-apt-repository` is only available on
|
||||
`software-properties-common` after 12.10, inclusive. Thanks Diego Woitasen(diegows)
|
||||
|
||||
Version 1.5.7:
|
||||
* For RedHat based distributions which rely on `epel`, the user can now pass `testing` to the
|
||||
script and `epel-testing` shall be used to bootstrap salt and it's dependencies.
|
||||
* No full system upgrades, if optional by the distribution, shall be done unless `-U` is passed
|
||||
to the bootstrap script(required upgrade procedures must exist on the script, currently Debian
|
||||
and RedHat based distributions support system upgrades).
|
||||
* Fixed an issue where passing BS_KEEP_TEMP_FILES=1 to the script was causing an error. #206.
|
||||
* Switched FreeBSD default packages repository to PCBSD(http://www.pcbsd.org) and added
|
||||
multiple repository support to install salt from the SaltStack's FreeBSD repository. Thanks
|
||||
Christer Edwards(cedwards).
|
||||
* Improved Gentoo Support. Thanks Elias Probst(eliasp).
|
||||
* Stop execution soon for end of life distributions or non supported distribution versions.
|
||||
* Distro Support Fixed:
|
||||
* Fixed an unbound variable while bootstraping Gentoo.
|
||||
* Fixed CentOS/RHEL 5.
|
||||
* Fixed crypto++ compilation. Thanks Kenneth Wilke(KennethWilke)!
|
||||
* Fixed FreeBSD git installations not pointing to the proper salt configuration directory,
|
||||
which on FreeBSD is '/usr/local/etc/salt'.
|
||||
* Fixed testing installation for Red Hat based distributions. Thanks Jeff Strunk(jstrunk)
|
||||
* Fixed wrong package name on Arch. Thanks Niels Abspoel(aboe76)
|
||||
* Make sure the Ubuntu universe repository is enabled. Thanks Karl Grzeszczak(karlgrz).
|
||||
* Fixed SmartOS installation. Thanks Matthieu Guegan(mguegan).
|
||||
|
||||
Version 1.5.6:
|
||||
* If there's a `grains` file on the provided temporary configuration directory, move it to the
|
||||
proper place while moving the minion configuration file.
|
||||
* Gentoo bootstraps can now use a bin host to provide binary packages, just set the
|
||||
`BS_GENTOO_USE_BINHOST` environment variable.
|
||||
* If `BS_KEEP_TEMP_FILES=1` is found on the environment, the script will copy the files instead
|
||||
of moving them.
|
||||
* There were still some `mv` and `cp` occurrences which were not using their `{move,copy}file`
|
||||
replacements which ended up on now respecting the "Do not override existing configuration"
|
||||
feature.
|
||||
* Distro Support Fixed:
|
||||
* Arch now upgrades it's system package properly as suggested on their mailing list.
|
||||
* Arch now moves back any configuration files provided by the user renamed by pacman on the
|
||||
installation process.
|
||||
* Fixed SmartOS detection(was being detected as Solaris) and bootstrapping. Fixed SmartOS
|
||||
different gcc package names for different package sets.
|
||||
* Fixed FreeBSD git based installations(no rc.d scripts were available).
|
||||
* Fixed FreeBSD not re-evaluating the `PKI_DIR` variable since the `SALT_ETC_DIR` was
|
||||
redefined.
|
||||
* Distro Support Added:
|
||||
* Linux Mint. Thanks Alex Van't Hof(alexvh)!
|
||||
* Linaro.
|
||||
|
||||
|
||||
Version 1.5.5:
|
||||
* Fixed a variable error in the new pre-seed feature.
|
||||
* Fixed the destination path to where the pre-seed minions keys should be copied.
|
||||
* Debian installations now use SaltStack's repository.
|
||||
* Configuration files can now be passed as an URL to a compressed file. Thanks Geoff Garside!
|
||||
* Distro Support Fixed:
|
||||
* Debian's optional ZMQ3 support was fixed (libzmq3 has moved from experimental to
|
||||
unstable).
|
||||
* Ubuntu Lucid Daily PPA
|
||||
* SmartOS no longer ignores $SALT_ETC_DIR. Matthieu Guegan!
|
||||
* FreeBSD no longer ignores $SALT_ETC_DIR. Thanks Geoff Garside!
|
||||
* FreeBSD does not try to install pkgng if pkg is installed. Thanks Geoff Garside!
|
||||
* SunOS (Make use of XPG4 binaries on SunOS). Thanks Matthieu Guegan!
|
||||
* openSUSE (Don't fail if only one of the repositories failed to update)
|
||||
* Arch (Fixed the GPG issues for git installations)
|
||||
* Distro Support Added:
|
||||
* Gentoo. Thanks kaithar!
|
||||
|
||||
|
||||
Version 1.5.4:
|
||||
* Fixed an issue we had when /proc/cpuinfo had more than one CPU. Detected on AMD CPUs.
|
||||
* OpenSUSE 12.3 uses lsb_release. Fix the returned distro name "openSUSE project" to "openSUSE"
|
||||
which the script handles.
|
||||
* Added an custom move function which will only override if required and if we permit it.
|
||||
* Implemented the necessary function to pre-seed minion keys on a salt master as an optional
|
||||
argument.
|
||||
* Distro Support Fixed:
|
||||
* FreeBSD (Don't let the script fail if PACKAGESITE is not set)
|
||||
* Debian Stable installations (the function search was not working as supposed)
|
||||
* Distro Support Added:
|
||||
* Ubuntu 13.04 (Was disabled because of a bad beta1. Fixed in beta2)
|
||||
|
||||
|
||||
Version 1.5.3:
|
||||
* Return 0 or 1 from functions
|
||||
* Convert several pipes into a single awk call
|
||||
* Fixed `/etc/os-release` parsing
|
||||
* Fixed `config_salt()`
|
||||
* Distro Support Fixed:
|
||||
* EPEL-based installations (CentOS, Amazon Linux, RedHat)
|
||||
* SuSE/OpenSUSE (problem running the script twice, ie, existing `devel_languages_python`
|
||||
repository)
|
||||
* SuSE 11 SP1 (pip based install and config trigger)
|
||||
* Distro Support Added:
|
||||
* Debian 7 (Only git installations at the moment)
|
||||
|
||||
|
||||
Version 1.5.2:
|
||||
* Fix issue with Travis testing (it installs it's own ZeroMQ3 lib
|
||||
* Allow setting the debug output from an environment variable
|
||||
* Fix an escape issue in the `printf` calls used in our echo calls
|
||||
* Don't overwrite files (`config`, `init.d`, etc). Use a specific flag to force overwrites.
|
||||
* Distro Support Fixed:
|
||||
* Ubuntu daily installs.
|
||||
* Distro Support Added:
|
||||
* Trisquel 6.0 (Ubuntu 12.04)
|
||||
|
||||
|
||||
Version 1.5.1:
|
||||
* Improved unittesting.
|
||||
* Starting daemons.
|
||||
* Make sure that daemons are really running.
|
||||
* For the users to make the choice if installing from PIP (if required since there aren't system
|
||||
pacakges).
|
||||
* Fixed salt's git cloning when the salt git tree is already present on the system.
|
||||
* Distro Support Fixed:
|
||||
* Debian 6
|
||||
* Ubuntu 12.10
|
||||
* CentOS
|
||||
* Distro Support Added:
|
||||
* SuSE 11 SP1/11 SP2
|
||||
* OpenSUSE 12.x
|
||||
|
||||
|
||||
Version 1.5:
|
||||
* First stable version of the script
|
||||
* Support for:
|
||||
* Ubuntu 10.x/11.x/12.x
|
||||
* Debian 6.x
|
||||
* CentOS 5/6
|
||||
* Red Hat 5/6
|
||||
* Red Hat Enterprise 5/6
|
||||
* Fedora
|
||||
* Arch
|
||||
* SmartOS
|
||||
* FreeBSD 9.0
|
||||
|
||||
|
||||
# Don't remove the line below.
|
||||
# vim: fenc=utf-8 spell spl=en cc=100 tw=99 fo=want ts=4
|
24
README.rst
24
README.rst
|
@ -32,7 +32,7 @@ sum** of the downloaded ``bootstrap-salt.sh`` file.
|
|||
|
||||
The SHA256 sum of the ``bootstrap-salt.sh`` file, per release, is:
|
||||
|
||||
=======
|
||||
- 2022.05.19: ``e92e1df6930285cf23eda188bee3cfa3dd6c577b4fb7aa91b29213ad820199b1``
|
||||
- 2022.03.15: ``8f65952c3435f441e7f793941d5162d3ec2033a9ef82722ff1da67a2ef860a2f``
|
||||
- 2021.09.17: ``090d652cd6290debce0e3a4eded65086a4272e69446e711eb26f87160593b6a2``
|
||||
- 2021.09.14: ``30fdcba972f449630b4f13492cb5525e69e08fa2cdb66a6dc78f1536ad279e52``
|
||||
|
@ -102,12 +102,12 @@ To view the latest options and descriptions for ``salt-bootstrap``, use ``-h`` a
|
|||
Examples:
|
||||
- bootstrap-salt.sh
|
||||
- bootstrap-salt.sh stable
|
||||
- bootstrap-salt.sh stable 3003.3
|
||||
- bootstrap-salt.sh stable v3002.7
|
||||
- bootstrap-salt.sh stable 3004.1
|
||||
- bootstrap-salt.sh stable v3003.4
|
||||
- bootstrap-salt.sh testing
|
||||
- bootstrap-salt.sh git
|
||||
- bootstrap-salt.sh git 3003.3
|
||||
- bootstrap-salt.sh git v3002.7
|
||||
- bootstrap-salt.sh git 3004.1
|
||||
- bootstrap-salt.sh git v3003.4
|
||||
- bootstrap-salt.sh git 06f249901a2e2f1ed310d58ea3921a129f214358
|
||||
|
||||
Options:
|
||||
|
@ -218,14 +218,14 @@ If you want to install a package of a specific release version, from the SaltSta
|
|||
.. code:: console
|
||||
|
||||
curl -o bootstrap-salt.sh -L https://bootstrap.saltproject.io
|
||||
sudo sh bootstrap-salt.sh -P stable 3003.3
|
||||
sudo sh bootstrap-salt.sh -P stable 3004.1
|
||||
|
||||
If you want to install a specific release version, based on the Git tags:
|
||||
|
||||
.. code:: console
|
||||
|
||||
curl -o bootstrap-salt.sh -L https://bootstrap.saltproject.io
|
||||
sudo sh bootstrap-salt.sh git v3003.3
|
||||
sudo sh bootstrap-salt.sh git v3004.1
|
||||
|
||||
Using ``curl`` to install latest development version from GitHub:
|
||||
|
||||
|
@ -280,14 +280,14 @@ Installing a specific version from git using ``wget``:
|
|||
.. code:: console
|
||||
|
||||
wget -O bootstrap-salt.sh https://bootstrap.saltproject.io
|
||||
sudo sh bootstrap-salt.sh git v3003.3
|
||||
sudo sh bootstrap-salt.sh git v3004.1
|
||||
|
||||
Installing a specific version package from the SaltStack repo using ``wget``:
|
||||
|
||||
.. code:: console
|
||||
|
||||
wget -O bootstrap-salt.sh https://bootstrap.saltproject.io
|
||||
sudo sh bootstrap-salt.sh -P stable 3003.3
|
||||
sudo sh bootstrap-salt.sh -P stable 3004.1
|
||||
|
||||
**NOTE**
|
||||
|
||||
|
@ -303,7 +303,7 @@ If you already have Python installed, ``python 2.7``, then it's as easy as:
|
|||
.. code:: console
|
||||
|
||||
python -m urllib "https://bootstrap.saltproject.io" > bootstrap-salt.sh
|
||||
sudo sh bootstrap-salt.sh -P stable 3003.3
|
||||
sudo sh bootstrap-salt.sh -P stable 3004.1
|
||||
|
||||
With python version 2, the following in-line code should always work:
|
||||
|
||||
|
@ -317,7 +317,7 @@ With python version 3:
|
|||
.. code:: console
|
||||
|
||||
python3 -c 'import urllib.request; print(urllib.request.urlopen("https://bootstrap.saltproject.io").read().decode("ascii"))' > bootstrap-salt.sh
|
||||
sudo sh bootstrap-salt.sh git v3003.3
|
||||
sudo sh bootstrap-salt.sh git v3004.1
|
||||
|
||||
Install using fetch
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -378,7 +378,7 @@ Installing a target version package of Salt from the SaltStack repo:
|
|||
|
||||
.. code:: console
|
||||
|
||||
curl -L https://bootstrap.saltproject.io | sudo sh -s -- stable 3003.3
|
||||
curl -L https://bootstrap.saltproject.io | sudo sh -s -- stable 3004.1
|
||||
|
||||
Installing the latest master branch of Salt from git:
|
||||
|
||||
|
|
692
bootstrap-salt.sh
Normal file → Executable file
692
bootstrap-salt.sh
Normal file → Executable file
|
@ -23,7 +23,7 @@
|
|||
#======================================================================================================================
|
||||
set -o nounset # Treat unset variables as an error
|
||||
|
||||
__ScriptVersion="2022.05.19"
|
||||
__ScriptVersion="2022.08.12"
|
||||
__ScriptName="bootstrap-salt.sh"
|
||||
|
||||
__ScriptFullName="$0"
|
||||
|
@ -268,6 +268,7 @@ _CUSTOM_MASTER_CONFIG="null"
|
|||
_CUSTOM_MINION_CONFIG="null"
|
||||
_QUIET_GIT_INSTALLATION=$BS_FALSE
|
||||
_REPO_URL="repo.saltproject.io"
|
||||
_ONEDIR_DIR="salt"
|
||||
_PY_EXE="python3"
|
||||
_INSTALL_PY="$BS_FALSE"
|
||||
_TORNADO_MAX_PY3_VERSION="5.0"
|
||||
|
@ -290,17 +291,24 @@ __usage() {
|
|||
Usage : ${__ScriptName} [options] <install-type> [install-type-args]
|
||||
|
||||
Installation types:
|
||||
- stable Install latest stable release. This is the default
|
||||
install type
|
||||
- stable [branch] Install latest version on a branch. Only supported
|
||||
for packages available at repo.saltproject.io
|
||||
- stable [version] Install a specific version. Only supported for
|
||||
packages available at repo.saltproject.io
|
||||
To pin a 3xxx minor version, specify it as 3xxx.0
|
||||
- testing RHEL-family specific: configure EPEL testing repo
|
||||
- git Install from the head of the master branch
|
||||
- git [ref] Install from any git ref (such as a branch, tag, or
|
||||
commit)
|
||||
- stable Install latest stable release. This is the default
|
||||
install type
|
||||
- stable [branch] Install latest version on a branch. Only supported
|
||||
for packages available at repo.saltproject.io
|
||||
- stable [version] Install a specific version. Only supported for
|
||||
packages available at repo.saltproject.io
|
||||
To pin a 3xxx minor version, specify it as 3xxx.0
|
||||
- testing RHEL-family specific: configure EPEL testing repo
|
||||
- git Install from the head of the master branch
|
||||
- git [ref] Install from any git ref (such as a branch, tag, or
|
||||
commit)
|
||||
- onedir Install latest onedir release.
|
||||
- onedir [version] Install a specific version. Only supported for
|
||||
onedir packages available at repo.saltproject.io
|
||||
|
||||
- onedir_rc Install latest onedir RC release.
|
||||
- onedir_rc [version] Install a specific version. Only supported for
|
||||
onedir RC packages available at repo.saltproject.io
|
||||
|
||||
Examples:
|
||||
- ${__ScriptName}
|
||||
|
@ -312,6 +320,10 @@ __usage() {
|
|||
- ${__ScriptName} git 2017.7
|
||||
- ${__ScriptName} git v2017.7.2
|
||||
- ${__ScriptName} git 06f249901a2e2f1ed310d58ea3921a129f214358
|
||||
- ${__ScriptName} onedir
|
||||
- ${__ScriptName} onedir 3005
|
||||
- ${__ScriptName} onedir_rc
|
||||
- ${__ScriptName} onedir_rc 3005
|
||||
|
||||
Options:
|
||||
-a Pip install all Python pkg dependencies for Salt. Requires -V to install
|
||||
|
@ -582,7 +594,7 @@ if [ "$#" -gt 0 ];then
|
|||
fi
|
||||
|
||||
# Check installation type
|
||||
if [ "$(echo "$ITYPE" | grep -E '(stable|testing|git)')" = "" ]; then
|
||||
if [ "$(echo "$ITYPE" | grep -E '(stable|testing|git|onedir|onedir_rc)')" = "" ]; then
|
||||
echoerror "Installation type \"$ITYPE\" is not known..."
|
||||
exit 1
|
||||
fi
|
||||
|
@ -604,7 +616,7 @@ elif [ "$ITYPE" = "stable" ]; then
|
|||
if [ "$#" -eq 0 ];then
|
||||
STABLE_REV="latest"
|
||||
else
|
||||
if [ "$(echo "$1" | grep -E '^(latest|1\.6|1\.7|2014\.1|2014\.7|2015\.5|2015\.8|2016\.3|2016\.11|2017\.7|2018\.3|2019\.2|3000|3001|3002|3003|3004)$')" != "" ]; then
|
||||
if [ "$(echo "$1" | grep -E '^(latest|1\.6|1\.7|2014\.1|2014\.7|2015\.5|2015\.8|2016\.3|2016\.11|2017\.7|2018\.3|2019\.2|3000|3001|3002|3003|3004|3005)$')" != "" ]; then
|
||||
STABLE_REV="$1"
|
||||
shift
|
||||
elif [ "$(echo "$1" | grep -E '^(2[0-9]*\.[0-9]*\.[0-9]*|[3-9][0-9]{3}(\.[0-9]*)?)$')" != "" ]; then
|
||||
|
@ -615,7 +627,49 @@ elif [ "$ITYPE" = "stable" ]; then
|
|||
fi
|
||||
shift
|
||||
else
|
||||
echo "Unknown stable version: $1 (valid: 1.6, 1.7, 2014.1, 2014.7, 2015.5, 2015.8, 2016.3, 2016.11, 2017.7, 2018.3, 2019.2, 3000, 3001, 3002, 3003, 3004, latest, \$MAJOR.\$MINOR.\$PATCH until 2019.2, \$MAJOR or \$MAJOR.\$PATCH starting from 3000)"
|
||||
echo "Unknown stable version: $1 (valid: 1.6, 1.7, 2014.1, 2014.7, 2015.5, 2015.8, 2016.3, 2016.11, 2017.7, 2018.3, 2019.2, 3000, 3001, 3002, 3003, 3004, 3005, latest, \$MAJOR.\$MINOR.\$PATCH until 2019.2, \$MAJOR or \$MAJOR.\$PATCH starting from 3000)"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
elif [ "$ITYPE" = "onedir" ]; then
|
||||
if [ "$#" -eq 0 ];then
|
||||
ONEDIR_REV="latest"
|
||||
else
|
||||
if [ "$(echo "$1" | grep -E '^(latest)$')" != "" ]; then
|
||||
ONEDIR_REV="$1"
|
||||
shift
|
||||
elif [ "$(echo "$1" | grep -E '^([3-9][0-9]{3}(\.[0-9]*)?)$')" != "" ]; then
|
||||
# Handle the 3xxx.0 version as 3xxx archive (pin to minor) and strip the fake ".0" suffix
|
||||
ONEDIR_REV=$(echo "$1" | sed -E 's/^([3-9][0-9]{3})\.0$/\1/')
|
||||
ONEDIR_REV="minor/$ONEDIR_REV"
|
||||
shift
|
||||
else
|
||||
echo "Unknown stable version: $1 (valid: 3005, latest.)"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
elif [ "$ITYPE" = "onedir_rc" ]; then
|
||||
# Change the _ONEDIR_DIR to be the location for the RC packages
|
||||
_ONEDIR_DIR="salt_rc/salt"
|
||||
|
||||
# Change ITYPE to onedir so we use the regular onedir functions
|
||||
ITYPE="onedir"
|
||||
|
||||
if [ "$#" -eq 0 ];then
|
||||
ONEDIR_REV="latest"
|
||||
else
|
||||
if [ "$(echo "$1" | grep -E '^(latest)$')" != "" ]; then
|
||||
ONEDIR_REV="$1"
|
||||
shift
|
||||
elif [ "$(echo "$1" | grep -E '^([3-9][0-9]{3}?rc[0-9]-[0-9]$)')" != "" ]; then
|
||||
# Handle the 3xxx.0 version as 3xxx archive (pin to minor) and strip the fake ".0" suffix
|
||||
#ONEDIR_REV=$(echo "$1" | sed -E 's/^([3-9][0-9]{3})\.0$/\1/')
|
||||
ONEDIR_REV="minor/$1"
|
||||
shift
|
||||
else
|
||||
echo "Unknown stable version: $1 (valid: 3005, latest.)"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
@ -2969,6 +3023,48 @@ __install_saltstack_ubuntu_repository() {
|
|||
__wait_for_apt apt-get update || return 1
|
||||
}
|
||||
|
||||
__install_saltstack_ubuntu_onedir_repository() {
|
||||
# Workaround for latest non-LTS Ubuntu
|
||||
if { [ "$DISTRO_MAJOR_VERSION" -eq 20 ] && [ "$DISTRO_MINOR_VERSION" -eq 10 ]; } || \
|
||||
[ "$DISTRO_MAJOR_VERSION" -eq 21 ]; then
|
||||
echowarn "Non-LTS Ubuntu detected, but stable packages requested. Trying packages for previous LTS release. You may experience problems."
|
||||
UBUNTU_VERSION=20.04
|
||||
UBUNTU_CODENAME="focal"
|
||||
else
|
||||
UBUNTU_VERSION=${DISTRO_VERSION}
|
||||
UBUNTU_CODENAME=${DISTRO_CODENAME}
|
||||
fi
|
||||
|
||||
# Install downloader backend for GPG keys fetching
|
||||
__PACKAGES='wget'
|
||||
|
||||
# Required as it is not installed by default on Ubuntu 18+
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 18 ]; then
|
||||
__PACKAGES="${__PACKAGES} gnupg"
|
||||
fi
|
||||
|
||||
# Make sure https transport is available
|
||||
if [ "$HTTP_VAL" = "https" ] ; then
|
||||
__PACKAGES="${__PACKAGES} apt-transport-https ca-certificates"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086,SC2090
|
||||
__apt_get_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
__PY_VERSION_REPO="apt"
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
__PY_VERSION_REPO="py3"
|
||||
fi
|
||||
|
||||
# SaltStack's stable Ubuntu repository:
|
||||
SALTSTACK_UBUNTU_URL="${HTTP_VAL}://${_REPO_URL}/${_ONEDIR_DIR}/${__PY_VERSION_REPO}/ubuntu/${UBUNTU_VERSION}/${__REPO_ARCH}/${ONEDIR_REV}/"
|
||||
echo "$__REPO_ARCH_DEB $SALTSTACK_UBUNTU_URL $UBUNTU_CODENAME main" > /etc/apt/sources.list.d/salt.list
|
||||
|
||||
__apt_key_fetch "${SALTSTACK_UBUNTU_URL}salt-archive-keyring.gpg" || return 1
|
||||
|
||||
__wait_for_apt apt-get update || return 1
|
||||
}
|
||||
|
||||
install_ubuntu_deps() {
|
||||
if [ $_DISABLE_REPOS -eq $BS_FALSE ]; then
|
||||
# Install add-apt-repository
|
||||
|
@ -3141,6 +3237,44 @@ install_ubuntu_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_ubuntu_onedir_deps() {
|
||||
if [ "${_SLEEP}" -eq "${__DEFAULT_SLEEP}" ] && [ "$DISTRO_MAJOR_VERSION" -lt 16 ]; then
|
||||
# The user did not pass a custom sleep value as an argument, let's increase the default value
|
||||
echodebug "On Ubuntu systems we increase the default sleep value to 10."
|
||||
echodebug "See https://github.com/saltstack/salt/issues/12248 for more info."
|
||||
_SLEEP=10
|
||||
fi
|
||||
|
||||
if [ $_START_DAEMONS -eq $BS_FALSE ]; then
|
||||
echowarn "Not starting daemons on Debian based distributions is not working mostly because starting them is the default behaviour."
|
||||
fi
|
||||
|
||||
# No user interaction, libc6 restart services for example
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
__wait_for_apt apt-get update || return 1
|
||||
|
||||
if [ "${_UPGRADE_SYS}" -eq $BS_TRUE ]; then
|
||||
if [ "${_INSECURE_DL}" -eq $BS_TRUE ]; then
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 20 ] || [ "$DISTRO_MAJOR_VERSION" -ge 21 ]; then
|
||||
__apt_get_install_noinput --allow-unauthenticated debian-archive-keyring && apt-get update || return 1
|
||||
else
|
||||
__apt_get_install_noinput --allow-unauthenticated debian-archive-keyring &&
|
||||
apt-key update && apt-get update || return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
__apt_get_upgrade_noinput || return 1
|
||||
fi
|
||||
|
||||
if [ "$_DISABLE_REPOS" -eq "$BS_FALSE" ] || [ "$_CUSTOM_REPO_URL" != "null" ]; then
|
||||
__check_dpkg_architecture || return 1
|
||||
__install_saltstack_ubuntu_onedir_repository || return 1
|
||||
fi
|
||||
|
||||
install_ubuntu_deps || return 1
|
||||
}
|
||||
|
||||
install_ubuntu_stable() {
|
||||
__PACKAGES=""
|
||||
|
||||
|
@ -3200,6 +3334,28 @@ install_ubuntu_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_ubuntu_onedir() {
|
||||
__PACKAGES=""
|
||||
|
||||
if [ "$_INSTALL_CLOUD" -eq $BS_TRUE ];then
|
||||
__PACKAGES="${__PACKAGES} salt-cloud"
|
||||
fi
|
||||
if [ "$_INSTALL_MASTER" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-master"
|
||||
fi
|
||||
if [ "$_INSTALL_MINION" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-minion"
|
||||
fi
|
||||
if [ "$_INSTALL_SYNDIC" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-syndic"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__apt_get_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_ubuntu_stable_post() {
|
||||
for fname in api master minion syndic; do
|
||||
# Skip salt-api since the service should be opt-in and not necessarily started on boot
|
||||
|
@ -3397,6 +3553,40 @@ __install_saltstack_debian_repository() {
|
|||
__wait_for_apt apt-get update || return 1
|
||||
}
|
||||
|
||||
__install_saltstack_debian_onedir_repository() {
|
||||
DEBIAN_RELEASE="$DISTRO_MAJOR_VERSION"
|
||||
DEBIAN_CODENAME="$DISTRO_CODENAME"
|
||||
|
||||
__PY_VERSION_REPO="apt"
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
__PY_VERSION_REPO="py3"
|
||||
fi
|
||||
|
||||
# Install downloader backend for GPG keys fetching
|
||||
__PACKAGES='wget'
|
||||
|
||||
# Required as it is not installed by default on Debian 9+
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 9 ]; then
|
||||
__PACKAGES="${__PACKAGES} gnupg2"
|
||||
fi
|
||||
|
||||
# Make sure https transport is available
|
||||
if [ "$HTTP_VAL" = "https" ] ; then
|
||||
__PACKAGES="${__PACKAGES} apt-transport-https ca-certificates"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086,SC2090
|
||||
__apt_get_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
# amd64 is just a part of repository URI, 32-bit pkgs are hosted under the same location
|
||||
SALTSTACK_DEBIAN_URL="${HTTP_VAL}://${_REPO_URL}/${_ONEDIR_DIR}/${__PY_VERSION_REPO}/debian/${DEBIAN_RELEASE}/${__REPO_ARCH}/${ONEDIR_REV}/"
|
||||
echo "$__REPO_ARCH_DEB $SALTSTACK_DEBIAN_URL $DEBIAN_CODENAME main" > "/etc/apt/sources.list.d/salt.list"
|
||||
|
||||
__apt_key_fetch "${SALTSTACK_DEBIAN_URL}salt-archive-keyring.gpg" || return 1
|
||||
|
||||
__wait_for_apt apt-get update || return 1
|
||||
}
|
||||
|
||||
install_debian_deps() {
|
||||
if [ $_START_DAEMONS -eq $BS_FALSE ]; then
|
||||
echowarn "Not starting daemons on Debian based distributions is not working mostly because starting them is the default behaviour."
|
||||
|
@ -3450,6 +3640,59 @@ install_debian_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_debian_onedir_deps() {
|
||||
if [ $_START_DAEMONS -eq $BS_FALSE ]; then
|
||||
echowarn "Not starting daemons on Debian based distributions is not working mostly because starting them is the default behaviour."
|
||||
fi
|
||||
|
||||
# No user interaction, libc6 restart services for example
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
__wait_for_apt apt-get update || return 1
|
||||
|
||||
if [ "${_UPGRADE_SYS}" -eq $BS_TRUE ]; then
|
||||
# Try to update GPG keys first if allowed
|
||||
if [ "${_INSECURE_DL}" -eq $BS_TRUE ]; then
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 10 ]; then
|
||||
__apt_get_install_noinput --allow-unauthenticated debian-archive-keyring && apt-get update || return 1
|
||||
else
|
||||
__apt_get_install_noinput --allow-unauthenticated debian-archive-keyring &&
|
||||
apt-key update && apt-get update || return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
__apt_get_upgrade_noinput || return 1
|
||||
fi
|
||||
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
PY_PKG_VER=3
|
||||
else
|
||||
PY_PKG_VER=""
|
||||
fi
|
||||
|
||||
# Additionally install procps and pciutils which allows for Docker bootstraps. See 366#issuecomment-39666813
|
||||
__PACKAGES='procps pciutils'
|
||||
|
||||
# YAML module is used for generating custom master/minion configs
|
||||
__PACKAGES="${__PACKAGES} python${PY_PKG_VER}-yaml"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__apt_get_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
if [ "$_DISABLE_REPOS" -eq "$BS_FALSE" ] || [ "$_CUSTOM_REPO_URL" != "null" ]; then
|
||||
__check_dpkg_architecture || return 1
|
||||
__install_saltstack_debian_onedir_repository || return 1
|
||||
fi
|
||||
|
||||
if [ "${_EXTRA_PACKAGES}" != "" ]; then
|
||||
echoinfo "Installing the following extra packages as requested: ${_EXTRA_PACKAGES}"
|
||||
# shellcheck disable=SC2086
|
||||
__apt_get_install_noinput ${_EXTRA_PACKAGES} || return 1
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_debian_git_pre() {
|
||||
if ! __check_command_exists git; then
|
||||
__apt_get_install_noinput git || return 1
|
||||
|
@ -3726,6 +3969,28 @@ install_debian_9_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_debian_onedir() {
|
||||
__PACKAGES=""
|
||||
|
||||
if [ "$_INSTALL_CLOUD" -eq $BS_TRUE ];then
|
||||
__PACKAGES="${__PACKAGES} salt-cloud"
|
||||
fi
|
||||
if [ "$_INSTALL_MASTER" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-master"
|
||||
fi
|
||||
if [ "$_INSTALL_MINION" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-minion"
|
||||
fi
|
||||
if [ "$_INSTALL_SYNDIC" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-syndic"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__apt_get_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_debian_git_post() {
|
||||
for fname in api master minion syndic; do
|
||||
# Skip if not meant to be installed
|
||||
|
@ -4117,9 +4382,13 @@ __install_epel_repository() {
|
|||
return 0
|
||||
fi
|
||||
|
||||
# Download latest 'epel-next-release' package for the distro version directly
|
||||
epel_next_repo_url="${HTTP_VAL}://dl.fedoraproject.org/pub/epel/epel-next-release-latest-${DISTRO_MAJOR_VERSION}.noarch.rpm"
|
||||
|
||||
# Download latest 'epel-release' package for the distro version directly
|
||||
epel_repo_url="${HTTP_VAL}://dl.fedoraproject.org/pub/epel/epel-release-latest-${DISTRO_MAJOR_VERSION}.noarch.rpm"
|
||||
rpm -Uvh --force "$epel_repo_url" || return 1
|
||||
|
||||
yum -y install "${epel_next_repo_url}" "${epel_repo_url}"
|
||||
|
||||
_EPEL_REPOS_INSTALLED=$BS_TRUE
|
||||
|
||||
|
@ -4143,6 +4412,8 @@ __install_saltstack_rhel_repository() {
|
|||
base_url="${HTTP_VAL}://${_REPO_URL}/${__PY_VERSION_REPO}/redhat/${DISTRO_MAJOR_VERSION}/\$basearch/${repo_rev}/"
|
||||
if [ "${DISTRO_MAJOR_VERSION}" -eq 7 ]; then
|
||||
gpg_key="SALTSTACK-GPG-KEY.pub base/RPM-GPG-KEY-CentOS-7"
|
||||
elif [ "${DISTRO_MAJOR_VERSION}" -ge 9 ]; then
|
||||
gpg_key="SALTSTACK-GPG-KEY2.pub"
|
||||
else
|
||||
gpg_key="SALTSTACK-GPG-KEY.pub"
|
||||
fi
|
||||
|
@ -4180,6 +4451,60 @@ _eof
|
|||
return 0
|
||||
}
|
||||
|
||||
__install_saltstack_rhel_onedir_repository() {
|
||||
if [ "$ITYPE" = "stable" ]; then
|
||||
repo_rev="$ONEDIR_REV"
|
||||
else
|
||||
repo_rev="latest"
|
||||
fi
|
||||
|
||||
__PY_VERSION_REPO="yum"
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
__PY_VERSION_REPO="py3"
|
||||
fi
|
||||
|
||||
# Avoid using '$releasever' variable for yum.
|
||||
# Instead, this should work correctly on all RHEL variants.
|
||||
base_url="${HTTP_VAL}://${_REPO_URL}/${_ONEDIR_DIR}/${__PY_VERSION_REPO}/redhat/${DISTRO_MAJOR_VERSION}/\$basearch/${ONEDIR_REV}/"
|
||||
if [ "${DISTRO_MAJOR_VERSION}" -eq 9 ]; then
|
||||
gpg_key="SALTSTACK-GPG-KEY2.pub"
|
||||
else
|
||||
gpg_key="SALTSTACK-GPG-KEY.pub"
|
||||
fi
|
||||
|
||||
gpg_key_urls=""
|
||||
for key in $gpg_key; do
|
||||
gpg_key_urls=$(printf "${base_url}${key},%s" "$gpg_key_urls")
|
||||
done
|
||||
|
||||
repo_file="/etc/yum.repos.d/salt.repo"
|
||||
|
||||
if [ ! -s "$repo_file" ] || [ "$_FORCE_OVERWRITE" -eq $BS_TRUE ]; then
|
||||
cat <<_eof > "$repo_file"
|
||||
[saltstack]
|
||||
name=SaltStack ${repo_rev} Release Channel for RHEL/CentOS \$releasever
|
||||
baseurl=${base_url}
|
||||
skip_if_unavailable=True
|
||||
gpgcheck=1
|
||||
gpgkey=${gpg_key_urls}
|
||||
enabled=1
|
||||
enabled_metadata=1
|
||||
_eof
|
||||
|
||||
fetch_url="${HTTP_VAL}://${_REPO_URL}/${_ONEDIR_DIR}/${__PY_VERSION_REPO}/redhat/${DISTRO_MAJOR_VERSION}/${CPU_ARCH_L}/"
|
||||
for key in $gpg_key; do
|
||||
__rpm_import_gpg "${fetch_url}${key}" || return 1
|
||||
done
|
||||
|
||||
yum clean metadata || return 1
|
||||
elif [ "$repo_rev" != "latest" ]; then
|
||||
echowarn "salt.repo already exists, ignoring salt version argument."
|
||||
echowarn "Use -F (forced overwrite) to install $repo_rev."
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_centos_stable_deps() {
|
||||
if [ "$_UPGRADE_SYS" -eq $BS_TRUE ]; then
|
||||
yum -y update || return 1
|
||||
|
@ -4484,6 +4809,101 @@ install_centos_git_post() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_centos_onedir_deps() {
|
||||
if [ "$_UPGRADE_SYS" -eq $BS_TRUE ]; then
|
||||
yum -y update || return 1
|
||||
fi
|
||||
|
||||
if [ "$_DISABLE_REPOS" -eq "$BS_TRUE" ] && [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
echowarn "Detected -r or -R option while installing Salt packages for Python 3."
|
||||
echowarn "Python 3 packages for older Salt releases requires the EPEL repository to be installed."
|
||||
echowarn "Installing the EPEL repository automatically is disabled when using the -r or -R options."
|
||||
fi
|
||||
|
||||
if [ "$_DISABLE_REPOS" -eq "$BS_FALSE" ]; then
|
||||
__install_epel_repository || return 1
|
||||
__install_saltstack_rhel_onedir_repository || return 1
|
||||
fi
|
||||
|
||||
# If -R was passed, we need to configure custom repo url with rsync-ed packages
|
||||
# Which is still handled in __install_saltstack_rhel_repository. This call has
|
||||
# its own check in case -r was passed without -R.
|
||||
if [ "$_CUSTOM_REPO_URL" != "null" ]; then
|
||||
__install_saltstack_rhel_onedir_repository || return 1
|
||||
fi
|
||||
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 8 ]; then
|
||||
__PACKAGES="dnf-utils chkconfig"
|
||||
else
|
||||
__PACKAGES="yum-utils chkconfig"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__yum_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
if [ "${_EXTRA_PACKAGES}" != "" ]; then
|
||||
echoinfo "Installing the following extra packages as requested: ${_EXTRA_PACKAGES}"
|
||||
# shellcheck disable=SC2086
|
||||
__yum_install_noinput ${_EXTRA_PACKAGES} || return 1
|
||||
fi
|
||||
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_centos_onedir() {
|
||||
__PACKAGES=""
|
||||
|
||||
if [ "$_INSTALL_CLOUD" -eq $BS_TRUE ];then
|
||||
__PACKAGES="${__PACKAGES} salt-cloud"
|
||||
fi
|
||||
if [ "$_INSTALL_MASTER" -eq $BS_TRUE ];then
|
||||
__PACKAGES="${__PACKAGES} salt-master"
|
||||
fi
|
||||
if [ "$_INSTALL_MINION" -eq $BS_TRUE ]; then
|
||||
__PACKAGES="${__PACKAGES} salt-minion"
|
||||
fi
|
||||
if [ "$_INSTALL_SYNDIC" -eq $BS_TRUE ];then
|
||||
__PACKAGES="${__PACKAGES} salt-syndic"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__yum_install_noinput ${__PACKAGES} || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_centos_onedir_post() {
|
||||
SYSTEMD_RELOAD=$BS_FALSE
|
||||
|
||||
for fname in api master minion syndic; do
|
||||
# Skip salt-api since the service should be opt-in and not necessarily started on boot
|
||||
[ $fname = "api" ] && continue
|
||||
|
||||
# Skip if not meant to be installed
|
||||
[ $fname = "master" ] && [ "$_INSTALL_MASTER" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "minion" ] && [ "$_INSTALL_MINION" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "syndic" ] && [ "$_INSTALL_SYNDIC" -eq $BS_FALSE ] && continue
|
||||
|
||||
if [ -f /bin/systemctl ]; then
|
||||
/bin/systemctl is-enabled salt-${fname}.service > /dev/null 2>&1 || (
|
||||
/bin/systemctl preset salt-${fname}.service > /dev/null 2>&1 &&
|
||||
/bin/systemctl enable salt-${fname}.service > /dev/null 2>&1
|
||||
)
|
||||
|
||||
SYSTEMD_RELOAD=$BS_TRUE
|
||||
elif [ -f "/etc/init.d/salt-${fname}" ]; then
|
||||
/sbin/chkconfig salt-${fname} on
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$SYSTEMD_RELOAD" -eq $BS_TRUE ]; then
|
||||
/bin/systemctl daemon-reload
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_centos_restart_daemons() {
|
||||
[ $_START_DAEMONS -eq $BS_FALSE ] && return
|
||||
|
||||
|
@ -4583,6 +5003,11 @@ install_red_hat_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_linux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_stable_deps() {
|
||||
install_red_hat_linux_stable_deps || return 1
|
||||
return 0
|
||||
|
@ -4593,6 +5018,11 @@ install_red_hat_enterprise_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_onedir_deps() {
|
||||
install_red_hat_linux_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_linux_stable_deps() {
|
||||
install_red_hat_linux_stable_deps || return 1
|
||||
return 0
|
||||
|
@ -4603,6 +5033,11 @@ install_red_hat_enterprise_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_linux_onedir_deps() {
|
||||
install_red_hat_linux_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_server_stable_deps() {
|
||||
install_red_hat_linux_stable_deps || return 1
|
||||
return 0
|
||||
|
@ -4613,6 +5048,11 @@ install_red_hat_enterprise_server_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_server_onedir_deps() {
|
||||
install_red_hat_linux_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_workstation_stable_deps() {
|
||||
install_red_hat_linux_stable_deps || return 1
|
||||
return 0
|
||||
|
@ -4623,6 +5063,11 @@ install_red_hat_enterprise_workstation_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_workstation_onedir_deps() {
|
||||
install_red_hat_linux_timat_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_linux_stable() {
|
||||
install_centos_stable || return 1
|
||||
return 0
|
||||
|
@ -4633,6 +5078,11 @@ install_red_hat_linux_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_linux_onedir() {
|
||||
install_centos_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_stable() {
|
||||
install_red_hat_linux_stable || return 1
|
||||
return 0
|
||||
|
@ -4643,6 +5093,11 @@ install_red_hat_enterprise_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_onedir() {
|
||||
install_red_hat_linux_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_linux_stable() {
|
||||
install_red_hat_linux_stable || return 1
|
||||
return 0
|
||||
|
@ -4653,6 +5108,11 @@ install_red_hat_enterprise_linux_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_linux_onedir() {
|
||||
install_red_hat_linux_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_server_stable() {
|
||||
install_red_hat_linux_stable || return 1
|
||||
return 0
|
||||
|
@ -4663,6 +5123,11 @@ install_red_hat_enterprise_server_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_server_onedir() {
|
||||
install_red_hat_linux_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_workstation_stable() {
|
||||
install_red_hat_linux_stable || return 1
|
||||
return 0
|
||||
|
@ -4673,6 +5138,11 @@ install_red_hat_enterprise_workstation_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_enterprise_workstation_onedir() {
|
||||
install_red_hat_linux_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_red_hat_linux_stable_post() {
|
||||
install_centos_stable_post || return 1
|
||||
return 0
|
||||
|
@ -4826,6 +5296,11 @@ install_oracle_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_oracle_linux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_oracle_linux_testing_deps() {
|
||||
install_centos_testing_deps || return 1
|
||||
return 0
|
||||
|
@ -4841,6 +5316,11 @@ install_oracle_linux_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_oracle_linux_onedir() {
|
||||
install_centos_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_oracle_linux_testing() {
|
||||
install_centos_testing || return 1
|
||||
return 0
|
||||
|
@ -4889,6 +5369,11 @@ install_almalinux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_almalinux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_almalinux_testing_deps() {
|
||||
install_centos_testing_deps || return 1
|
||||
return 0
|
||||
|
@ -4904,6 +5389,11 @@ install_almalinux_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_almalinux_onedir() {
|
||||
install_centos_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_almalinux_testing() {
|
||||
install_centos_testing || return 1
|
||||
return 0
|
||||
|
@ -4952,6 +5442,11 @@ install_rocky_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_rocky_linux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_rocky_linux_testing_deps() {
|
||||
install_centos_testing_deps || return 1
|
||||
return 0
|
||||
|
@ -4962,6 +5457,11 @@ install_rocky_linux_stable() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_rocky_linux_onedir() {
|
||||
install_centos_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_rocky_linux_git() {
|
||||
install_centos_git || return 1
|
||||
return 0
|
||||
|
@ -5015,6 +5515,11 @@ install_scientific_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_scientific_linux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_scientific_linux_testing_deps() {
|
||||
install_centos_testing_deps || return 1
|
||||
return 0
|
||||
|
@ -5030,6 +5535,11 @@ install_scientific_linux_git() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_scientific_linux_onedir() {
|
||||
install_centos_onedir || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_scientific_linux_testing() {
|
||||
install_centos_testing || return 1
|
||||
return 0
|
||||
|
@ -5078,6 +5588,11 @@ install_cloud_linux_git_deps() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_cloud_linux_onedir_deps() {
|
||||
install_centos_onedir_deps || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_cloud_linux_testing_deps() {
|
||||
install_centos_testing_deps || return 1
|
||||
return 0
|
||||
|
@ -5642,6 +6157,92 @@ _eof
|
|||
fi
|
||||
}
|
||||
|
||||
install_amazon_linux_ami_2_onedir_deps() {
|
||||
# Shim to figure out if we're using old (rhel) or new (aws) rpms.
|
||||
_USEAWS=$BS_FALSE
|
||||
pkg_append="python"
|
||||
|
||||
if [ "$ITYPE" = "onedir" ]; then
|
||||
repo_rev="$ONEDIR_REV"
|
||||
else
|
||||
repo_rev="latest"
|
||||
fi
|
||||
|
||||
if echo $repo_rev | grep -E -q '^archive'; then
|
||||
year=$(echo "$repo_rev" | cut -d '/' -f 2 | cut -c1-4)
|
||||
else
|
||||
year=$(echo "$repo_rev" | cut -c1-4)
|
||||
fi
|
||||
|
||||
# We need to install yum-utils before doing anything else when installing on
|
||||
# Amazon Linux ECS-optimized images. See issue #974.
|
||||
__yum_install_noinput yum-utils
|
||||
|
||||
# Do upgrade early
|
||||
if [ "$_UPGRADE_SYS" -eq $BS_TRUE ]; then
|
||||
yum -y update || return 1
|
||||
fi
|
||||
|
||||
if [ $_DISABLE_REPOS -eq $BS_FALSE ] || [ "$_CUSTOM_REPO_URL" != "null" ]; then
|
||||
__REPO_FILENAME="salt.repo"
|
||||
__PY_VERSION_REPO="yum"
|
||||
PY_PKG_VER=""
|
||||
repo_label="saltstack-repo"
|
||||
repo_name="SaltStack repo for Amazon Linux 2"
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
__REPO_FILENAME="salt.repo"
|
||||
__PY_VERSION_REPO="py3"
|
||||
PY_PKG_VER=3
|
||||
repo_label="saltstack-py3-repo"
|
||||
repo_name="SaltStack Python 3 repo for Amazon Linux 2"
|
||||
fi
|
||||
|
||||
base_url="$HTTP_VAL://${_REPO_URL}/${_ONEDIR_DIR}/${__PY_VERSION_REPO}/amazon/2/\$basearch/$repo_rev/"
|
||||
gpg_key="${base_url}SALTSTACK-GPG-KEY.pub,${base_url}base/RPM-GPG-KEY-CentOS-7"
|
||||
if [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
|
||||
gpg_key="${base_url}SALTSTACK-GPG-KEY.pub"
|
||||
fi
|
||||
|
||||
# This should prob be refactored to use __install_saltstack_rhel_repository()
|
||||
# With args passed in to do the right thing. Reformatted to be more like the
|
||||
# amazon linux yum file.
|
||||
if [ ! -s "/etc/yum.repos.d/${__REPO_FILENAME}" ]; then
|
||||
cat <<_eof > "/etc/yum.repos.d/${__REPO_FILENAME}"
|
||||
[$repo_label]
|
||||
name=$repo_name
|
||||
failovermethod=priority
|
||||
priority=10
|
||||
gpgcheck=1
|
||||
gpgkey=$gpg_key
|
||||
baseurl=$base_url
|
||||
_eof
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if [ "${_POST_NEON_INSTALL}" -eq $BS_FALSE ]; then
|
||||
# Package python-ordereddict-1.1-2.el6.noarch is obsoleted by python26-2.6.9-2.88.amzn1.x86_64
|
||||
# which is already installed
|
||||
if [ -n "${PY_PKG_VER}" ] && [ "${PY_PKG_VER}" -eq 3 ]; then
|
||||
__PACKAGES="${pkg_append}${PY_PKG_VER}-m2crypto ${pkg_append}${PY_PKG_VER}-pyyaml"
|
||||
else
|
||||
__PACKAGES="m2crypto PyYAML ${pkg_append}-futures"
|
||||
fi
|
||||
|
||||
__PACKAGES="${__PACKAGES} ${pkg_append}${PY_PKG_VER}-crypto ${pkg_append}${PY_PKG_VER}-jinja2 procps-ng"
|
||||
__PACKAGES="${__PACKAGES} ${pkg_append}${PY_PKG_VER}-msgpack ${pkg_append}${PY_PKG_VER}-requests ${pkg_append}${PY_PKG_VER}-zmq"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
__yum_install_noinput ${__PACKAGES} || return 1
|
||||
fi
|
||||
|
||||
if [ "${_EXTRA_PACKAGES}" != "" ]; then
|
||||
echoinfo "Installing the following extra packages as requested: ${_EXTRA_PACKAGES}"
|
||||
# shellcheck disable=SC2086
|
||||
__yum_install_noinput ${_EXTRA_PACKAGES} || return 1
|
||||
fi
|
||||
}
|
||||
|
||||
install_amazon_linux_ami_stable() {
|
||||
install_centos_stable || return 1
|
||||
return 0
|
||||
|
@ -5717,6 +6318,16 @@ install_amazon_linux_ami_2_check_services() {
|
|||
return 0
|
||||
}
|
||||
|
||||
install_amazon_linux_ami_2_onedir() {
|
||||
install_centos_stable || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
install_amazon_linux_ami_2_onedir_post() {
|
||||
install_centos_stable_post || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
#
|
||||
# Ended Amazon Linux AMI Install Functions
|
||||
#
|
||||
|
@ -5983,15 +6594,15 @@ install_freebsd_git_deps() {
|
|||
|
||||
if [ "${_POST_NEON_INSTALL}" -eq $BS_FALSE ]; then
|
||||
|
||||
SALT_DEPENDENCIES=$(/usr/local/sbin/pkg rquery %dn py38-salt)
|
||||
SALT_DEPENDENCIES=$(/usr/local/sbin/pkg rquery %dn py39-salt)
|
||||
# shellcheck disable=SC2086
|
||||
/usr/local/sbin/pkg install -y ${SALT_DEPENDENCIES} python || return 1
|
||||
|
||||
/usr/local/sbin/pkg install -y py38-requests || return 1
|
||||
/usr/local/sbin/pkg install -y py38-tornado4 || return 1
|
||||
/usr/local/sbin/pkg install -y py39-requests || return 1
|
||||
/usr/local/sbin/pkg install -y py39-tornado4 || return 1
|
||||
|
||||
else
|
||||
/usr/local/sbin/pkg install -y python py38-pip py38-setuptools libzmq4 libunwind || return 1
|
||||
/usr/local/sbin/pkg install -y python py39-pip py39-setuptools libzmq4 libunwind || return 1
|
||||
fi
|
||||
|
||||
echodebug "Adapting paths to FreeBSD"
|
||||
|
@ -6037,7 +6648,7 @@ install_freebsd_stable() {
|
|||
# installing latest version of salt from FreeBSD CURRENT ports repo
|
||||
#
|
||||
# shellcheck disable=SC2086
|
||||
/usr/local/sbin/pkg install -y py38-salt || return 1
|
||||
/usr/local/sbin/pkg install -y py39-salt || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
@ -6463,6 +7074,8 @@ __set_suse_pkg_repo() {
|
|||
# Set distro repo variable
|
||||
if [ "${DISTRO_MAJOR_VERSION}" -gt 2015 ]; then
|
||||
DISTRO_REPO="openSUSE_Tumbleweed"
|
||||
elif [ "${DISTRO_MAJOR_VERSION}" -eq 15 ] && [ "${DISTRO_MINOR_VERSION}" -ge 4 ]; then
|
||||
DISTRO_REPO="${DISTRO_MAJOR_VERSION}.${DISTRO_MINOR_VERSION}"
|
||||
elif [ "${DISTRO_MAJOR_VERSION}" -ge 42 ] || [ "${DISTRO_MAJOR_VERSION}" -eq 15 ]; then
|
||||
DISTRO_REPO="openSUSE_Leap_${DISTRO_MAJOR_VERSION}.${DISTRO_MINOR_VERSION}"
|
||||
else
|
||||
|
@ -6612,7 +7225,7 @@ install_opensuse_git_deps() {
|
|||
fi
|
||||
# Check for Tumbleweed
|
||||
elif [ "${DISTRO_MAJOR_VERSION}" -ge 20210101 ]; then
|
||||
__PACKAGES="python3-pip"
|
||||
__PACKAGES="python3-pip gcc-c++ python310-pyzmq-devel"
|
||||
else
|
||||
__PACKAGES="python-pip python-setuptools gcc"
|
||||
fi
|
||||
|
@ -7916,6 +8529,39 @@ preseed_master() {
|
|||
#
|
||||
#######################################################################################################################
|
||||
|
||||
#######################################################################################################################
|
||||
#
|
||||
# This function checks if all of the installed daemons are running or not.
|
||||
#
|
||||
daemons_running_onedir() {
|
||||
[ "$_START_DAEMONS" -eq $BS_FALSE ] && return 0
|
||||
|
||||
FAILED_DAEMONS=0
|
||||
for fname in api master minion syndic; do
|
||||
# Skip salt-api since the service should be opt-in and not necessarily started on boot
|
||||
[ $fname = "api" ] && continue
|
||||
|
||||
# Skip if not meant to be installed
|
||||
[ $fname = "minion" ] && [ "$_INSTALL_MINION" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "master" ] && [ "$_INSTALL_MASTER" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "syndic" ] && [ "$_INSTALL_SYNDIC" -eq $BS_FALSE ] && continue
|
||||
|
||||
salt_path="/opt/saltstack/salt/run/run ${fname}"
|
||||
process_running=$(pgrep -f "${salt_path}")
|
||||
if [ "${process_running}" = "" ]; then
|
||||
echoerror "${salt_path} was not found running"
|
||||
FAILED_DAEMONS=$((FAILED_DAEMONS + 1))
|
||||
fi
|
||||
done
|
||||
|
||||
return $FAILED_DAEMONS
|
||||
}
|
||||
|
||||
#
|
||||
# Ended daemons running check function
|
||||
#
|
||||
#######################################################################################################################
|
||||
|
||||
#######################################################################################################################
|
||||
#
|
||||
# This function checks if all of the installed daemons are running or not.
|
||||
|
@ -8016,6 +8662,7 @@ echodebug "PRESEED_MASTER_FUNC=${PRESEED_MASTER_FUNC}"
|
|||
INSTALL_FUNC_NAMES="install_${DISTRO_NAME_L}${PREFIXED_DISTRO_MAJOR_VERSION}_${ITYPE}"
|
||||
INSTALL_FUNC_NAMES="$INSTALL_FUNC_NAMES install_${DISTRO_NAME_L}${PREFIXED_DISTRO_MAJOR_VERSION}${PREFIXED_DISTRO_MINOR_VERSION}_${ITYPE}"
|
||||
INSTALL_FUNC_NAMES="$INSTALL_FUNC_NAMES install_${DISTRO_NAME_L}_${ITYPE}"
|
||||
echodebug "INSTALL_FUNC_NAMES=${INSTALL_FUNC_NAMES}"
|
||||
|
||||
INSTALL_FUNC="null"
|
||||
for FUNC_NAME in $(__strip_duplicates "$INSTALL_FUNC_NAMES"); do
|
||||
|
@ -8067,6 +8714,7 @@ DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running_${DISTRO
|
|||
DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running_${DISTRO_NAME_L}${PREFIXED_DISTRO_MAJOR_VERSION}${PREFIXED_DISTRO_MINOR_VERSION}"
|
||||
DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running_${DISTRO_NAME_L}_${ITYPE}"
|
||||
DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running_${DISTRO_NAME_L}"
|
||||
DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running_${ITYPE}"
|
||||
DAEMONS_RUNNING_FUNC_NAMES="$DAEMONS_RUNNING_FUNC_NAMES daemons_running"
|
||||
|
||||
DAEMONS_RUNNING_FUNC="null"
|
||||
|
|
|
@ -27,9 +27,9 @@ provisioner:
|
|||
sudo: true
|
||||
|
||||
platforms:
|
||||
- name: freebsd-130
|
||||
- name: freebsd-131
|
||||
driver:
|
||||
box: bento/freebsd-13.0
|
||||
box: bento/freebsd-13.1
|
||||
- name: freebsd-123
|
||||
driver:
|
||||
box: bento/freebsd-12.3
|
|
@ -19,6 +19,7 @@ platforms:
|
|||
- name: macos-1015
|
||||
|
||||
suites:
|
||||
<<<<<<< HEAD
|
||||
- name: py3-stable-3002
|
||||
provisioner:
|
||||
salt_version: 3002.8
|
||||
|
@ -26,6 +27,12 @@ suites:
|
|||
provisioner:
|
||||
salt_version: 3003.4
|
||||
- name: py3-stable-3004
|
||||
=======
|
||||
- name: stable-3003
|
||||
provisioner:
|
||||
salt_version: 3003.4
|
||||
- name: stable-3004
|
||||
>>>>>>> origin/develop
|
||||
provisioner:
|
||||
salt_version: 3004.1
|
||||
- name: latest
|
||||
|
|
|
@ -17,13 +17,10 @@ platforms:
|
|||
- name: windows-2019
|
||||
|
||||
suites:
|
||||
- name: py3-stable-3002
|
||||
provisioner:
|
||||
salt_version: 3002.8-1
|
||||
- name: py3-stable-3003
|
||||
- name: stable-3003
|
||||
provisioner:
|
||||
salt_version: 3003.4-1
|
||||
- name: py3-stable-3004
|
||||
- name: stable-3004
|
||||
provisioner:
|
||||
salt_version: 3004.1-1
|
||||
- name: latest
|
||||
|
|
45
kitchen.yml
45
kitchen.yml
|
@ -57,14 +57,11 @@ platforms:
|
|||
driver:
|
||||
image: debian:bullseye
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: fedora-34
|
||||
- name: fedora-35
|
||||
driver:
|
||||
provision_command: &fedora_provision_command
|
||||
- dnf -y install procps-ng crypto-policies-scripts
|
||||
- update-crypto-policies --set LEGACY
|
||||
- name: fedora-35
|
||||
driver:
|
||||
provision_command: *fedora_provision_command
|
||||
- name: fedora-36
|
||||
driver:
|
||||
provision_command: *fedora_provision_command
|
||||
|
@ -84,7 +81,7 @@ platforms:
|
|||
- echo "PubkeyAcceptedAlgorithms +ssh-rsa" | tee -a /etc/ssh/sshd_config
|
||||
- name: opensuse-15
|
||||
driver:
|
||||
image: opensuse/leap:15.3
|
||||
image: opensuse/leap:15.4
|
||||
provision_command:
|
||||
- &opensuse_provision_command_01 zypper --non-interactive install --auto-agree-with-licenses dbus-1
|
||||
- &opensuse_provision_command_02 zypper --non-interactive install --auto-agree-with-licenses sudo openssh which curl systemd
|
||||
|
@ -116,22 +113,14 @@ platforms:
|
|||
run_command: /lib/systemd/systemd
|
||||
|
||||
suites:
|
||||
- name: py3-git-3002
|
||||
provisioner:
|
||||
salt_version: 3002
|
||||
salt_bootstrap_options: -x python3 -MPfq git %s
|
||||
- name: py3-git-3003
|
||||
- name: git-3003
|
||||
provisioner:
|
||||
salt_version: 3003
|
||||
salt_bootstrap_options: -x python3 -MPfq git %s
|
||||
- name: py3-git-3004
|
||||
- name: git-3004
|
||||
provisioner:
|
||||
salt_version: 3004
|
||||
salt_bootstrap_options: -x python3 -MPfq git %s
|
||||
- name: py3-stable-3002-0
|
||||
provisioner:
|
||||
salt_version: 3002
|
||||
salt_bootstrap_options: -x python3 -MP stable 3002.0
|
||||
excludes:
|
||||
- opensuse-15
|
||||
- opensuse-tumbleweed
|
||||
|
@ -139,10 +128,10 @@ suites:
|
|||
- arch
|
||||
- gentoo
|
||||
- gentoo-systemd
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-stable-3003-0
|
||||
- name: stable-3003-0
|
||||
provisioner:
|
||||
salt_version: 3003
|
||||
salt_bootstrap_options: -x python3 -MP stable 3003.0
|
||||
|
@ -152,21 +141,17 @@ suites:
|
|||
- arch
|
||||
- gentoo
|
||||
- gentoo-systemd
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-stable-3002
|
||||
provisioner:
|
||||
salt_version: 3002
|
||||
salt_bootstrap_options: -x python3 -MP stable %s
|
||||
excludes:
|
||||
- opensuse-15
|
||||
- opensuse-tumbleweed
|
||||
- arch
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-stable-3003
|
||||
- name: stable-3003
|
||||
provisioner:
|
||||
salt_version: 3003
|
||||
salt_bootstrap_options: -x python3 -MP stable %s
|
||||
|
@ -174,10 +159,10 @@ suites:
|
|||
- opensuse-15
|
||||
- opensuse-tumbleweed
|
||||
- arch
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-stable-3004-0
|
||||
- name: stable-3004-0
|
||||
provisioner:
|
||||
salt_version: 3004
|
||||
salt_bootstrap_options: -x python3 -MP stable 3004.0
|
||||
|
@ -187,10 +172,10 @@ suites:
|
|||
- arch
|
||||
- gentoo
|
||||
- gentoo-systemd
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-stable-3004
|
||||
- name: stable-3004
|
||||
provisioner:
|
||||
salt_version: 3004
|
||||
salt_bootstrap_options: -x python3 -MP stable %s
|
||||
|
@ -198,10 +183,10 @@ suites:
|
|||
- opensuse-15
|
||||
- opensuse-tumbleweed
|
||||
- arch
|
||||
- freebsd-130
|
||||
- freebsd-131
|
||||
- freebsd-123
|
||||
- openbsd-6
|
||||
- name: py3-git-master
|
||||
- name: git-master
|
||||
provisioner:
|
||||
salt_version: master
|
||||
salt_bootstrap_options: -x python3 -MPfq -D git %s
|
||||
|
|
|
@ -9,7 +9,10 @@ log = logging.getLogger(__name__)
|
|||
|
||||
@pytest.fixture(scope="session")
|
||||
def host():
|
||||
if os.environ.get("RUNNER_OS", "") == "macOS":
|
||||
if (
|
||||
os.environ.get("RUNNER_OS", "") == "macOS"
|
||||
and os.environ.get("KITCHEN_LOCAL_YAML", "") == "kitchen.macos.yml"
|
||||
):
|
||||
# Adjust the `PATH` so that the `salt-call` executable can be found
|
||||
os.environ["PATH"] = "/opt/salt/bin{}{}".format(os.pathsep, os.environ["PATH"])
|
||||
return testinfra.get_host("local://", sudo=True)
|
||||
|
@ -37,12 +40,7 @@ def host():
|
|||
|
||||
@pytest.fixture(scope="session")
|
||||
def target_python_version():
|
||||
target_python = os.environ["KITCHEN_SUITE"].split("-", 1)[0]
|
||||
if target_python == "latest":
|
||||
pytest.skip(
|
||||
"Unable to get target python from {}".format(os.environ["KITCHEN_SUITE"])
|
||||
)
|
||||
return int(target_python.replace("py", ""))
|
||||
return 3
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
|
|
|
@ -1,9 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
import json
|
||||
import os
|
||||
import pytest
|
||||
import logging
|
||||
import pprint
|
||||
from contextlib import nullcontext
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
|
Loading…
Add table
Reference in a new issue