Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/docker-image/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ runs:
with:
image: ${{ inputs.image }}
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@76071ef0d7ec797419534a183b498b4d6366cf37 # 0.31.0
uses: aquasecurity/trivy-action@dc5a429b52fcf669ce959baa2c2dd26090d2a6c4 # 0.32.0
with:
image-ref: "${{ inputs.image }}"
format: sarif
Expand Down
72 changes: 36 additions & 36 deletions ci/check_aio.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
set -o errexit
set -o pipefail
if [[ ${OS_DEBUG:-false} == "true" ]]; then
set -o xtrace
set -o xtrace
fi

export OS_DISTRO="${OS_DISTRO:-ubuntu_22}"
Expand All @@ -22,65 +22,65 @@ export OS_KOLLA_ENABLE_HORIZON="no"
export OS_KOLLA_KOLLA_INSTALL_TYPE="source"

function info {
_print_msg "INFO" "$1"
echo "::notice::$1"
_print_msg "INFO" "$1"
echo "::notice::$1"
}

function warn {
_print_msg "WARN" "$1"
echo "::warning::$1"
_print_msg "WARN" "$1"
echo "::warning::$1"
}

function _print_msg {
echo "$(date +%H:%M:%S) - $1: $2"
echo "$(date +%H:%M:%S) - $1: $2"
}

function get_release {
local release_pointer=${CI_INITIAL_RELEASE_POINTER:-3}
local release_pointer=${CI_INITIAL_RELEASE_POINTER:-3}

until [ -f "./requirements/$(sed -n "${release_pointer}p" releases.txt)/${OS_DISTRO}.txt" ]; do
release_pointer=$((release_pointer - 1))
if [[ $release_pointer -lt "0" ]]; then
return
fi
done
until [ -f "./requirements/$(sed -n "${release_pointer}p" releases.txt)/${OS_DISTRO}.txt" ]; do
release_pointer=$((release_pointer - 1))
if [[ $release_pointer -lt "0" ]]; then
return
fi
done

sed -n "${release_pointer}p" releases.txt
sed -n "${release_pointer}p" releases.txt
}

function upgrade {
local initial_release=$1
local initial_release=$1

release_pointer=$(cat -n releases.txt | grep "$initial_release" | awk '{print $1}')
release_pointer=$((release_pointer - 1))
release_pointer=$(cat -n releases.txt | grep "$initial_release" | awk '{print $1}')
release_pointer=$((release_pointer - 1))

while [[ $release_pointer -gt "0" ]]; do
release_name="$(sed -n "${release_pointer}p" releases.txt)"
while [[ $release_pointer -gt "0" ]]; do
release_name="$(sed -n "${release_pointer}p" releases.txt)"

if [ -f "./requirements/${release_name}/${OS_DISTRO}.txt" ]; then
pushd samples/aio/ >/dev/null
info "Upgrading ${OS_DISTRO} distro to OpenStack ${release_name} release"
vagrant ssh -- "cd /vagrant; OPENSTACK_RELEASE=$release_name OS_DEBUG=true ./upgrade.sh"
print_hw_stats
popd >/dev/null
else
warn "There is no more releases for ${OS_DISTRO} distro"
break
fi
release_pointer=$((release_pointer - 1))
done
if [ -f "./requirements/${release_name}/${OS_DISTRO}.txt" ]; then
pushd samples/aio/ >/dev/null
info "Upgrading ${OS_DISTRO} distro to OpenStack ${release_name} release"
vagrant ssh -- "cd /vagrant; OPENSTACK_RELEASE=$release_name OS_DEBUG=true ./upgrade.sh"
print_hw_stats
popd >/dev/null
else
warn "There is no more releases for ${OS_DISTRO} distro"
break
fi
release_pointer=$((release_pointer - 1))
done
}

