Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 2c59c6f9 authored by KADDOUR Sidi Mohammed's avatar KADDOUR Sidi Mohammed
Browse files

update readme.md

parent ffe2f276
No related branches found
No related tags found
No related merge requests found
...@@ -4,48 +4,57 @@ stages: ...@@ -4,48 +4,57 @@ stages:
- deploy - deploy
variables: variables:
DOCKER_USERNAME: "medkaddour" DOCKER_REGISTRY: "registry.gitlab.com"
TAG: "latest" PROJECT_NAME: "surveillance-system"
DEPLOY_ENV: "local" # Change to 'cloud' if deploying to the cloud K8S_NAMESPACE: "surveillance-system"
before_script: # Build stage: Builds Docker images for all services
- echo "Setting up environment..."
# Build stage: Build the Docker images
build: build:
stage: build stage: build
services:
- docker:dind
image: docker:stable
script: script:
- echo "Logging in to Docker registry..."
- echo "$CI_REGISTRY_PASSWORD" | docker login $CI_REGISTRY -u "$CI_REGISTRY_USER" --password-stdin
- echo "Building Docker images..." - echo "Building Docker images..."
- docker build -t ${DOCKER_USERNAME}/camera:${TAG} ./services/camera - docker build -t $CI_REGISTRY_IMAGE/camera:latest ./services/camera
- docker build -t ${DOCKER_USERNAME}/motion_detector:${TAG} ./services/motion_detector - docker build -t $CI_REGISTRY_IMAGE/motion_detector:latest ./services/motion_detector
- docker build -t ${DOCKER_USERNAME}/object_recognizer:${TAG} ./services/object_recognizer - docker build -t $CI_REGISTRY_IMAGE/object_recognizer:latest ./services/object_recognizer
- echo "Pushing Docker images to registry..."
- docker push $CI_REGISTRY_IMAGE/camera:latest
- docker push $CI_REGISTRY_IMAGE/motion_detector:latest
- docker push $CI_REGISTRY_IMAGE/object_recognizer:latest
only: only:
- main - main
# Test stage: Run unit tests (optional, can be customized based on your services) # Test stage: Runs tests for each service
test: test:
stage: test stage: test
image: python:3.9
before_script:
- pip install pytest
script: script:
- echo "Running tests..." - echo "Running tests for Camera service..."
- docker run ${DOCKER_USERNAME}/camera:${TAG} pytest tests/ - pytest ./services/camera/tests
- docker run ${DOCKER_USERNAME}/motion_detector:${TAG} pytest tests/ - echo "Running tests for Motion Detection service..."
- docker run ${DOCKER_USERNAME}/object_recognizer:${TAG} pytest tests/ - pytest ./services/motion_detector/tests
- echo "Running tests for Object Recognizer service..."
- pytest ./services/object_recognizer/tests
only: only:
- main - main
# Deploy stage: Deploy using Docker Compose # Deploy stage: Deploys services to Kubernetes
deploy: deploy:
stage: deploy stage: deploy
image: bitnami/kubectl:latest
before_script:
- echo "$KUBE_CONFIG" | base64 -d > kubeconfig
- export KUBECONFIG=$(pwd)/kubeconfig
script: script:
- echo "Deploying the system..." - echo "Deploying to Kubernetes namespace $K8S_NAMESPACE..."
- if [ "$DEPLOY_ENV" == "local" ]; then - kubectl apply -f k8s/deployment.yaml
docker-compose -f ./deploy/docker-compose/docker-compose.yml down --volumes --remove-orphans; - kubectl apply -f k8s/service.yaml
docker-compose -f ./deploy/docker-compose/docker-compose.yml up -d --build --force-recreate; - echo "Deployment completed."
fi
- if [ "$DEPLOY_ENV" == "cloud" ]; then
docker-compose -f ./deploy/docker-compose/docker-compose.yml down --volumes --remove-orphans;
docker-compose -f ./deploy/docker-compose/docker-compose.yml pull --ignore-pull-failures;
docker-compose -f ./deploy/docker-compose/docker-compose.yml up -d --build --force-recreate;
fi
only: only:
- main - main
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment