fix(test): Fix GitFS tests
This commit is contained in:
4
.github/workflows/build-and-test.yml
vendored
4
.github/workflows/build-and-test.yml
vendored
@@ -124,8 +124,8 @@ jobs:
|
|||||||
GITFS_KEYS_DIR: tests/gitfs/data/keys/gitfs
|
GITFS_KEYS_DIR: tests/gitfs/data/keys/gitfs
|
||||||
run: |
|
run: |
|
||||||
mkdir -p "${GITFS_KEYS_DIR}"
|
mkdir -p "${GITFS_KEYS_DIR}"
|
||||||
echo ${{ secrets.TESTS_REPO_PRIVATE_KEY }} > "${GITFS_KEYS_DIR}"/gitfs_ssh && chmod 600 !$
|
echo "${{ secrets.TESTS_REPO_PRIVATE_KEY }}" > "${GITFS_KEYS_DIR}"/gitfs_ssh && chmod 600 !$
|
||||||
echo ${{ secrets.TESTS_REPO_PUBLIC_KEY }} > "${GITFS_KEYS_DIR}"/gitfs_ssh.pub && chmod 644 !$
|
echo "${{ secrets.TESTS_REPO_PUBLIC_KEY }}" > "${GITFS_KEYS_DIR}"/gitfs_ssh.pub && chmod 644 !$
|
||||||
tests/gitfs/test.sh
|
tests/gitfs/test.sh
|
||||||
|
|
||||||
- name: Cleanup
|
- name: Cleanup
|
||||||
|
|||||||
@@ -3,39 +3,35 @@
|
|||||||
set -e
|
set -e
|
||||||
[ "${DEBUG}" == true ] && set -vx
|
[ "${DEBUG}" == true ] && set -vx
|
||||||
|
|
||||||
|
# https://stackoverflow.com/a/4774063/3398062
|
||||||
|
SCRIPT_PATH="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
|
||||||
|
|
||||||
|
# shellcheck source=assets/build/functions.sh
|
||||||
|
COMMON_FILE="${SCRIPT_PATH}/../lib/common.sh"
|
||||||
|
source "${COMMON_FILE}"
|
||||||
|
|
||||||
echo "🧪 Running gitfs tests ..."
|
echo "🧪 Running gitfs tests ..."
|
||||||
|
|
||||||
IMAGE_NAME=${IMAGE_NAME:-cdalvaro/docker-salt-master}
|
trap cleanup EXIT
|
||||||
CONTAINER_NAME=salt_master
|
|
||||||
PLATFORM=${PLATFORM:-$(docker version --format='{{.Server.Os}}/{{.Server.Arch}}')}
|
|
||||||
BOOTUP_WAIT_SECONDS=${BOOTUP_WAIT_SECONDS:-60}
|
|
||||||
|
|
||||||
function cleanup {
|
|
||||||
echo "==> Removing ${CONTAINER_NAME} ..."
|
|
||||||
docker container rm --force "${CONTAINER_NAME}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# trap cleanup EXIT
|
|
||||||
|
|
||||||
# Run test instance
|
# Run test instance
|
||||||
echo "==> Starting docker-salt-master (${PLATFORM}) with RSA 4096 ssh key ..."
|
echo "==> Starting docker-salt-master (${PLATFORM}) with RSA 4096 ssh key ..."
|
||||||
docker run --rm --detach --name "${CONTAINER_NAME}" \
|
start_container_and_wait \
|
||||||
--publish 4505:4505 --publish 4506:4506 \
|
|
||||||
--platform "${PLATFORM}" \
|
|
||||||
--volume "$(pwd)/tests/gitfs/config":/home/salt/data/config:ro \
|
--volume "$(pwd)/tests/gitfs/config":/home/salt/data/config:ro \
|
||||||
--volume "$(pwd)/tests/gitfs/data/keys":/home/salt/data/keys \
|
--volume "$(pwd)/tests/gitfs/data/keys":/home/salt/data/keys \
|
||||||
"${IMAGE_NAME}" || ( echo "container started ❌"; exit 1 )
|
|| error "container started"
|
||||||
echo "container started ✅"
|
ok "container started"
|
||||||
|
|
||||||
# Wait for salt-master bootup
|
# Update repositories
|
||||||
echo "==> Waiting ${BOOTUP_WAIT_SECONDS} seconds for the container to be ready ..."
|
echo "==> Updating gitfs repositories ..."
|
||||||
sleep "${BOOTUP_WAIT_SECONDS}"
|
docker exec "${CONTAINER_NAME}" salt-run cache.clear_git_lock gitfs type=update
|
||||||
|
UPDATE_REPOS="$(docker exec "${CONTAINER_NAME}" salt-run fileserver.update)"
|
||||||
|
echo "${UPDATE_REPOS}" | grep -qi 'true' || error "update gitfs"
|
||||||
|
ok "update gitfs"
|
||||||
|
|
||||||
# Check pillars
|
# Check pillars
|
||||||
echo "==> Checking gitfs files ..."
|
echo "==> Checking gitfs files ..."
|
||||||
# docker exec "${CONTAINER_NAME}" salt-run cache.clear_git_lock gitfs type=update
|
|
||||||
# docker exec "${CONTAINER_NAME}" salt-run fileserver.update
|
|
||||||
FILE_LIST=$(docker exec "${CONTAINER_NAME}" salt-run fileserver.file_list)
|
FILE_LIST=$(docker exec "${CONTAINER_NAME}" salt-run fileserver.file_list)
|
||||||
echo "${FILE_LIST}"
|
echo "${FILE_LIST}"
|
||||||
[[ "${FILE_LIST}" == *test.txt* ]] || ( echo "gitfs files ❌"; exit 1 )
|
[[ "${FILE_LIST}" == *test.txt* ]] || error "gitfs files"
|
||||||
echo "gitfs files ✅"
|
ok "gitfs files"
|
||||||
|
|||||||
Reference in New Issue
Block a user