Skip to content

Commit d4efb6f

Browse files
committed
add code env image build from gh workflow
1 parent 3f1448e commit d4efb6f

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

.github/workflows/docker-publish.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,3 +116,35 @@ jobs:
116116
- name: Build and push cde image
117117
run: |
118118
kubectl exec -it -n ${{ env.KUBE_NAMESPACE }} ${{ env.POD_NAME }} -- sh -c "cd dss;./bin/dssadmin build-base-image --type cde --with-py311 --with-py39 && docker tag \$(docker images | egrep '^dku-cde-base.*${{env.DSS_VERSION}}' | awk '{print \$1 "'"'":"'"'" \$2}') ${{ secrets.DOCKER_REGISTRY }}/\$(docker images | egrep '^dku-cde-base.*${{env.DSS_VERSION}}' | awk '{print \$1 "'"'":"'"'" \$2}') && docker push ${{ secrets.DOCKER_REGISTRY }}/\$(docker images | egrep '^dku-cde-base.*${{env.DSS_VERSION}}' | awk '{print \$1 "'"'":"'"'" \$2}')"
119+
120+
- name: Check if code-env images exist
121+
id: code-env-check
122+
run: |
123+
# Vérifier si les images de code-env existent déjà dans le registry
124+
IMAGE_PREFIX="${{ secrets.DOCKER_REGISTRY }}/dku-code-env"
125+
VERSION="${{ env.DSS_VERSION }}"
126+
127+
# Vérifier les images Python 3.9 et 3.11
128+
if docker manifest inspect "${IMAGE_PREFIX}-python39:${VERSION}" > /dev/null 2>&1 && \
129+
docker manifest inspect "${IMAGE_PREFIX}-python311:${VERSION}" > /dev/null 2>&1; then
130+
echo "Code-env images exist"
131+
echo "::set-output name=code_env_exists::true"
132+
else
133+
echo "Code-env images do not exist"
134+
echo "::set-output name=code_env_exists::false"
135+
fi
136+
137+
- name: Build and push code-env images
138+
if: steps.code-env-check.outputs.code_env_exists == 'false'
139+
run: |
140+
# Construire les images de code-env
141+
kubectl exec -it -n ${{ env.KUBE_NAMESPACE }} ${{ env.POD_NAME }} -- sh -c "cd dss && ./bin/dssadmin build-container-exec-code-env-images --all --with-py311 --with-py39"
142+
143+
# Récupérer la liste des images construites et les pousser vers le registry
144+
kubectl exec -it -n ${{ env.KUBE_NAMESPACE }} ${{ env.POD_NAME }} -- sh -c "
145+
for img in \$(docker images | grep '^dku-code-env' | awk '{print \$1\":\"\$2}'); do
146+
echo \"Tagging and pushing \$img\"
147+
docker tag \$img ${{ secrets.DOCKER_REGISTRY }}/\$img
148+
docker push ${{ secrets.DOCKER_REGISTRY }}/\$img
149+
done
150+
"

0 commit comments

Comments
 (0)