diff --git a/.zuul.yaml b/.zuul.yaml index c9f4f375..490e7a41 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -27,7 +27,7 @@ pre-run: playbooks/storlets-functional/pre.yaml run: playbooks/storlets-functional/run.yaml post-run: playbooks/storlets-functional/post.yaml - nodeset: ubuntu-jammy + nodeset: ubuntu-noble timeout: 2400 irrelevant-files: - ^api-ref/.*$ diff --git a/devstack/localrc.sample b/devstack/localrc.sample index be8f4184..8e70d9b8 100644 --- a/devstack/localrc.sample +++ b/devstack/localrc.sample @@ -14,6 +14,4 @@ SWIFT_SERVICE_LISTEN_ADDRESS=$HOST_IP SWIFT_LOOPBACK_DISK_SIZE=20G SWIFT_MAX_FILE_SIZE=5368709122 SWIFT_HASH=1234567890 -# TODO(tkajinam): This should be removed once we address all issues with -# the global virtualenv -GLOBAL_VENV=False +SWIFT_START_ALL_SERVICES=False diff --git a/devstack/plugin.sh b/devstack/plugin.sh index 905e55f8..58047be1 100644 --- a/devstack/plugin.sh +++ b/devstack/plugin.sh @@ -53,7 +53,8 @@ STORLETS_DOCKER_DEVICE=${STORLETS_DOCKER_DEVICE:-/var/lib/storlets} if is_fedora; then STORLETS_DOCKER_BASE_IMG=${STORLETS_DOCKER_BASE_IMG:-quay.io/centos/centos:stream9} else - STORLETS_DOCKER_BASE_IMG=${STORLETS_DOCKER_BASE_IMG:-ubuntu:22.04} + ubuntu_version=$(source /etc/os-release ; echo $VERSION_ID) + STORLETS_DOCKER_BASE_IMG=${STORLETS_DOCKER_BASE_IMG:-ubuntu:$ubuntu_version} fi STORLETS_SWIFT_RUNTIME_USER=${STORLETS_SWIFT_RUNTIME_USER:-$USER} STORLETS_SWIFT_RUNTIME_GROUP=${STORLETS_SWIFT_RUNTIME_GROUP:-$USER} @@ -72,6 +73,8 @@ STORLETS_RESTART_CONTAINER_TIMEOUT=${STORLETS_RESTART_CONTAINER_TIMEOUT:-3} STORLETS_RUNTIME_TIMEOUT=${STORLETS_RUNTIME_TIMEOUT:-40} STORLETS_JDK_VERSION=${STORLETS_JDK_VERSION:-11} +STORLETS_BIN_DIR=$(get_python_exec_prefix) + TMP_REGISTRY_PREFIX=/tmp/registry # Functions @@ -108,10 +111,14 @@ function configure_swift_and_keystone_for_storlets { # Create storlet related containers and set ACLs start_swift _export_swift_os_vars - swift post --meta "Storlet-Enabled:True" - swift post --read-acl $SWIFT_DEFAULT_PROJECT:$SWIFT_MEMBER_USER $STORLETS_STORLET_CONTAINER_NAME - swift post --read-acl $SWIFT_DEFAULT_PROJECT:$SWIFT_MEMBER_USER $STORLETS_DEPENDENCY_CONTAINER_NAME - swift post $STORLETS_LOG_CONTAIER_NAME + ${STORLETS_BIN_DIR}/swift post --meta "Storlet-Enabled:True" + ${STORLETS_BIN_DIR}/swift post \ + --read-acl $SWIFT_DEFAULT_PROJECT:$SWIFT_MEMBER_USER \ + $STORLETS_STORLET_CONTAINER_NAME + ${STORLETS_BIN_DIR}/swift post \ + --read-acl $SWIFT_DEFAULT_PROJECT:$SWIFT_MEMBER_USER \ + $STORLETS_DEPENDENCY_CONTAINER_NAME + ${STORLETS_BIN_DIR}/swift post $STORLETS_LOG_CONTAIER_NAME } function _install_docker { @@ -206,9 +213,7 @@ function install_storlets_code { # from docker container. sudo mkdir -p -m 755 /usr/local/lib/storlets/python - # NOTE(takashi): We need --no-deps to avoid enum34 installed in py 2 env, - # which causes failure in py3 execution. - pip_install . -t /usr/local/lib/storlets/python --no-compile --no-deps + GLOBAL_VENV=False pip_install . -t /usr/local/lib/storlets/python --no-compile --no-deps sudo mkdir -p -m 755 /usr/local/libexec/storlets for bin_file in storlets-daemon storlets-daemon-factory ; do sudo cp ./bin/${bin_file} /usr/local/libexec/storlets/ diff --git a/s2aio.sh b/s2aio.sh index 8fe0e496..64af5693 100755 --- a/s2aio.sh +++ b/s2aio.sh @@ -37,9 +37,11 @@ function _prepare_devstack_env { cp devstack/localrc.sample $DEVSTACK_DIR/localrc fi - source $DEVSTACK_DIR/stackrc source $DEVSTACK_DIR/functions - source $DEVSTACK_DIR/functions-common + if [[ -z "$os_PACKAGE" ]]; then + GetOSVersion + fi + source $DEVSTACK_DIR/stackrc source $DEVSTACK_DIR/lib/keystone source $DEVSTACK_DIR/lib/swift source devstack/plugin.sh