From f0a4e9f7aeca058d6145cf76fafe273df7424d1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 07:59:31 +0200 Subject: [PATCH 01/21] feat: Change Docker base image to ubuntu:jammy-20220531 --- CHANGELOG.md | 4 ++++ Dockerfile | 2 +- README.md | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 13379848..6a7fc5ef 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ This file only reflects the changes that are made in this image. Please refer to the [Salt 3004.2 Release Notes](https://docs.saltstack.com/en/latest/topics/releases/3004.2.html) for the list of changes in SaltStack. +**3004.2_1** + +- Change Docker base image to `ubuntu:jammy-20220531` + **3004.2** - Upgrade `salt-master` to `3004.2` *Silicon* diff --git a/Dockerfile b/Dockerfile index 8894ac3a..bf993e75 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:hirsute-20220113 +FROM ubuntu:jammy-20220531 ARG BUILD_DATE ARG VCS_REF diff --git a/README.md b/README.md index f323563b..23135ad8 100644 --- a/README.md +++ b/README.md @@ -595,7 +595,7 @@ Where `salt-service` is one of: `salt-master` os `salt-api` (if `SALT_API_SERVIC [saltproject_badge]: https://img.shields.io/badge/Salt-v3004.2-lightgrey.svg?logo=Saltstack [saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3004.2.html "Salt Project Release Notes" -[ubuntu_badge]: https://img.shields.io/badge/ubuntu-hirsute--20220113-E95420.svg?logo=Ubuntu +[ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220531-E95420.svg?logo=Ubuntu [ubuntu_hub_docker]: https://hub.docker.com/_/ubuntu/ "Ubuntu Image" [github_publish_badge]: https://img.shields.io/github/workflow/status/cdalvaro/docker-salt-master/Publish%20Docker%20image?label=build&logo=GitHub&logoColor=%23181717 [github_publish_workflow]: https://github.com/cdalvaro/docker-salt-master/actions?query=workflow%3A%22Publish+Docker+image%22 From 0f5fcbf36d5bae09d8b9d9ed1fb4add08a212020 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 08:00:46 +0200 Subject: [PATCH 02/21] feat: Upgrade Python to version 3.10 --- CHANGELOG.md | 1 + Dockerfile | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6a7fc5ef..45598244 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ for the list of changes in SaltStack. **3004.2_1** - Change Docker base image to `ubuntu:jammy-20220531` +- Upgrade Python to version `3.10` **3004.2** diff --git a/Dockerfile b/Dockerfile index bf993e75..6861c61a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,7 +6,7 @@ ARG VCS_REF # https://github.com/saltstack/salt/releases # NOTE: Review org.label-schema.version label if necessary ENV SALT_VERSION="3004.2" \ - PYTHON_VERSION="3.9" + PYTHON_VERSION="3.10" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ SALT_ROOT_DIR="/etc/salt" \ From 5ad70b84494593e8aaf51bfc59323cdd2bbf1325 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 08:01:35 +0200 Subject: [PATCH 03/21] feat: Install python3-pygit2 version 1.6.1 from Ubuntu repositories --- CHANGELOG.md | 1 + assets/build/install.sh | 10 +++------- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 45598244..6f0c348e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ for the list of changes in SaltStack. - Change Docker base image to `ubuntu:jammy-20220531` - Upgrade Python to version `3.10` +- Install `python3-pygit2` version `1.6.1` from Ubuntu repositories **3004.2** diff --git a/assets/build/install.sh b/assets/build/install.sh index ab952c80..b7cb0cb6 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -10,7 +10,7 @@ source "${FUNCTIONS_FILE}" log_info "Installing required packages and build dependencies ..." REQUIRED_PACKAGES=( - libssl1.1 zlib1g libffi7 libpcre3 libgssapi3-heimdal + libssl3 zlib1g libffi7 libpcre3 libgssapi3-heimdal ) BUILD_DEPENDENCIES=( @@ -35,15 +35,11 @@ log_info "Installing python3 packages ..." install_pkgs --quiet \ python3-mako python3-pycryptodome python3-cherrypy3 \ python3-git python3-requests python3-redis python3-gnupg \ - python3-mysqldb python3-dateutil python3-libnacl python3-openssl + python3-mysqldb python3-dateutil python3-libnacl python3-openssl \ + python3-pygit2 pip3 install timelib==0.2.5 -# Install pygit2 package -install_libssh2 -install_libgit2 -pip3 install cached-property cffi==1.14.6 pygit2==1.9.1 - # Downloading bootstrap-salt.sh script BOOTSTRAP_VERSION='2022.03.15' BOOTSTRAP_URL="https://raw.githubusercontent.com/saltstack/salt-bootstrap/v${BOOTSTRAP_VERSION}/bootstrap-salt.sh" From 753b021351ce94393c7fb581032061c767289061 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 09:44:00 +0200 Subject: [PATCH 04/21] feat: Remove install_libssh2 function --- assets/build/functions.sh | 35 ----------------------------------- 1 file changed, 35 deletions(-) diff --git a/assets/build/functions.sh b/assets/build/functions.sh index 8568c4d9..8a03cfd9 100755 --- a/assets/build/functions.sh +++ b/assets/build/functions.sh @@ -161,41 +161,6 @@ function build_and_install() cmake --build . --target install --config Release } -#--- FUNCTION ------------------------------------------------------------------------------------------------------- -# NAME: install_libssh2 -# DESCRIPTION: Install libssh2 library. -#---------------------------------------------------------------------------------------------------------------------- -function install_libssh2() -{ - local LIBSSH2_VERSION=1.10.0 - local LIBSSH2_URL="https://github.com/libssh2/libssh2/releases/download/libssh2-${LIBSSH2_VERSION}/libssh2-${LIBSSH2_VERSION}.tar.gz" - local FILE_NAME="libssh2-${LIBSSH2_VERSION}.tar.gz" - local SHA256_SUM='2d64e90f3ded394b91d3a2e774ca203a4179f69aebee03003e5a6fa621e41d51' - - local CURRENT_DIR="$(pwd)" - local WORK_DIR="$(mktemp -d)" && cd "${WORK_DIR}" - - download "${LIBSSH2_URL}" "${FILE_NAME}" - check_sha256 "${FILE_NAME}" "${SHA256_SUM}" - extract "${FILE_NAME}" - - _OPTS=( - -DLINT=OFF - -DBUILD_SHARED_LIBS=ON - -DCRYPTO_BACKEND=OpenSSL - -DENABLE_ZLIB_COMPRESSION=ON - -DENABLE_DEBUG_LOGGING=OFF - -DCLEAR_MEMORY=ON - -DBUILD_EXAMPLES=OFF - -DBUILD_TESTING=OFF - ) - - build_and_install "libssh2 v${LIBSSH2_VERSION}" ${_OPTS[@]} - - cd "${CURRENT_DIR}" - rm -rf "${WORK_DIR}" -} - #--- FUNCTION ------------------------------------------------------------------------------------------------------- # NAME: install_libgit2 # DESCRIPTION: Install libgit2 library. From 4f1e059fa612c52b0f039d4ab52c1afba4eb114d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 09:45:23 +0200 Subject: [PATCH 05/21] feat: Remove install_libgit2 function --- assets/build/functions.sh | 32 -------------------------------- 1 file changed, 32 deletions(-) diff --git a/assets/build/functions.sh b/assets/build/functions.sh index 8a03cfd9..3f5e1f3e 100755 --- a/assets/build/functions.sh +++ b/assets/build/functions.sh @@ -160,35 +160,3 @@ function build_and_install() cmake ${CMAKE_ARGS[@]} . cmake --build . --target install --config Release } - -#--- FUNCTION ------------------------------------------------------------------------------------------------------- -# NAME: install_libgit2 -# DESCRIPTION: Install libgit2 library. -#---------------------------------------------------------------------------------------------------------------------- -function install_libgit2() -{ - local LIBGIT2_VERSION=1.4.2 - local LIBGIT2_URL="https://github.com/libgit2/libgit2/archive/refs/tags/v${LIBGIT2_VERSION}.tar.gz" - local FILE_NAME="libgit2-${LIBGIT2_VERSION}.tar.gz" - local SHA256_SUM='901c2b4492976b86477569502a41c31b274b69adc177149c02099ea88404ef19' - - local CURRENT_DIR="$(pwd)" - local WORK_DIR="$(mktemp -d)" && cd "${WORK_DIR}" - - download "${LIBGIT2_URL}" "${FILE_NAME}" - check_sha256 "${FILE_NAME}" "${SHA256_SUM}" - extract "${FILE_NAME}" - - _OPTS=( - -DBUILD_SHARED_LIBS=ON - -DUSE_SSH=ON - -DUSE_THREADS=ON - -DBUILD_EXAMPLES=OFF - -DBUILD_TESTS=OFF - ) - - build_and_install "libgit2 v${LIBGIT2_VERSION}" ${_OPTS[@]} - - cd "${CURRENT_DIR}" - rm -rf "${WORK_DIR}" -} From 6f1891cff8eba28fa2b007887cf94aa05346dda3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Wed, 22 Jun 2022 09:59:41 +0200 Subject: [PATCH 06/21] feat: Remove build_and_install function --- assets/build/functions.sh | 21 --------------------- assets/build/install.sh | 3 +-- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/assets/build/functions.sh b/assets/build/functions.sh index 3f5e1f3e..7e79d6aa 100755 --- a/assets/build/functions.sh +++ b/assets/build/functions.sh @@ -139,24 +139,3 @@ function extract() log_info "Unpacking file: ${FILE}" tar xzf "${FILE}" --strip-components 1 } - -#--- FUNCTION ------------------------------------------------------------------------------------------------------- -# NAME: build_and_install -# DESCRIPTION: Build and install the given package from the current directory using cmake. -#---------------------------------------------------------------------------------------------------------------------- -function build_and_install() -{ - local PACKAGE_NAME="${1}"; shift - local CMAKE_ARGS=( - -Wno-dev - -DCMAKE_BUILD_TYPE=Release - ) - - # shellcheck disable=SC2206 - CMAKE_ARGS+=( $@ ) - - log_info "Building and installing ${PACKAGE_NAME} ..." - log_debug "CMAKE_ARGS: ${CMAKE_ARGS[@]}" - cmake ${CMAKE_ARGS[@]} . - cmake --build . --target install --config Release -} diff --git a/assets/build/install.sh b/assets/build/install.sh index b7cb0cb6..bdda8d2a 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -14,8 +14,7 @@ REQUIRED_PACKAGES=( ) BUILD_DEPENDENCIES=( - make gcc g++ cmake pkg-config libssl-dev zlib1g-dev libffi-dev - libpcre3-dev heimdal-dev + make gcc g++ ) apt-get update From b71f27c6e7606d23275f719fd535fd1f7dcc7849 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 19 Jul 2022 07:32:30 +0200 Subject: [PATCH 07/21] Upgrade salt-master to 3005rc1 Silicon --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- CHANGELOG.md | 5 +++-- Dockerfile | 2 +- README.md | 8 ++++---- VERSION | 2 +- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index a87a88c0..0d859dd3 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -26,7 +26,7 @@ The full log with the outputted error. **Version report (please complete the following information):** - Host OS: [e.g. `uname -a`] - Docker: [e.g. `docker --version`] - - Image tag: [e.g. `3004.2`] + - Image tag: [e.g. `3005rc1`] **Additional context** Add any other context about the problem here. diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f0c348e..8176013c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,12 @@ # Changelog This file only reflects the changes that are made in this image. -Please refer to the [Salt 3004.2 Release Notes](https://docs.saltstack.com/en/latest/topics/releases/3004.2.html) +Please refer to the [Salt 3005 Release Notes](https://docs.saltstack.com/en/latest/topics/releases/3005.html) for the list of changes in SaltStack. -**3004.2_1** +**3005** +- Upgrade `salt-master` to `3005` *Phosphorus* - Change Docker base image to `ubuntu:jammy-20220531` - Upgrade Python to version `3.10` - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories diff --git a/Dockerfile b/Dockerfile index 6861c61a..3e0db21c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,7 @@ ARG VCS_REF # https://github.com/saltstack/salt/releases # NOTE: Review org.label-schema.version label if necessary -ENV SALT_VERSION="3004.2" \ +ENV SALT_VERSION="3005rc1" \ PYTHON_VERSION="3.10" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ diff --git a/README.md b/README.md index 23135ad8..04df47de 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ [![Architecture ARM64][arch_arm64_badge]][arch_link] [![Architecture ARM/v7][arch_arm_badge]][arch_link] -# Dockerized Salt Master v3004.2 _Silicon_ +# Dockerized Salt Master v3005 _Phosphorus_ Dockerfile to build a [Salt Project](https://saltproject.io) Master image for the Docker opensource container platform. @@ -46,7 +46,7 @@ For other methods to install `salt-master` please refer to the [Official Salt Pr Automated builds of the image are available on [Dockerhub](https://hub.docker.com/r/cdalvaro/docker-salt-master/) and is the recommended method of installation. ```sh -docker pull cdalvaro/docker-salt-master:3004.2 +docker pull cdalvaro/docker-salt-master:3005rc1 ``` You can also pull the latest tag which is built from the repository `HEAD` @@ -593,8 +593,8 @@ Where `salt-service` is one of: `salt-master` os `salt-api` (if `SALT_API_SERVIC - https://docs.saltproject.io/en/getstarted/ - https://docs.saltproject.io/en/latest/contents.html -[saltproject_badge]: https://img.shields.io/badge/Salt-v3004.2-lightgrey.svg?logo=Saltstack -[saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3004.2.html "Salt Project Release Notes" +[saltproject_badge]: https://img.shields.io/badge/Salt-v3005rc1-lightgrey.svg?logo=Saltstack +[saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3005rc1.html "Salt Project Release Notes" [ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220531-E95420.svg?logo=Ubuntu [ubuntu_hub_docker]: https://hub.docker.com/_/ubuntu/ "Ubuntu Image" [github_publish_badge]: https://img.shields.io/github/workflow/status/cdalvaro/docker-salt-master/Publish%20Docker%20image?label=build&logo=GitHub&logoColor=%23181717 diff --git a/VERSION b/VERSION index c15006ad..501efb32 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3004.2 +3005rc1 From 157cc86e5de0a6d2ec2cc114d6b2d809f1ec5b58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 19 Jul 2022 07:43:28 +0200 Subject: [PATCH 08/21] feat(tests): Update basic tests --- tests/basic/test.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/basic/test.sh b/tests/basic/test.sh index e7e3aae0..f941d507 100755 --- a/tests/basic/test.sh +++ b/tests/basic/test.sh @@ -19,10 +19,10 @@ start_container_and_wait || error "container started" ok "container started" # Check salt version -echo "==> Checking salt version ..." -docker-exec salt --versions -[[ "$(docker-exec salt --version)" == "salt $(cat VERSION)" ]] || error "salt version" -ok "salt version" +echo "==> Checking salt-master version ..." +docker-exec salt-master --versions +[[ "$(docker-exec salt-master --version)" == "salt-master $(cat VERSION)" ]] || error "salt-master version" +ok "salt-master version" # Test image calling healthcheck echo "==> Executing healthcheck ..." From f3d7d8a080f98657144cf56ad7b4f1fef451f452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 19 Jul 2022 10:50:29 +0200 Subject: [PATCH 09/21] feat: Do not install timelib manually --- assets/build/install.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/assets/build/install.sh b/assets/build/install.sh index bdda8d2a..f3f2e155 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -37,8 +37,6 @@ install_pkgs --quiet \ python3-mysqldb python3-dateutil python3-libnacl python3-openssl \ python3-pygit2 -pip3 install timelib==0.2.5 - # Downloading bootstrap-salt.sh script BOOTSTRAP_VERSION='2022.03.15' BOOTSTRAP_URL="https://raw.githubusercontent.com/saltstack/salt-bootstrap/v${BOOTSTRAP_VERSION}/bootstrap-salt.sh" From 524c2bd7ea3743100e3c194b7053c49de5832062 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Thu, 21 Jul 2022 12:24:31 +0200 Subject: [PATCH 10/21] feat: Use `python3` default distro version Closes #154 --- CHANGELOG.md | 2 +- Dockerfile | 5 ++--- assets/build/install.sh | 3 +-- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8176013c..1a4d4879 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ for the list of changes in SaltStack. - Upgrade `salt-master` to `3005` *Phosphorus* - Change Docker base image to `ubuntu:jammy-20220531` -- Upgrade Python to version `3.10` +- Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories **3004.2** diff --git a/Dockerfile b/Dockerfile index 3e0db21c..98ac8259 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,8 +5,7 @@ ARG VCS_REF # https://github.com/saltstack/salt/releases # NOTE: Review org.label-schema.version label if necessary -ENV SALT_VERSION="3005rc1" \ - PYTHON_VERSION="3.10" +ENV SALT_VERSION="3005rc1" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ SALT_ROOT_DIR="/etc/salt" \ @@ -32,7 +31,7 @@ WORKDIR ${SALT_BUILD_DIR} RUN apt-get update \ && DEBIAN_FRONTEND=noninteractive apt-get install --yes --quiet --no-install-recommends \ sudo ca-certificates openssl apt-transport-https wget locales openssh-client \ - python${PYTHON_VERSION} python3-dev libpython3-dev \ + python3 python3-dev libpython3-dev \ python3-pip python3-setuptools python3-wheel \ supervisor logrotate git gettext-base tzdata inotify-tools psmisc \ && DEBIAN_FRONTEND=noninteractive update-locale LANG=C.UTF-8 LC_MESSAGES=POSIX \ diff --git a/assets/build/install.sh b/assets/build/install.sh index f3f2e155..1b5a7404 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -54,8 +54,7 @@ check_sha256 "${BOOTSTRAP_FILE}" "${BOOTSTRAP_SHA256}" ## -d: Disables checking if Salt services are enabled to start on system boot ## -P: Allow pip based installations ## -p: Extra-package to install -## -x: Changes the python version used to install a git version of salt -SALT_BOOTSTRAP_OPTS=( -M -N -X -d -P -p salt-api -p salt-call -x "python${PYTHON_VERSION}" ) +SALT_BOOTSTRAP_OPTS=( -M -N -X -d -P -p salt-api -p salt-call ) ## -I: allow insecure connections while downloading any files is_arm32 && SALT_BOOTSTRAP_OPTS+=( -I ) From f2c07f0b6537d3f66f18e003515aebdcfeb2357d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Thu, 21 Jul 2022 12:32:05 +0200 Subject: [PATCH 11/21] ci(tests): Use `python3` version `3.10` --- .github/workflows/build-and-test.yml | 2 +- CHANGELOG.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 1a8abeca..b6b59324 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -111,7 +111,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: 3.8 + python-version: '3.10' - name: Execute basic tests run: tests/basic/test.sh diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a4d4879..b219ab98 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ for the list of changes in SaltStack. - Change Docker base image to `ubuntu:jammy-20220531` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories +- CI(tests): Use `python3` version `3.10` **3004.2** From 6d0e275146064dcf0a773e20ea7118a03693b01c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Fri, 22 Jul 2022 08:40:48 +0200 Subject: [PATCH 12/21] feat: Remove USERMAP_UID and USERMAP_GID env variables support --- CHANGELOG.md | 1 + README.md | 6 ++--- assets/runtime/env-defaults.sh | 3 +++ assets/runtime/functions.sh | 41 ---------------------------------- 4 files changed, 6 insertions(+), 45 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b219ab98..77a7c1d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ for the list of changes in SaltStack. - Change Docker base image to `ubuntu:jammy-20220531` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories +- Remove `USERMAP_UID` and `USERMAP_GID` env variables in favor of `PUID` and `PGID`, respectively. - CI(tests): Use `python3` version `3.10` **3004.2** diff --git a/README.md b/README.md index 04df47de..ca08449e 100644 --- a/README.md +++ b/README.md @@ -510,6 +510,8 @@ Below you can find a list with the available options that can be used to customi | :------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `DEBUG` | Set this to `True` to enable entrypoint debugging. | | `TIMEZONE` / `TZ` | Set the container timezone. Defaults to `UTC`. Values are expected to be in Canonical format. Example: `Europe/Madrid`. See the list of [acceptable values](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). | +| `PUID` | Sets the uid for user `salt` to the specified uid. Default: `1000`. | +| `PGID` | Sets the gid for user `salt` to the specified gid. Default: `1000`. | | `SALT_RESTART_MASTER_ON_CONFIG_CHANGE` | Set this to `True` to restart `salt-master` service when configuration files change. Default: `False` | | [`SALT_LOG_LEVEL`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#log-level) | The level of messages to send to the console. One of 'garbage', 'trace', 'debug', info', 'warning', 'error', 'critical'. Default: `warning` | | `SALT_LOG_ROTATE_FREQUENCY` | Logrotate frequency for salt logs. Available options are 'daily', 'weekly', 'monthly', and 'yearly'. Default: `weekly` | @@ -528,10 +530,6 @@ Below you can find a list with the available options that can be used to customi | `SALT_GITFS_SSH_PUBLIC_KEY` | The name of the ssh public key for gitfs. Default: `gitfs_ssh`.pub` | | [`SALT_REACTOR_WORKER_THREADS`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#reactor-worker-threads) | The number of workers for the runner/wheel in the reactor. Default: `10`. | | [`SALT_WORKER_THREADS`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#worker-threads) | The number of threads to start for receiving commands and replies from minions. Default: `5`. | -| `PUID` | Sets the uid for user `salt` to the specified uid. Default: `1000`. | -| `PGID` | Sets the gid for user `salt` to the specified gid. Default: `1000`. | -| `USERMAP_UID` (**deprecated**) | Same as `PUID`. Support will be removed in Salt 3005 release in favor of `PUID`. | -| `USERMAP_GID` (**deprecated**) | Same as `PGID`. Support will be removed in Salt 3005 release in favor of `PGID`. | Any parameter not listed in the above table and available in the following [link](https://docs.saltproject.io/en/latest/ref/configuration/examples.html#configuration-examples-master), can be set by creating the directory `config` and adding into it a `.conf` file with the desired parameters: diff --git a/assets/runtime/env-defaults.sh b/assets/runtime/env-defaults.sh index c24c3a52..d39303a1 100755 --- a/assets/runtime/env-defaults.sh +++ b/assets/runtime/env-defaults.sh @@ -1,5 +1,8 @@ #!/usr/bin/env bash +PUID=${PUID:-1000} +PGID=${PGID:-1000} + DEBUG=${DEBUG:-False} TIMEZONE=${TIMEZONE:-${TZ:-UTC}} diff --git a/assets/runtime/functions.sh b/assets/runtime/functions.sh index 55c95475..55015ab5 100755 --- a/assets/runtime/functions.sh +++ b/assets/runtime/functions.sh @@ -57,53 +57,12 @@ function log_error() (>&2 echo "[ERROR] - $*") } -#--- FUNCTION ------------------------------------------------------------------------------------------------------- -# NAME: __check_puid_pgid_env -# DESCRIPTION: Check if the PUID and PGID environment variables are set correctly. -#---------------------------------------------------------------------------------------------------------------------- -function __check_puid_pgid_env -{ - if [[ "${SALT_VERSION}" -ge "3005" ]]; then - log_error "The USERMAP_UID and USERMAP_GID environment variables are not supported in Salt >= 3005" - exit 1 - fi - - if [[ -n "${USERMAP_UID}" ]]; then - log_warn "The USERMAP_UID environment variable is deprecated. Please use PUID instead." - log_warn "Support for USERMAP_UID will be removed in Salt 3005 release." - if [[ -z "${PUID}" ]]; then - log_warn "Setting PUID to USERMAP_UID (${USERMAP_UID})" - export PUID="${USERMAP_UID}" - else - log_error "The PUID and USERMAP_UID environment variables are set. PUID will be used." - fi - unset USERMAP_UID - fi - - if [[ -n "${USERMAP_GID}" ]]; then - log_warn "The USERMAP_GID environment variable is deprecated. Please use PGID instead." - log_warn "Support for USERMAP_GID will be removed in Salt 3005 release." - if [[ -z "${PGID}" ]]; then - log_info "Setting PGID to USERMAP_GID (${USERMAP_GID})" - export PGID="${USERMAP_GID}" - else - log_error "The PGID and USERMAP_GID environment variables are set. PGID will be used." - fi - unset USERMAP_GID - fi -} - #--- FUNCTION ------------------------------------------------------------------------------------------------------- # NAME: map_uidgid # DESCRIPTION: Map salt user with host user. #---------------------------------------------------------------------------------------------------------------------- function map_uidgid() { - __check_puid_pgid_env - # Move this into env-defaults.sh - [ -z "${PUID}" ] && export PUID=1000 - [ -z "${PGID}" ] && export PGID=1000 - ORIG_PUID=$(id -u "${SALT_USER}") ORIG_PGID=$(id -g "${SALT_USER}") PGID=${PGID:-${PUID:-$ORIG_PGID}} From a6b237db04aa02339caa8860580016f224303022 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 2 Aug 2022 09:10:00 +0200 Subject: [PATCH 13/21] Upgrade salt-master to 3005rc2 Phosphorus --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- Dockerfile | 2 +- README.md | 6 +++--- VERSION | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 0d859dd3..0429b54e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -26,7 +26,7 @@ The full log with the outputted error. **Version report (please complete the following information):** - Host OS: [e.g. `uname -a`] - Docker: [e.g. `docker --version`] - - Image tag: [e.g. `3005rc1`] + - Image tag: [e.g. `3005`] **Additional context** Add any other context about the problem here. diff --git a/Dockerfile b/Dockerfile index 98ac8259..3d3763af 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,7 @@ ARG VCS_REF # https://github.com/saltstack/salt/releases # NOTE: Review org.label-schema.version label if necessary -ENV SALT_VERSION="3005rc1" +ENV SALT_VERSION="3005rc2" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ SALT_ROOT_DIR="/etc/salt" \ diff --git a/README.md b/README.md index ca08449e..f4a060fc 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ For other methods to install `salt-master` please refer to the [Official Salt Pr Automated builds of the image are available on [Dockerhub](https://hub.docker.com/r/cdalvaro/docker-salt-master/) and is the recommended method of installation. ```sh -docker pull cdalvaro/docker-salt-master:3005rc1 +docker pull cdalvaro/docker-salt-master:3005 ``` You can also pull the latest tag which is built from the repository `HEAD` @@ -591,8 +591,8 @@ Where `salt-service` is one of: `salt-master` os `salt-api` (if `SALT_API_SERVIC - https://docs.saltproject.io/en/getstarted/ - https://docs.saltproject.io/en/latest/contents.html -[saltproject_badge]: https://img.shields.io/badge/Salt-v3005rc1-lightgrey.svg?logo=Saltstack -[saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3005rc1.html "Salt Project Release Notes" +[saltproject_badge]: https://img.shields.io/badge/Salt-v3005-lightgrey.svg?logo=Saltstack +[saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3005.html "Salt Project Release Notes" [ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220531-E95420.svg?logo=Ubuntu [ubuntu_hub_docker]: https://hub.docker.com/_/ubuntu/ "Ubuntu Image" [github_publish_badge]: https://img.shields.io/github/workflow/status/cdalvaro/docker-salt-master/Publish%20Docker%20image?label=build&logo=GitHub&logoColor=%23181717 diff --git a/VERSION b/VERSION index 501efb32..c34b7f81 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3005rc1 +3005rc2 From 6f38669afb818a4ccb7f232893a41bd28941b82e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 2 Aug 2022 09:12:20 +0200 Subject: [PATCH 14/21] feat: Change Docker base image to ubuntu:jammy-20220801 --- CHANGELOG.md | 2 +- Dockerfile | 2 +- README.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77a7c1d2..b0be2169 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ for the list of changes in SaltStack. **3005** - Upgrade `salt-master` to `3005` *Phosphorus* -- Change Docker base image to `ubuntu:jammy-20220531` +- Change Docker base image to `ubuntu:jammy-20220801` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories - Remove `USERMAP_UID` and `USERMAP_GID` env variables in favor of `PUID` and `PGID`, respectively. diff --git a/Dockerfile b/Dockerfile index 3d3763af..fa9f9223 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:jammy-20220531 +FROM ubuntu:jammy-20220801 ARG BUILD_DATE ARG VCS_REF diff --git a/README.md b/README.md index f4a060fc..6178ad48 100644 --- a/README.md +++ b/README.md @@ -593,7 +593,7 @@ Where `salt-service` is one of: `salt-master` os `salt-api` (if `SALT_API_SERVIC [saltproject_badge]: https://img.shields.io/badge/Salt-v3005-lightgrey.svg?logo=Saltstack [saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3005.html "Salt Project Release Notes" -[ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220531-E95420.svg?logo=Ubuntu +[ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220801-E95420.svg?logo=Ubuntu [ubuntu_hub_docker]: https://hub.docker.com/_/ubuntu/ "Ubuntu Image" [github_publish_badge]: https://img.shields.io/github/workflow/status/cdalvaro/docker-salt-master/Publish%20Docker%20image?label=build&logo=GitHub&logoColor=%23181717 [github_publish_workflow]: https://github.com/cdalvaro/docker-salt-master/actions?query=workflow%3A%22Publish+Docker+image%22 From b8ca69770eddfb939381b97476db5bd713e90fe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Sat, 6 Aug 2022 11:34:18 +0200 Subject: [PATCH 15/21] doc: Update README.md --- README.md | 238 +++++++++++++++-------- social/SaltProject_verticallogo_teal.png | Bin 0 -> 24152 bytes social/jb_beam.svg | 1 + 3 files changed, 157 insertions(+), 82 deletions(-) create mode 100644 social/SaltProject_verticallogo_teal.png create mode 100644 social/jb_beam.svg diff --git a/README.md b/README.md index 6178ad48..15621625 100644 --- a/README.md +++ b/README.md @@ -11,39 +11,16 @@ Dockerfile to build a [Salt Project](https://saltproject.io) Master image for the Docker opensource container platform. -`salt-master` is installed inside the Docker image using git source as documented in the the [official bootstrap](https://docs.saltproject.io/en/latest/topics/tutorials/salt_bootstrap.html) documentation. - -For other methods to install `salt-master` please refer to the [Official Salt Project Installation Guide](https://docs.saltproject.io/en/latest/topics/installation/index.html). - -## Table of Contents - -- [Installation](#installation) - - [Changelog](CHANGELOG.md) -- [Quick Start](#quick-start) -- [Configuration](#configuration) - - [Custom Configuration](#custom-configuration) - - [Custom States](#custom-states) - - [Minion Keys](#minion-keys) - - [Master Signed Keys](#master-signed-keys) - - [Salt API](#salt-api) - - [Salt Pepper](#salt-pepper) - - [Host Mapping](#host-mapping) - - [Git Fileserver](#git-fileserver) - - [GitPython](#gitpython) - - [PyGit2](#pygit2) - - [3rd Party Formulas](#3rd-party-formulas) - - [Logs](#logs) - - [Healthcheck](#healthcheck) - - [Autoheal](#autoheal) - - [Available Configuration Parameters](#available-configuration-parameters) -- [Usage](#usage) -- [Shell Access](#shell-access) -- [Restart Services](#restart-services) -- [References](#references) - -## Installation - -Automated builds of the image are available on [Dockerhub](https://hub.docker.com/r/cdalvaro/docker-salt-master/) and is the recommended method of installation. +`salt-master` is installed inside the Docker image using git source as documented in +the [official bootstrap](https://docs.saltproject.io/en/latest/topics/tutorials/salt_bootstrap.html) documentation. + +For other methods to install `salt-master` please refer to +the [Official Salt Project Installation Guide](https://docs.saltproject.io/en/latest/topics/installation/index.html). + +## 🐳 Installation + +Automated builds of the image are available on [Dockerhub](https://hub.docker.com/r/cdalvaro/docker-salt-master/) and is +the recommended method of installation. ```sh docker pull cdalvaro/docker-salt-master:3005 @@ -55,7 +32,8 @@ You can also pull the latest tag which is built from the repository `HEAD` docker pull cdalvaro/docker-salt-master:latest ``` -These images are also available from [GitHub Container Registry](https://github.com/users/cdalvaro/packages/container/package/docker-salt-master): +These images are also available +from [GitHub Container Registry](https://github.com/users/cdalvaro/packages/container/package/docker-salt-master): ```sh docker pull ghcr.io/cdalvaro/docker-salt-master:latest @@ -73,7 +51,7 @@ Alternatively, you can build the image locally using `make` command: make release ``` -## Quick Start +## πŸš€ Quick Start The quickest way to get started is using [docker-compose](https://docs.docker.com/compose/). @@ -98,13 +76,16 @@ docker run --name salt_master --detach \ cdalvaro/docker-salt-master:latest ``` -## Configuration +## βš™οΈ Configuration ### Custom Configuration -This image uses its own `master.yml` file to configure `salt-master` to run properly inside the container. However, you can still tune other configuration parameters to fit your needs by adding your configuration files into a `config/` directory and mounting it into `/home/salt/data/config/`. +This image uses its own `master.yml` file to configure `salt-master` to run properly inside the container. However, you +can still tune other configuration parameters to fit your needs by adding your configuration files into a `config/` +directory and mounting it into `/home/salt/data/config/`. -For example, you can customize the [Reactor System](https://docs.saltproject.io/en/latest/topics/reactor/index.html) by adding a `reactor.conf` file to `config/`: +For example, you can customize the [Reactor System](https://docs.saltproject.io/en/latest/topics/reactor/index.html) by +adding a `reactor.conf` file to `config/`: ```sls # config/reactor.conf @@ -139,13 +120,16 @@ This support is disabled by default, but it can be enabled by setting the ### Custom States -In order to provide salt with your custom states you must mount the volume `/home/salt/data/srv/` with your `roots` directory inside it. +In order to provide salt with your custom states you must mount the volume `/home/salt/data/srv/` with your `roots` +directory inside it. ### Minion Keys -Minion keys can be added automatically on startup to `docker-salt-master` by mounting the volume `/home/salt/data/keys` and copying the minion keys inside `keys/minions/` directory. +Minion keys can be added automatically on startup to `docker-salt-master` by mounting the volume `/home/salt/data/keys` +and copying the minion keys inside `keys/minions/` directory. -It is also important to know that, in order to keep your keys after removing the container, the keys directory must be mounted. +It is also important to know that, in order to keep your keys after removing the container, the keys directory must be +mounted. ```sh mkdir -p keys/minions @@ -160,14 +144,17 @@ docker run --name salt_master -d \ cdalvaro/docker-salt-master:latest ``` -Also, you can set your `docker-salt-master` instance to autoaccept minions that match certain grains. To do that, add the `autosign_grains.conf` to your `config` directory: +Also, you can set your `docker-salt-master` instance to autoaccept minions that match certain grains. To do that, add +the `autosign_grains.conf` to your `config` directory: ```sls # config/autosign_grains.conf autosign_grains_dir: /home/salt/data/srv/autosign_grains ``` -Then, inside `roots/autosign_grains` you can place a file named like the grain you want to match and fill it with the content to match. For example, if you want to autoaccept minions that belong to specific domains, you have to add the `domain` file with the domains you want to allow: +Then, inside `roots/autosign_grains` you can place a file named like the grain you want to match and fill it with the +content to match. For example, if you want to autoaccept minions that belong to specific domains, you have to add +the `domain` file with the domains you want to allow: ```sls # roots/autosign_grains/domain @@ -175,14 +162,16 @@ cdalvaro.io cdalvaro.com ``` -It is possible that you have to configure the minion to send the specific grains to the master in the minion config file: +It is possible that you have to configure the minion to send the specific grains to the master in the minion config +file: ```sls autosign_grains: - domain ``` -More info at: [Salt Project - Autoaccept Minions From Grains](https://docs.saltproject.io/en/latest/topics/tutorials/autoaccept_grains.html) +More info +at: [Salt Project - Autoaccept Minions From Grains](https://docs.saltproject.io/en/latest/topics/tutorials/autoaccept_grains.html) ### Master Signed Keys @@ -198,7 +187,10 @@ docker run --name salt_stack --detach \ cdalvaro/docker-salt-master:latest ``` -The container will create the `master_sign` key and its signature. More information about how to configure the minion service can be found [here](https://docs.saltproject.io/en/latest/topics/tutorials/multimaster_pki.html#prepping-the-minion-to-verify-received-public-keys). +The container will create the `master_sign` key and its signature. More information about how to configure the minion +service can be +found [here](https://docs.saltproject.io/en/latest/topics/tutorials/multimaster_pki.html#prepping-the-minion-to-verify-received-public-keys) +. Additionally, you can generate new keys by executing the following command: @@ -215,7 +207,8 @@ The newly created keys will appear inside `keys/generated/new_master_sign` direc You can enable `salt-api` service by setting env variable `SALT_API_SERVICE_ENABLED` to `True`. -A self-signed SSL certificate will be automatically generated and the following configuration will be added to the master configuration file: +A self-signed SSL certificate will be automatically generated and the following configuration will be added to the +master configuration file: ```yml rest_cherrypy: @@ -224,7 +217,8 @@ rest_cherrypy: ssl_key: /etc/pki/tls/certs/docker-salt-master.key ``` -The container exposes port `8000` by default, although you can map this port to whatever port you like in your `docker run` command: +The container exposes port `8000` by default, although you can map this port to whatever port you like in +your `docker run` command: ```sh docker run --name salt_stack --detach \ @@ -237,15 +231,20 @@ docker run --name salt_stack --detach \ cdalvaro/docker-salt-master:latest ``` -If you choose using the [docker-compose.yml](docker-compose.yml) to manage your salt-master instance, uncomment salt-api settings to enable and configure the service. +If you choose using the [docker-compose.yml](docker-compose.yml) to manage your salt-master instance, uncomment salt-api +settings to enable and configure the service. -By default, user `salt_api` is created and you can set its password by setting the environment variable `SALT_API_USER_PASS`. +By default, user `salt_api` is created, and you can set its password by setting the environment +variable `SALT_API_USER_PASS`. -You can also change the salt-api _username_ by setting `SALT_API_USER`. It is possible to disable this user by explicitly setting this variable to an empty string: `SALT_API_USER=''` if you are going to use an `LDAP` server. +You can also change the salt-api _username_ by setting `SALT_API_USER`. It is possible to disable this user by +explicitly setting this variable to an empty string: `SALT_API_USER=''` if you are going to use an `LDAP` server. -As a security measure, if `SALT_API_SERVICE_ENABLED` is set to `True` and you don't disable `SALT_API_USER`, you'll be required to set `SALT_API_USER_PASS`. Otherwise initialization will fail and your Docker image won't work. +As a security measure, if `SALT_API_SERVICE_ENABLED` is set to `True` and you don't disable `SALT_API_USER`, you'll be +required to set `SALT_API_USER_PASS`. Otherwise, initialization will fail and your Docker image won't work. -With all that set, you'll be able to provide your _salt-api_ custom configuration by creating the `salt-api.conf` file inside your `conf` directory: +With all that set, you'll be able to provide your _salt-api_ custom configuration by creating the `salt-api.conf` file +inside your `conf` directory: ```yml external_auth: @@ -257,13 +256,16 @@ external_auth: - "@jobs" ``` -More information is available in the following link: [External Authentication System (eAuth)](https://docs.saltproject.io/en/latest/topics/eauth/index.html#acl-eauth). +More information is available in the following +link: [External Authentication System (eAuth)](https://docs.saltproject.io/en/latest/topics/eauth/index.html#acl-eauth). -Now you have your docker-salt-master docker image ready to accept external authentications and to connect external tools such as [`saltstack/pepper`](https://github.com/saltstack/pepper). +Now you have your docker-salt-master docker image ready to accept external authentications and to connect external tools +such as [`saltstack/pepper`](https://github.com/saltstack/pepper). #### Salt Pepper -The pepper CLI script allows users to execute Salt commands from computers that are external to computers running the salt-master or salt-minion daemons as though they were running Salt locally +The pepper CLI script allows users to execute Salt commands from computers that are external to computers running the +salt-master or salt-minion daemons as though they were running Salt locally ##### Installation: @@ -285,7 +287,7 @@ SALTAPI_EAUTH=pam ##### Usage -Beging executing salt states with `pepper`: +Begin executing salt states with `pepper`: ```sh pepper '*' test.ping @@ -293,9 +295,14 @@ pepper '*' test.ping ### Host Mapping -Per default the container is configured to run `salt-master` as user and group `salt` with `uid` and `gid` `1000`. From the host it appears as if the mounted data volumes are owned by the host's user/group `1000` and maybe leading to unfavorable effects. +Per default the container is configured to run `salt-master` as user and group `salt` with `uid` and `gid` `1000`. From +the host it appears as if the mounted data volumes are owned by the host's user/group `1000` and maybe leading to +unfavorable effects. -Also the container processes seem to be executed as the host's user/group `1000`. The container can be configured to map the uid and gid of git to different ids on host by passing the environment variables `PUID` and `PGID`. The following command maps the ids to the current user and group on the host. +Also, the container processes seem to be executed as the host's user/group `1000`. The container can be configured to +map +the uid and gid of git to different ids on host by passing the environment variables `PUID` and `PGID`. The following +command maps the ids to the current user and group on the host. ```sh docker run --name salt_stack -it --rm \ @@ -308,13 +315,19 @@ docker run --name salt_stack -it --rm \ ### Git Fileserver -This image uses [GitPython](https://github.com/gitpython-developers/GitPython) and [PyGit2](https://www.pygit2.org) as gitfs backends to allow Salt to serve files from git repositories. +This image uses [GitPython](https://github.com/gitpython-developers/GitPython) and [PyGit2](https://www.pygit2.org) as +gitfs backends to allow Salt to serve files from git repositories. -It can be enabled by adding `gitfs` to the [`fileserver_backend`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#std:conf_master-fileserver_backend) list (see [Available Configuration Parameters](#available-configuration-parameters)), and configuring one or more repositories in [`gitfs_remotes`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#std:conf_master-gitfs_remotes). +It can be enabled by adding `gitfs` to +the [`fileserver_backend`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#std:conf_master-fileserver_backend) +list (see [Available Configuration Parameters](#available-configuration-parameters)), and configuring one or more +repositories +in [`gitfs_remotes`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#std:conf_master-gitfs_remotes). #### GitPython -The default name for the ssh key is `gitfs_ssh` but it can be changed with the env variables `SALT_GITFS_SSH_PRIVATE_KEY` and `SALT_GITFS_SSH_PUBLIC_KEY`. +The default name for the ssh key is `gitfs_ssh` but it can be changed with the env +variables `SALT_GITFS_SSH_PRIVATE_KEY` and `SALT_GITFS_SSH_PUBLIC_KEY`. This keys must be placed inside `/home/salt/data/keys` directory. @@ -326,7 +339,8 @@ You can create an ssh key for pygit2 with the following command: ssh-keygen -f gitfs_ssh -C 'gitfs@example.com' ``` -Place it wherever you want inside the container and specify its path with the configuration parameters: `gitfs_pubkey` and `gitfs_privkey` in your `.conf` file. +Place it wherever you want inside the container and specify its path with the configuration parameters: `gitfs_pubkey` +and `gitfs_privkey` in your `.conf` file. For example: @@ -369,18 +383,26 @@ gitfs_remotes: - https://github.com/aokiji/salt-formula-helm.git ``` -This is the [Salt recommended](https://docs.saltproject.io/en/latest/topics/development/conventions/formulas.html#adding-a-formula-as-a-gitfs-remote) way of doing it, and you can go to the [Git Fileserver](#git-fileserver) section on this document if you need help configuring this service. +This is +the [Salt recommended](https://docs.saltproject.io/en/latest/topics/development/conventions/formulas.html#adding-a-formula-as-a-gitfs-remote) +way of doing it, and you can go to the [Git Fileserver](#git-fileserver) section on this document if you need help +configuring this service. You can find a great set of formulas on the following GitHub repositories: - [Official Salt Formulas](https://github.com/saltstack-formulas) - [Unofficial Salt Formulas](https://github.com/salt-formulas) -Although, as mention in [Salt Project documentation](https://docs.saltproject.io/en/latest/topics/development/conventions/formulas.html#adding-a-formula-as-a-gitfs-remote), you are encouraged to fork desired formulas to avoid unexpected changes to your infrastructure. +Although, as mention +in [Salt Project documentation](https://docs.saltproject.io/en/latest/topics/development/conventions/formulas.html#adding-a-formula-as-a-gitfs-remote) +, you are encouraged to fork desired formulas to avoid unexpected changes to your infrastructure. -However, sometimes you may need to load some formulas that are not available on a git repository and you want to have them separated from your main `srv` directory. +However, sometimes you may need to load some formulas that are not available on a git repository, and you want to have +them separated from your main `srv` directory. -For that case, you can mount a volume containing all your third party formulas separated in subdirectories into `/home/salt/data/3pfs/`, and they will be automatically added to the master configuration when your container starts. +For that case, you can mount a volume containing all your third party formulas separated in subdirectories +into `/home/salt/data/3pfs/`, and they will be automatically added to the master configuration when your container +starts. ```sh # 3pfs directory content @@ -406,7 +428,8 @@ If you need to add more third party formulas, you can restart the container, or docker exec -it salt_stack /sbin/entrypoint.sh app:reload-3rd-formulas ``` -`file_roots` base configuration file will be updated with current existing formulas and `salt-master` service will be restarted to reload the new configuration. +`file_roots` base configuration file will be updated with current existing formulas and `salt-master` service will be +restarted to reload the new configuration. ### Logs @@ -428,9 +451,13 @@ Check [Available Configuration Parameters](#available-configuration-parameters) ### Healthcheck -This image includes a [health check](https://docs.docker.com/engine/reference/builder/#healthcheck) script: `/usr/local/sbin/healthcheck` (although it is disable by default). It is useful to check if the `salt-master` service is alive and responding. +This image includes a [health check](https://docs.docker.com/engine/reference/builder/#healthcheck) +script: `/usr/local/sbin/healthcheck` (although it is disabled by default). It is useful to check if the `salt-master` +service is alive and responding. -If you are running this image under k8s, you can define a _liveness command_ as explained [here](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-command). +If you are running this image under k8s, you can define a _liveness command_ as +explained [here](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-command) +. If you use `docker-compose` as your container orchestrator, you can add the following entries to your compose file: @@ -442,11 +469,12 @@ services: container_name: salt_master image: cdalvaro/docker-salt-master:latest healthcheck: - test: ["CMD", "/usr/local/sbin/healthcheck"] + test: [ "CMD", "/usr/local/sbin/healthcheck" ] start_period: 30s ``` -(More info available at [compose file](https://docs.docker.com/compose/compose-file/#healthcheck) official documentation) +(More info available at [compose file](https://docs.docker.com/compose/compose-file/#healthcheck) official +documentation) Or, if you launch your container [with docker](https://docs.docker.com/engine/reference/run/#healthcheck): @@ -487,7 +515,9 @@ Then, the output will be something similar to this: #### Autoheal -If you run your _docker-salt-master_ instance with healthcheck enabled, you can use [willfarrell/autoheal](https://github.com/willfarrell/docker-autoheal) image to restart your service when healthcheck fails: +If you run your _docker-salt-master_ instance with healthcheck enabled, you can +use [willfarrell/autoheal](https://github.com/willfarrell/docker-autoheal) image to restart your service when +healthcheck fails: ```sh docker run -d \ @@ -502,12 +532,15 @@ This container will watch your containers and restart your failing instances. ### Available Configuration Parameters -Please refer the docker run command options for the `--env-file` flag where you can specify all required environment variables in a single file. This will save you from writing a potentially long docker run command. Alternatively you can use docker-compose. +Please refer the docker run command options for the `--env-file` flag where you can specify all required environment +variables in a single file. This will save you from writing a potentially long docker run command. Alternatively you can +use docker-compose. -Below you can find a list with the available options that can be used to customize your `docker-salt-master` installation. +Below you can find a list with the available options that can be used to customize your `docker-salt-master` +installation. | Parameter | Description | -| :------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +|:--------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `DEBUG` | Set this to `True` to enable entrypoint debugging. | | `TIMEZONE` / `TZ` | Set the container timezone. Defaults to `UTC`. Values are expected to be in Canonical format. Example: `Europe/Madrid`. See the list of [acceptable values](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). | | `PUID` | Sets the uid for user `salt` to the specified uid. Default: `1000`. | @@ -531,7 +564,9 @@ Below you can find a list with the available options that can be used to customi | [`SALT_REACTOR_WORKER_THREADS`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#reactor-worker-threads) | The number of workers for the runner/wheel in the reactor. Default: `10`. | | [`SALT_WORKER_THREADS`](https://docs.saltproject.io/en/latest/ref/configuration/master.html#worker-threads) | The number of threads to start for receiving commands and replies from minions. Default: `5`. | -Any parameter not listed in the above table and available in the following [link](https://docs.saltproject.io/en/latest/ref/configuration/examples.html#configuration-examples-master), can be set by creating the directory `config` and adding into it a `.conf` file with the desired parameters: +Any parameter not listed in the above table and available in the +following [link](https://docs.saltproject.io/en/latest/ref/configuration/examples.html#configuration-examples-master), +can be set by creating the directory `config` and adding into it a `.conf` file with the desired parameters: ```sh mkdir config @@ -551,7 +586,7 @@ docker run --name salt_master -d \ cdalvaro/docker-salt-master:latest ``` -## Usage +## πŸ§‘β€πŸš€ Usage To test which salt minions are listening the following command can be executed directly from the host machine: @@ -565,15 +600,16 @@ Then, you can apply salt states to your minions: docker exec -it salt_master salt '*' state.apply [state] ``` -## Shell Access +## 🧰 Shell Access -For debugging and maintenance purposes you may want access the container shell. If you are using docker version 1.3.0 or higher you can access a running container shell using docker exec command. +For debugging and maintenance purposes you may want to access the container's shell. +If you are using docker version 1.3.0 or higher you can access a running container shell using docker exec command. ```sh docker exec -it salt_master bash ``` -## Restart Services +## πŸ’€ Restart Services You can restart containers services by running the following command: @@ -583,27 +619,65 @@ docker exec -it salt_master entrypoint.sh app:restart [salt-service] Where `salt-service` is one of: `salt-master` os `salt-api` (if `SALT_API_SERVICE_ENABLED` is set to `True`) -## References +## πŸ‘ Credits + +Many thanks to: + +* [The SaltProject](https://saltproject.io) team for the excellent [salt](https://github.com/saltstack/salt) project +* [JetBrains](https://www.jetbrains.com) for their free [OpenSource](https://jb.gg/OpenSourceSupport) license +* [The Contributors](https://github.com/cdalvaro/docker-salt-master/graphs/contributors) for all the smart code and suggestions merged in the project +* [The Stargazers](https://github.com/cdalvaro/docker-salt-master/stargazers) for showing their support + +
+ SaltProject + JetBrains Beam +
+ +## πŸ“– References [![StackOverflow Community][stackoverflow_badge]][stackoverflow_community] [![Slack Community][slack_badge]][slack_community] +[![Reddit channel][reddit_badge]][subreddit] - https://docs.saltproject.io/en/getstarted/ - https://docs.saltproject.io/en/latest/contents.html [saltproject_badge]: https://img.shields.io/badge/Salt-v3005-lightgrey.svg?logo=Saltstack + [saltproject_release_notes]: https://docs.saltproject.io/en/latest/topics/releases/3005.html "Salt Project Release Notes" + [ubuntu_badge]: https://img.shields.io/badge/ubuntu-jammy--20220801-E95420.svg?logo=Ubuntu + [ubuntu_hub_docker]: https://hub.docker.com/_/ubuntu/ "Ubuntu Image" + [github_publish_badge]: https://img.shields.io/github/workflow/status/cdalvaro/docker-salt-master/Publish%20Docker%20image?label=build&logo=GitHub&logoColor=%23181717 + [github_publish_workflow]: https://github.com/cdalvaro/docker-salt-master/actions?query=workflow%3A%22Publish+Docker+image%22 + [docker_size_badge]: https://img.shields.io/docker/image-size/cdalvaro/docker-salt-master/latest?logo=docker&color=2496ED + [docker_hub_tags]: https://hub.docker.com/repository/docker/cdalvaro/docker-salt-master/tags + +[reddit_badge]: https://img.shields.io/badge/reddit-saltstack-orange?logo=reddit&logoColor=FF4500&color=FF4500 + +[subreddit]: https://www.reddit.com/r/saltstack/ + [stackoverflow_badge]: https://img.shields.io/badge/stackoverflow-community-orange?logo=stackoverflow&color=FE7A16 + [stackoverflow_community]: https://stackoverflow.com/tags/salt-stack + [slack_badge]: https://img.shields.io/badge/slack-@saltstackcommunity-blue.svg?logo=slack&logoColor=4A154B&color=4A154B + [slack_community]: https://saltstackcommunity.herokuapp.com + [arch_amd64_badge]: https://img.shields.io/badge/arch-amd64-inactive.svg + [arch_arm_badge]: https://img.shields.io/badge/arch-arm/v7-inactive.svg + [arch_arm64_badge]: https://img.shields.io/badge/arch-arm64-inactive.svg + [arch_link]: https://github.com/users/cdalvaro/packages/container/package/docker-salt-master + +## πŸ“ƒ License + +This project is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT). diff --git a/social/SaltProject_verticallogo_teal.png b/social/SaltProject_verticallogo_teal.png new file mode 100644 index 0000000000000000000000000000000000000000..a9e62fb966287bdeeb7be38bc7b9df916a191730 GIT binary patch literal 24152 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 Hu0mjfd!kLy literal 0 HcmV?d00001 diff --git a/social/jb_beam.svg b/social/jb_beam.svg new file mode 100644 index 00000000..c4fe87cb --- /dev/null +++ b/social/jb_beam.svg @@ -0,0 +1 @@ + \ No newline at end of file From 90553e06cfdcebcdda8192d77191db20c0a25359 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20A=CC=81lvaro?= Date: Tue, 9 Aug 2022 11:14:21 +0200 Subject: [PATCH 16/21] feat: Update image labels to comply with opencontainers.org rules --- Dockerfile | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index fa9f9223..8b151e96 100644 --- a/Dockerfile +++ b/Dockerfile @@ -62,17 +62,16 @@ RUN mkdir -p "${SALT_BASE_DIR}" "${SALT_FORMULAS_DIR}" "${SALT_KEYS_DIR}" "${SAL VOLUME [ "${SALT_BASE_DIR}", "${SALT_FORMULAS_DIR}", "${SALT_KEYS_DIR}", "${SALT_CONFS_DIR}", "${SALT_LOGS_DIR}" ] LABEL \ - maintainer="carlos@cdalvaro.io" \ - org.label-schema.vendor=cdalvaro \ - org.label-schema.name="SaltStack Master" \ - org.label-schema.version="${SALT_VERSION}_6" \ - org.label-schema.description="Dockerized SaltStack Master" \ - org.label-schema.url="https://github.com/cdalvaro/docker-salt-master" \ - org.label-schema.vcs-url="https://github.com/cdalvaro/docker-salt-master.git" \ - org.label-schema.vcs-ref=${VCS_REF} \ - org.label-schema.build-date=${BUILD_DATE} \ - org.label-schema.docker.schema-version="1.0" \ - com.cdalvaro.docker-salt-master.license=MIT + org.opencontainers.image.authors="carlos@cdalvaro.io" \ + org.opencontainers.image.vendor=cdalvaro \ + org.opencontainers.image.title="Dockerized Salt Master" \ + org.opencontainers.image.description="Dockerized SaltStack Master" \ + org.opencontainers.image.version="${SALT_VERSION}" \ + org.opencontainers.image.url="https://github.com/cdalvaro/docker-salt-master" \ + org.opencontainers.image.source="https://github.com/cdalvaro/docker-salt-master.git" \ + org.opencontainers.image.revision=${VCS_REF} \ + org.opencontainers.image.created=${BUILD_DATE} \ + org.opencontainers.image.licenses=MIT WORKDIR ${SALT_HOME} ENTRYPOINT [ "/sbin/entrypoint.sh" ] From d08fe135e0a6d4e5a28d00d3e0d13350d93e74e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Wed, 10 Aug 2022 19:01:43 +0200 Subject: [PATCH 17/21] feat: Update salt-bootstrap script to version 2022.05.19 --- CHANGELOG.md | 1 + assets/build/install.sh | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b0be2169..d34881dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ for the list of changes in SaltStack. **3005** - Upgrade `salt-master` to `3005` *Phosphorus* +- Upgrade `salt-bootstrap` to version `2022.05.19` - Change Docker base image to `ubuntu:jammy-20220801` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories diff --git a/assets/build/install.sh b/assets/build/install.sh index 1b5a7404..3295e0cb 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -38,10 +38,10 @@ install_pkgs --quiet \ python3-pygit2 # Downloading bootstrap-salt.sh script -BOOTSTRAP_VERSION='2022.03.15' +BOOTSTRAP_VERSION='2022.05.19' BOOTSTRAP_URL="https://raw.githubusercontent.com/saltstack/salt-bootstrap/v${BOOTSTRAP_VERSION}/bootstrap-salt.sh" BOOTSTRAP_FILE='bootstrap-salt.sh' -BOOTSTRAP_SHA256='ed66dc9e71aed7602b9ae548f8535131831026f934f19f868fdefbe6a3ab9bf9' +BOOTSTRAP_SHA256='e92e1df6930285cf23eda188bee3cfa3dd6c577b4fb7aa91b29213ad820199b1' download "${BOOTSTRAP_URL}" "${BOOTSTRAP_FILE}" check_sha256 "${BOOTSTRAP_FILE}" "${BOOTSTRAP_SHA256}" From c1b6d9231872ee28e7e8161c8b2e24a888bdd1ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Fri, 12 Aug 2022 16:12:57 +0200 Subject: [PATCH 18/21] feat: Update salt-bootstrap script to version 2022.08.12 --- CHANGELOG.md | 2 +- assets/build/install.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d34881dc..456e99c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ for the list of changes in SaltStack. **3005** - Upgrade `salt-master` to `3005` *Phosphorus* -- Upgrade `salt-bootstrap` to version `2022.05.19` +- Upgrade `salt-bootstrap` to version `2022.08.12` - Change Docker base image to `ubuntu:jammy-20220801` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories diff --git a/assets/build/install.sh b/assets/build/install.sh index 3295e0cb..62141111 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -38,10 +38,10 @@ install_pkgs --quiet \ python3-pygit2 # Downloading bootstrap-salt.sh script -BOOTSTRAP_VERSION='2022.05.19' +BOOTSTRAP_VERSION='2022.08.12' BOOTSTRAP_URL="https://raw.githubusercontent.com/saltstack/salt-bootstrap/v${BOOTSTRAP_VERSION}/bootstrap-salt.sh" BOOTSTRAP_FILE='bootstrap-salt.sh' -BOOTSTRAP_SHA256='e92e1df6930285cf23eda188bee3cfa3dd6c577b4fb7aa91b29213ad820199b1' +BOOTSTRAP_SHA256='0970a17f90bf941427b5959e0f21f5255ced5ec366c195440877acccfb8c801d' download "${BOOTSTRAP_URL}" "${BOOTSTRAP_FILE}" check_sha256 "${BOOTSTRAP_FILE}" "${BOOTSTRAP_SHA256}" From d0074f3dc1139b5448b74a68d8fea19fb9690a9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Fri, 12 Aug 2022 16:34:46 +0200 Subject: [PATCH 19/21] feat: Update opencontainers.org image labels --- Dockerfile | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8b151e96..f7ad4759 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,8 +4,8 @@ ARG BUILD_DATE ARG VCS_REF # https://github.com/saltstack/salt/releases -# NOTE: Review org.label-schema.version label if necessary ENV SALT_VERSION="3005rc2" +ENV IMAGE_VERSION="${SALT_VERSION}" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ SALT_ROOT_DIR="/etc/salt" \ @@ -62,15 +62,18 @@ RUN mkdir -p "${SALT_BASE_DIR}" "${SALT_FORMULAS_DIR}" "${SALT_KEYS_DIR}" "${SAL VOLUME [ "${SALT_BASE_DIR}", "${SALT_FORMULAS_DIR}", "${SALT_KEYS_DIR}", "${SALT_CONFS_DIR}", "${SALT_LOGS_DIR}" ] LABEL \ - org.opencontainers.image.authors="carlos@cdalvaro.io" \ - org.opencontainers.image.vendor=cdalvaro \ org.opencontainers.image.title="Dockerized Salt Master" \ - org.opencontainers.image.description="Dockerized SaltStack Master" \ - org.opencontainers.image.version="${SALT_VERSION}" \ + org.opencontainers.image.description="salt-master ${SALT_VERSION} containerized" \ + org.opencontainers.image.documentation="https://github.com/cdalvaro/docker-salt-master/blob/${IMAGE_VERSION}/README.md" \ org.opencontainers.image.url="https://github.com/cdalvaro/docker-salt-master" \ org.opencontainers.image.source="https://github.com/cdalvaro/docker-salt-master.git" \ - org.opencontainers.image.revision=${VCS_REF} \ + org.opencontainers.image.authors="Carlos Álvaro " \ + org.opencontainers.image.vendor=cdalvaro \ org.opencontainers.image.created=${BUILD_DATE} \ + org.opencontainers.image.version="${IMAGE_VERSION}" \ + org.opencontainers.image.revision=${VCS_REF} \ + org.opencontainers.image.base.digest="sha256:42ba2dfce475de1113d55602d40af18415897167d47c2045ec7b6d9746ff148f" \ + org.opencontainers.image.base.name="ubuntu:jammy-20220801" \ org.opencontainers.image.licenses=MIT WORKDIR ${SALT_HOME} From 27b669483728c208fde30a829a36a19496dbadc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Sun, 14 Aug 2022 10:54:00 +0200 Subject: [PATCH 20/21] feat: Update salt-bootstrap script to version 2022.08.13 --- CHANGELOG.md | 2 +- assets/build/install.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 456e99c1..d7c14fa0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ for the list of changes in SaltStack. **3005** - Upgrade `salt-master` to `3005` *Phosphorus* -- Upgrade `salt-bootstrap` to version `2022.08.12` +- Upgrade `salt-bootstrap` to version `2022.08.13` - Change Docker base image to `ubuntu:jammy-20220801` - Use `python3` default distro version - Install `python3-pygit2` version `1.6.1` from Ubuntu repositories diff --git a/assets/build/install.sh b/assets/build/install.sh index 62141111..1429cb05 100755 --- a/assets/build/install.sh +++ b/assets/build/install.sh @@ -38,10 +38,10 @@ install_pkgs --quiet \ python3-pygit2 # Downloading bootstrap-salt.sh script -BOOTSTRAP_VERSION='2022.08.12' +BOOTSTRAP_VERSION='2022.08.13' BOOTSTRAP_URL="https://raw.githubusercontent.com/saltstack/salt-bootstrap/v${BOOTSTRAP_VERSION}/bootstrap-salt.sh" BOOTSTRAP_FILE='bootstrap-salt.sh' -BOOTSTRAP_SHA256='0970a17f90bf941427b5959e0f21f5255ced5ec366c195440877acccfb8c801d' +BOOTSTRAP_SHA256='8363e4dc2410c6d540fabab972ffc612b04bf4b5239e2ffb3e366266d9b63b70' download "${BOOTSTRAP_URL}" "${BOOTSTRAP_FILE}" check_sha256 "${BOOTSTRAP_FILE}" "${BOOTSTRAP_SHA256}" From 6f584c9ff0c95a6a72e32dc97f3e6d31938f9427 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Thu, 25 Aug 2022 17:22:20 +0200 Subject: [PATCH 21/21] Upgrade salt-master to 3005 Phosphorus --- Dockerfile | 2 +- VERSION | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index f7ad4759..3751f19d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ ARG BUILD_DATE ARG VCS_REF # https://github.com/saltstack/salt/releases -ENV SALT_VERSION="3005rc2" +ENV SALT_VERSION="3005" ENV IMAGE_VERSION="${SALT_VERSION}" ENV SALT_DOCKER_DIR="/etc/docker-salt" \ diff --git a/VERSION b/VERSION index c34b7f81..5528a3ea 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3005rc2 +3005 \ No newline at end of file