function print_hw_stats {
! command -v vm_stat >/dev/null || vm_stat
! command -v VBoxManage >/dev/null || VBoxManage list runningvms --long
! command -v virsh >/dev/null || virsh list
! command -v vm_stat >/dev/null || vm_stat
! command -v VBoxManage >/dev/null || VBoxManage list runningvms --long
! command -v virsh >/dev/null || virsh list
}

initial_release=$(get_release)
if [[ -z $initial_release ]]; then
warn "There is no OpenStack release supported for ${OS_DISTRO}"
exit
warn "There is no OpenStack release supported for ${OS_DISTRO}"
exit
fi
pushd samples/aio/ >/dev/null
info "Deploying ${OS_DISTRO} distro with OpenStack ${initial_release} release"
Expand Down
94 changes: 47 additions & 47 deletions ci/update_distros.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,73 +11,73 @@
set -o errexit
set -o pipefail
if [[ ${OS_DEBUG:-false} == "true" ]]; then
set -o xtrace
set -o xtrace
fi

PROVIDER=${PROVIDER:-virtualbox}
msg=""

function _get_box_current_version {
version=""
attempt_counter=0
max_attempts=5
name="$1"
version=""
attempt_counter=0
max_attempts=5
name="$1"

if [ -f ./ci/pinned_vagrant_boxes.txt ] && grep -q "^${name} .*$PROVIDER" ./ci/pinned_vagrant_boxes.txt; then
version=$(grep "^${name} .*$PROVIDER" ./ci/pinned_vagrant_boxes.txt | awk '{ print $2 }')
else
until [ "$version" ]; do
metadata="$(curl -s "https://app.vagrantup.com/api/v1/box/$name")"
if [ "$metadata" ]; then
version="$(echo "$metadata" | python -c 'import json,sys;print(json.load(sys.stdin)["current_version"]["version"])')"
break
elif [ ${attempt_counter} -eq ${max_attempts} ]; then
echo "Max attempts reached"
exit 1
fi
attempt_counter=$((attempt_counter + 1))
sleep $((attempt_counter * 2))
done
fi
if [ -f ./ci/pinned_vagrant_boxes.txt ] && grep -q "^${name} .*$PROVIDER" ./ci/pinned_vagrant_boxes.txt; then
version=$(grep "^${name} .*$PROVIDER" ./ci/pinned_vagrant_boxes.txt | awk '{ print $2 }')
else
until [ "$version" ]; do
metadata="$(curl -s "https://app.vagrantup.com/api/v1/box/$name")"
if [ "$metadata" ]; then
version="$(echo "$metadata" | python -c 'import json,sys;print(json.load(sys.stdin)["current_version"]["version"])')"
break
elif [ ${attempt_counter} -eq ${max_attempts} ]; then
echo "Max attempts reached"
exit 1
fi
attempt_counter=$((attempt_counter + 1))
sleep $((attempt_counter * 2))
done
fi

echo "${version#*v}"
echo "${version#*v}"
}

