CI/CD ./mvnw Permission Denied

Bonjour,

Je viens d’initialiser un projet Jhipster sur un dépôt framagit et en voulant configurer une CI avec un stage build j’ai un permission denied sur la commande ./mvnw compile qui fonctionne bien en local.
Voici mon fichier de conf :

image: jhipster/jhipster:v7.0.1

cache:
  key: '$CI_COMMIT_REF_NAME'
  paths:
    - .maven/
stages:
  - check
  - build
  - test
  - package
  - release
  - deploy
before_script:
  - export NG_CLI_ANALYTICS="false"
  - export MAVEN_USER_HOME=`pwd`/.maven

nohttp:
  stage: check
  script:
    - ./mvnw -ntp checkstyle:check -Dmaven.repo.local=$MAVEN_USER_HOME

maven-compile:
  stage: build
  script:
    - ./mvnw -ntp compile -P-webapp -Dmaven.repo.local=$MAVEN_USER_HOME
  artifacts:
    paths:
      - target/classes/
      - target/generated-sources/
    expire_in: 1 day

maven-test:
  # DinD service is required for Testcontainers
  services:
    - docker:dind

  variables:
    # Instruct Testcontainers to use the daemon of DinD.
    DOCKER_HOST: 'tcp://docker:2375'
    # Improve performance with overlayfs.
    DOCKER_DRIVER: overlay2

  stage: test
  script:
    - ./mvnw -ntp verify -P-webapp -Dmaven.repo.local=$MAVEN_USER_HOME -Dspring.profiles.active=testcontainers
  artifacts:
    reports:
      junit:
        - target/surefire-reports/TEST-*.xml
        - target/failsafe-reports/TEST-*.xml
    paths:
      - target/surefire-reports
      - target/failsafe-reports
      - target/site
    expire_in: 1 day

frontend-test:
  stage: test
  script:
    - npm install
    - npm test
  artifacts:
    reports:
      junit: target/test-results/TESTS-results-jest.xml
    paths:
      - target/test-results
      - target/jacoco
    expire_in: 1 day

maven-package:
  stage: package
  script:
    - ./mvnw -ntp verify -Pprod -DskipTests -Dmaven.repo.local=$MAVEN_USER_HOME
  artifacts:
    paths:
      - target/*.jar
      - target/classes
    expire_in: 1 day

Est-ce que vous auriez une idée de ce qui ce passe ? :slight_smile:

Merci d’avance.

Est-ce que le fichier mvnw a bien la permission d’exécution ? Un ls -l mvnw dans la CI confirmera ou infirmera cette piste.

Le ls -l mvnw n’a effectivement pas les droits d’éxécution :frowning: comment lui donner les droits ?

J’ai trouvé !!!
Voici la commande à taper pour mettre à jour les droits pour l’exécution :

git update-index --chmod=+x mvnw