Skip to content

auto: Alex V. updating versions for prod environments #87

auto: Alex V. updating versions for prod environments

auto: Alex V. updating versions for prod environments #87

Workflow file for this run

name: PC/amd64 Execution Engine releases
on:
push:
paths:
- 'e2/release.yaml'
concurrency:
group: e2-release-process
cancel-in-progress: false
jobs:
handle-edge-device-releases:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Pull, tag, and push AMD64 images
run: |
# Parse the release.yaml file to extract versions
yq e '.application.envs[] | .name + ":" + (.version | tostring)' e2/release.yaml > temp.yaml
ENVS=$(cat temp.yaml)
echo "Recap step: attempting to process the following releases:"
echo "$ENVS"
echo "Processing steps..."
echo "$ENVS" | while IFS=: read -r env version; do
version=${version//[[:space:]]/} # Trim whitespace from version
IMAGE="aixpand/exe_eng:$version"
NEW_TAG="aixpand/exe_eng:$env"
echo "##################################################"
echo "Environment: $env <- Version: $version"
echo "##################################################"
df -h
# Purge and prune Docker system before each iteration
echo "Pruning Docker system to free up space..."
docker system prune -f
# Pull the specified version
echo "Pulling $IMAGE..."
if ! docker pull $IMAGE; then
echo "Failed to pull image $IMAGE"
exit 1
fi
# Tag and push the image with the environment tag
echo "Tagging $IMAGE as $NEW_TAG..."
docker tag $IMAGE $NEW_TAG
echo "Pushing $NEW_TAG..."
docker push $NEW_TAG
df -h
# Clean up the local Docker images to free up space
echo "Removing local Docker images..."
docker rmi $IMAGE
docker rmi $NEW_TAG
done
shell: bash
- name: Logout from Docker Hub
run: docker logout