function _vagrant_pull {
local alias="$1"
local name="$2"
local project_id="$3"
local family="$4"
local vb_controller="${5:-IDE Controller}"
local alias="$1"
local name="$2"
local project_id="$3"
local family="$4"
local vb_controller="${5:-IDE Controller}"

version=$(_get_box_current_version "$name")
version=$(_get_box_current_version "$name")

if [ "$(curl "https://app.vagrantup.com/${name%/*}/boxes/${name#*/}/versions/$version/providers/$PROVIDER.box" -o /dev/null -w '%{http_code}\n' -s)" == "302" ] && [ "$(vagrant box list | grep -c "$name .*$PROVIDER, $version")" != "1" ]; then
vagrant box remove --provider "$PROVIDER" --all --force "$name" || :
vagrant box add --provider "$PROVIDER" --box-version "$version" "$name"
elif [ "$(vagrant box list | grep -c "$name .*$PROVIDER, $version")" == "1" ]; then
echo "$name($version, $PROVIDER) box is already present in the host"
else
msg+="$name($version, $PROVIDER) box doesn't exist\n"
return
fi
# editorconfig-checker-disable
# prettier-ignore-start
cat <<EOT >>.distros_supported.yml
if [ "$(curl "https://app.vagrantup.com/${name%/*}/boxes/${name#*/}/versions/$version/providers/$PROVIDER.box" -o /dev/null -w '%{http_code}\n' -s)" == "302" ] && [ "$(vagrant box list | grep -c "$name .*$PROVIDER, $version")" != "1" ]; then
vagrant box remove --provider "$PROVIDER" --all --force "$name" || :
vagrant box add --provider "$PROVIDER" --box-version "$version" "$name"
elif [ "$(vagrant box list | grep -c "$name .*$PROVIDER, $version")" == "1" ]; then
echo "$name($version, $PROVIDER) box is already present in the host"
else
msg+="$name($version, $PROVIDER) box doesn't exist\n"
return
fi
# editorconfig-checker-disable
# prettier-ignore-start
cat <<EOT >>.distros_supported.yml
$alias:
name: $name
vb_controller: $vb_controller
version: "$version"
project_id: $project_id
family: $family
EOT
# prettier-ignore-end
# editorconfig-checker-enable
# prettier-ignore-end
# editorconfig-checker-enable
}

if ! command -v vagrant >/dev/null; then
# NOTE: Shorten link -> https://raw.githubusercontent.com/electrocucaracha/pkg-mgr_scripts/master/install.sh
curl -fsSL http://bit.ly/install_pkg | PKG=vagrant bash
# NOTE: Shorten link -> https://raw.githubusercontent.com/electrocucaracha/pkg-mgr_scripts/master/install.sh
curl -fsSL http://bit.ly/install_pkg | PKG=vagrant bash
fi

cat <<EOT >.distros_supported.yml
Expand All @@ -98,8 +98,8 @@ _vagrant_pull "debian_11" "debian/bullseye64" "debian-cloud" "debian-11" "SATA C
_vagrant_pull "debian_12" "debian/bookworm64" "debian-cloud" "debian-12" "SATA Controller"

if [ "$msg" ]; then
echo -e "$msg"
rm .distros_supported.yml
echo -e "$msg"
rm .distros_supported.yml
else
mv .distros_supported.yml distros_supported.yml
mv .distros_supported.yml distros_supported.yml
fi
8 changes: 4 additions & 4 deletions ci/update_versions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@
set -o errexit
set -o pipefail
if [[ ${OS_DEBUG:-false} == "true" ]]; then
set -o xtrace
set -o xtrace
fi

trap "make fmt" EXIT

# Update GitHub Action commit hashes
gh_actions=$(grep -r "uses: [a-zA-Z\-]*/[\_a-z\-]*@" .github/ | sed 's/@.*//' | awk -F ': ' '{ print $3 }' | sort -u)
for action in $gh_actions; do
commit_hash=$(git ls-remote "https://github.com/$action" | grep 'refs/tags/[v]\?[0-9][0-9\.]*$' | sed 's|refs/tags/[vV]\?[\.]\?||g' | sort -u -k2 -V | tail -1 | awk '{ printf "%s # %s\n",$1,$2 }')
# shellcheck disable=SC2267
grep -ElRZ "uses: $action@" .github/ | xargs -0 -l sed -i -e "s|uses: $action@.*|uses: $action@$commit_hash|g"
commit_hash=$(git ls-remote "https://github.com/$action" | grep 'refs/tags/[v]\?[0-9][0-9\.]*$' | sed 's|refs/tags/[vV]\?[\.]\?||g' | sort -u -k2 -V | tail -1 | awk '{ printf "%s # %s\n",$1,$2 }')
# shellcheck disable=SC2267
grep -ElRZ "uses: $action@" .github/ | xargs -0 -l sed -i -e "s|uses: $action@.*|uses: $action@$commit_hash|g"
done
Loading
Loading