Exemple de pipeline pour charger et télécharger des artefacts pour GitLab

  • Rversion finale: Yokohama
  • Mis à jour 31 juil. 2025
  • 1 minute de lecture
  • Exemples de pipeline pour GitLab contenant des étapes pour charger et télécharger des artefacts pour GitHub.

    Pour charger et télécharger des artefacts de GitLab vers JFrog, vous devez définir les paramètres JFROG_URL, JFROG_USER et JFROG_PASSWORD en tant que variables CI/CD dans votre instance GitLab.

    1. Accédez à votre projet, puis accédez à Paramètres > CI/CD > Variables.
    2. Sélectionnez Ajouter une variable.
    3. Saisissez le paramètre dans le champ Clé et la valeur du paramètre dans le champ Valeur.
    4. Sélectionnez Ajouter une variable pour enregistrer.
    Créez une variable CI/CD pour les 3 paramètres suivants :
    • JFROG_URL
    • JFROG_USER
    • JFROG_PASSWORD

    Définissez les paramètres.

    Exemple de pipeline pour charger des artefacts de GitLab vers JFrog

    
    stages:
      - upload
    
    variables:
      JFROG_CLI_HOME: ${CI_PROJECT_DIR}
      JFROG_ARTIFACTORY_URL: ${JFROG_URL}
      JFROG_ARTIFACTORY_REPO: "local_repo/gitlab"
      JFROG_ARTIFACTORY_USERNAME: ${JFROG_USER}
      JFROG_ARTIFACTORY_PASSWORD: ${JFROG_PASSWORD}
      ARTIFACT_PATH: "/"
      ARTIFACT_NAME: "servicenow-app-devops.zip"
      BUILD_NAME: "${CI_PROJECT_NAME}"
      BUILD_NUMBER: "${CI_PIPELINE_ID}"
      JFROG_CLI_BUILD_URL: ${CI_SERVER_URL}/$CI_PROJECT_PATH/-/pipelines/$CI_PIPELINE_ID
    
    upload:
      stage: upload
      script:
        - export BUILD_URL=${CI_SERVER_URL}/$CI_PROJECT_PATH/pipelines/$CI_PIPELINE_ID
        # upload artifact
        - jfrog rt u "servicenow-app-devops.zip"  "${JFROG_ARTIFACTORY_REPO}" --build-name=$CI_PROJECT_NAME --build-number=$CI_PIPELINE_ID
        # publish build-info
        - jfrog rt bp "${CI_PROJECT_NAME}" "${CI_PIPELINE_ID}"
      before_script:
      - mkdir -p ${JFROG_CLI_HOME}
      - export PATH=$PATH:${JFROG_CLI_HOME}
      - curl -fL https://getcli.jfrog.io | sh
      - jfrog config add artifactory-server --artifactory-url=${JFROG_ARTIFACTORY_URL} --user=${JFROG_ARTIFACTORY_USERNAME} --password=${JFROG_ARTIFACTORY_PASSWORD}

    Exemple de pipeline pour télécharger des artefacts de JFrog vers GitLab

    
    stages:
      - download
    
    variables:
      JFROG_CLI_HOME: ${CI_PROJECT_DIR}
      JFROG_ARTIFACTORY_URL: ${JFROG_URL}
      JFROG_ARTIFACTORY_REPO: "local_repo/gitlab"
      JFROG_ARTIFACTORY_USERNAME: ${JFROG_USER}
      JFROG_ARTIFACTORY_PASSWORD: ${JFROG_PASSWORD}
      ARTIFACT_PATH: "/"
      ARTIFACT_NAME: "servicenow-app-devops.zip"
      BUILD_NAME: "${CI_PROJECT_NAME}"
      BUILD_NUMBER: "${CI_PIPELINE_ID}"
      JFROG_CLI_BUILD_URL: ${CI_SERVER_URL}/$CI_PROJECT_PATH/-/pipelines/$CI_PIPELINE_ID
    
    download:
      stage: download
      script:
        # download artifact 
         - jfrog rt dl ${JFROG_ARTIFACTORY_REPO}/servicenow-app-devops.zip --include-dirs --build-name=$CI_PROJECT_NAME --build-number=$CI_PIPELINE_ID
        # publish build-info 
         - jfrog rt bp ${CI_PROJECT_NAME} ${CI_PIPELINE_ID}
      before_script:
      - mkdir -p ${JFROG_CLI_HOME}
      - export PATH=$PATH:${JFROG_CLI_HOME}
      - curl -fL https://getcli.jfrog.io | sh
      - jfrog config add artifactory-server --artifactory-url=${JFROG_ARTIFACTORY_URL} --user=${JFROG_ARTIFACTORY_USERNAME} --password=${JFROG_ARTIFACTORY_PASSWORD}