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

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

    Pour charger et télécharger des artefacts de GitLab à JFrog, les paramètres JFROG_URL, JFROG_USERet JFROG_PASSWORD doivent être définis en tant que variables CI/CD dans votre GitLab instance.

    1. Accédez à votre projet, puis accédez à Paramètres > CI/CD > Variables.
    2. Sélectionnez Ajouter une variable.
    3. Entrez le paramètre dans le champ Clé et entrez 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 à partir duquel charger les artefacts vers GitLabJFrog

    
    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 à partir duquel télécharger les artefacts vers JFrogGitLab

    
    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}