> ## Documentation Index
> Fetch the complete documentation index at: https://docs.corgea.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Chargement des scans

> Commencez à générer des correctifs pour votre dépôt

Deux options sont disponibles : Corgea Dropsite et la CLI Corgea.

<Info>
  **Prérequis** Vous disposez d’un compte Corgea

  **Scanner SAST** Vous disposez d’un scanner SAST tel que Checkmarx, CodeQL, Semgrep, Fortify, Coverity ou Snyk. Corgea prend actuellement en charge ces scanners ; Veracode et SonarQube sont prévus dans la roadmap.
</Info>

## Corgea Dropsite

Corgea Dropsite est une interface web qui permet d’ajouter facilement un projet à Corgea afin de l’analyser. Elle offre plusieurs moyens de charger votre code et les rapports de différents scanners de sécurité. Dropsite accepte des fichiers jusqu’à 200 Mo. Pour les projets plus volumineux, utilisez la CLI Corgea.

### Ajouter un projet

Pour ajouter un projet à Corgea, suivez ces étapes :
Accédez à la page Dropsite en cliquant sur le bouton « Ajouter un projet » dans la page Corgea Projects ou la page Scans.

<Frame>
  <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/add_project.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=a5c3236d7c3b96e8dd8098a04db3d612" style={{ borderRadius: '0.5rem' }} width="1098" height="730" data-path="images/add_project.png" />
</Frame>

Sur la page Dropsite, vous verrez plusieurs options pour ajouter votre projet :

<Frame>
  <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/dropsite_add_project.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=9485d69a1856ecf518b80b3e0514e4c9" style={{ borderRadius: '0.5rem' }} width="2434" height="1380" data-path="images/dropsite_add_project.png" />
</Frame>

#### Connectez votre dépôt (recommandé)

Cette option vous permet de connecter directement votre dépôt de code à Corgea via une intégration de contrôle de version configurée, incluant GitHub, GitLab, Azure DevOps, Bitbucket ou Harness.
Cliquez sur l’intégration de contrôle de version appropriée pour autoriser Corgea à accéder à vos dépôts.
Sélectionnez le dépôt que vous souhaitez ajouter à Corgea.

#### Ajouter un dépôt public

Si votre dépôt est public, indiquez son URL pour l’ajouter à Corgea.
Cliquez sur l’accordéon « Ajouter un dépôt public ».
2\. Saisissez l’URL de votre dépôt public dans le champ.
Cliquez sur le bouton « Ajouter ».

#### Chargement web

Cette option permet de charger un fichier ZIP contenant le code du projet.
Ouvrez la section « Chargement web ».
Cliquez sur « Charger », puis sélectionnez le fichier ZIP contenant le code.

<Tip>
  Pour réduire la taille du fichier et accélérer le traitement, excluez les bibliothèques tierces et les artefacts de build, par exemple `node_modules`, `vendor` et `dist`. Vous pouvez pour cela télécharger directement une archive ZIP depuis votre dépôt.
</Tip>

<Warning>
  Le chargement web est limité à 200 Mo par fichier. Pour les projets plus volumineux, utilisez la CLI Corgea.
</Warning>

Après avoir ajouté le projet, chargez un rapport provenant d’un scanner de sécurité pris en charge.

#### Chargement d’un rapport

<Frame>
  <img src="https://mintcdn.com/corgea/mpJUc1GyXtnVYEyT/images/upload_report.png?fit=max&auto=format&n=mpJUc1GyXtnVYEyT&q=85&s=ac858a4bdf28e8cc2e46552db583208a" style={{ borderRadius: '0.5rem' }} width="2512" height="2040" data-path="images/upload_report.png" />
</Frame>

<Steps>
  <Step title="Charger le rapport">
    Sélectionnez le fichier du rapport, généralement au format JSON, sur votre machine, puis déposez-le dans la zone de chargement.
    <Info>Corgea prend en charge les rapports Checkmarx (JSON), CodeQL (JSON), Snyk (SARIF), Semgrep (JSON), Fortify (FPR) et Coverity (XML).</Info>
  </Step>

  <Step title="Traitement">
    Une fois le rapport chargé, Corgea traite le projet et le rapport.
  </Step>

  <Step title="Voir les résultats">
    Vous serez redirigé vers le tableau de bord Corgea, où vous pourrez consulter les résultats d’analyse de votre projet.
  </Step>
