stages: - build variables: # OVH Container Registry URL (without https://) # Image name and tag (format: registry/project/image) IMAGE_NAME: "easyportal" IMAGE_TAG: "${OVH_REGISTRY_URL}/${IMAGE_NAME}:${CI_COMMIT_REF_SLUG}-${CI_PIPELINE_ID}" IMAGE_LATEST: "${OVH_REGISTRY_URL}/${IMAGE_NAME}:latest" build: stage: build image: docker:20.10.16 rules: - if: '$CI_COMMIT_BRANCH == "develop"' when: always - when: manual before_script: # Use host Docker daemon via socket - docker info # Login to OVH Container Registry - echo "Logging into OVH Container Registry..." - echo "$OVH_REGISTRY_PASSWORD" | docker login -u "$OVH_REGISTRY_USERNAME" "$OVH_REGISTRY_URL" --password-stdin script: # Build the FrankenPHP image - echo "Building Docker image..." - docker build --build-arg APP_ENV=prod --target frankenphp_prod -t $IMAGE_TAG -t $IMAGE_LATEST . # Push both tags to OVH registry - echo "Pushing image to OVH registry..." - docker push $IMAGE_TAG - docker push $IMAGE_LATEST # Display image info - echo "Successfully pushed:" - echo " - $IMAGE_TAG" - echo " - $IMAGE_LATEST" after_script: - docker logout $OVH_REGISTRY_URL || true