From 15bc641e4531431f09297d71d4d21ff05706b7df Mon Sep 17 00:00:00 2001 From: David D'ALMEIDA Date: Mon, 26 Feb 2024 17:36:31 +0100 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20de=20'.drone.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/.drone.yml b/.drone.yml index e69de29b..560f82cc 100644 --- a/.drone.yml +++ b/.drone.yml @@ -0,0 +1,90 @@ +kind: pipeline +type: docker +name: HeartWave + +trigger: + event: + - push + +steps: + # Test ✔️ + - name: test + image: composer:2.6 + commands: + - cd Sources + - rm -r vendor + - rm composer.lock + # Installe les dépendances PHP si nécessaire + - php composer.phar install --no-interaction + - ./vendor/bin/phpunit tests + + # Sonar static code analisis deployment + # TODO : use an image that already have unzip + - name: code-analysis + image: php:8.1-cli + environment: + SONAR_TOKEN: + from_secret: SONAR_TOKEN + commands: + - apt-get update && apt-get install -y curl unzip + - export SONAR_SCANNER_VERSION=4.7.0.2747 + - export SONAR_SCANNER_HOME=$HOME/.sonar/sonar-scanner-$SONAR_SCANNER_VERSION-linux + - curl --create-dirs -sSLo $HOME/.sonar/sonar-scanner.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-$SONAR_SCANNER_VERSION-linux.zip + - unzip -o $HOME/.sonar/sonar-scanner.zip -d $HOME/.sonar/ + - export PATH=$SONAR_SCANNER_HOME/bin:$PATH + - export SONAR_SCANNER_OPTS="-server" + - cd Sources + - sonar-scanner -D sonar.projectKey=HeartTrack -D sonar.host.url=https://codefirst.iut.uca.fr/sonar + depends_on: [ test ] + # build image and push on the registry ✔️ + - name: rewrite-urls + image: 'busybox:latest' + commands: + - cd Sources + - ls + - >- + find . -type f -exec sed -i -r + "s@(href|src)=\"/@\1=\"$${PLUGIN_CONTAINER_PATH}@g" {} + + settings: + container_path: https://codefirst.iut.uca.fr/containers/HeartDev-web/ + + - name: docker-build-and-push + image: plugins/docker + settings: + commands: ls + dockerfile: Sources/config/Dockerfile + context: Sources + registry: hub.codefirst.iut.uca.fr + repo: hub.codefirst.iut.uca.fr/david.d_almeida/web + mirror: https://proxy.iut.uca.fr:8443 + username: + from_secret: SECRET_REGISTRY_USERNAME + password: + from_secret: SECRET_REGISTRY_PASSWORD + depends_on: + - rewrite-urls + + - name: deploy-container + image: >- + hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: 'hub.codefirst.iut.uca.fr/david.d_almeida/web:latest' + CONTAINERNAME: web + COMMAND: create + OVERWRITE: true + ADMINS: david.d_almeida + depends_on: + - docker-build-and-push + + - name: notify + image: ruby:2.1 + when: + status: [ success ] + ref: + include: + - refs/tags/*-demo + commands: + - sh ./notifymail.sh + depends_on: [ docker-build-and-push ] + +