</Steps>

Ces étapes permettent d’ajouter votre projet et de charger des rapports de sécurité dans Corgea pour analyse et remédiation.

### Corgea CLI

La CLI Corgea offre des fonctionnalités avancées pour intégrer Corgea à votre pipeline CI/CD, exécuter des scans personnalisés et charger des projets volumineux (> 200 Mo).
Ouvrez l’accordéon « Corgea CLI » pour en savoir plus sur l’installation et l’utilisation de la [CLI](install_cli).

Vous pouvez installer la CLI Corgea avec pip :

```bash theme={null}
pip install corgea-cli
```

[En savoir plus sur la CLI](install_cli)

#### Charger avec la CLI

<Steps>
  <Step title="Aller au dépôt">
    Allez dans le dépôt que vous souhaitez scanner :

    <CodeGroup>
      ```bash Bash theme={null}
      cd <<Respository Name>>
      ```
    </CodeGroup>
  </Step>

  <Step title="Exécuter le scan">
    <CodeGroup>
      ```bash Semgrep theme={null}
      corgea scan semgrep
      ```

      ```bash Snyk theme={null}
      corgea scan snyk
      ```

      ```bash Custom project name theme={null}
      corgea upload report.json --project-name my-service
      ```

      ```bash Checkmarx theme={null}
      # Create a scan with a JSON output for example:
      cx scan create --project-name juice-shop -s . --branch master --scan-types sast --report-format json --output-name report

      #Upload the vulnerability report to Corgea
      corgea upload report.json
      ```

      ```bash CodeQL theme={null}
      corgea upload <scan report in json>
      ```

      ```bash Fortify theme={null}
      corgea upload <scan report in FPR>
      ```

      ```bash Coverity theme={null}
      corgea upload <scan report in XML>
      ```
    </CodeGroup>
  </Step>

  <Step title="Voir les résultats">
    Une fois le scan terminé, un rapport de scan sera généré dans le dossier du dépôt et une copie sera envoyée à Corgea pour traitement.

    <Frame>
      <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/completed-scan.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=5e7ee36166bd94cddeb3f918c2bc53bc" style={{ borderRadius: '0.5rem' }} width="1194" height="205" data-path="images/completed-scan.png" />
    </Frame>
  </Step>

  <Step title="Consulter les correctifs">
    Selon le nombre de résultats, leur affichage peut prendre un certain temps. Comptez environ 10 minutes pour quelques centaines de résultats.

    Consultez les [correctifs](fixes) pour en savoir plus.
  </Step>
</Steps>

## Dépannage

<AccordionGroup>
  <Accordion title="Commande non trouvée">
    Cette erreur se produit lorsque la CLI Corgea n’est pas installée ou que son exécutable ne figure pas dans votre `PATH`.

    ```
    bash: corgea: command not found
    ```

    Suivez les instructions de la [section d’installation de la CLI](http://localhost:3001/install_cli).
  </Accordion>

  <Accordion title="Token non valide">
    Vérifiez que vous avez connecté la CLI avec le bon token depuis [https://www.corgea.app/integrations/](https://www.corgea.app/integrations/)
  </Accordion>

  <Accordion title="Non connecté">
    Une erreur peut indiquer que vous n’êtes pas connecté à votre outil SAST/SCA.

    Certains outils exigent de vous connecter pour utiliser l’outil. Par exemple, vous pouvez vous connecter à Semgrep avec la commande suivante :

    ```
      semgrep login
    ```
  </Accordion>

  <Accordion title="Échec de git show">
    Une erreur peut indiquer que la commande `git show` n’a pas pu s’exécuter.

    Le message fournit les causes possibles et les étapes de diagnostic :

    ```
      Command failed with output:
      fatal: not a git repository (or any of the parent directories): .git


      Failed to run 'git show -s --format=%B'. Possible reasons:

      - the git binary is not available
      - the current working directory is not a git repository
      - the current working directory is not marked as safe
          (fix with `git config --global --add safe.directory $(pwd)`)

      Try running the command yourself to debug the issue.
      Could not start scan Command failed with exit code: 128
    ```
  </Accordion>
</AccordionGroup>
