Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Travailler dans le cadre d'une modernisation continue
Gestion des sources
Utilisez atx ct source des commandes pour connecter des référentiels. Fournisseurs pris en charge : GitHub GitLab, Bitbucket, local.
GitHub organisations
Jeton : jeton d'accès personnel (classique) avec repo scope. Read-only pour l'analyse, dépôt complet pour la correction.
atx ct source add --namename--provider github --orgorg--tokenpat
GitLab groupes et utilisateurs
Jeton : jeton d'accès personnel avec api scope.
atx ct source add --namename--provider gitlab --orggroup-or-user--tokenpat# Self-hosted: atx ct source add --namename--provider gitlab --orggroup-or-user--tokenpat--url https://gitlab.example.com
Espaces de travail et projets Bitbucket
Bitbucket Cloud — domaines d'application :read:repository:bitbucket,,write:repository:bitbucket,read:pullrequest:bitbucket. write:pullrequest:bitbucket A également besoin --email de et--username.
atx ct source add --namename--provider bitbucket --orgworkspace--tokenapi-token--emailusername
Centre de données Bitbucket :
atx ct source add --namename--provider bitbucket --orgproject-key--tokenhttp-access-token--url https://bitbucket.example.com
Référentiels locaux
atx ct source add --namename--provider local --pathparent-directory
Important
--pathdoit pointer vers un répertoire parent contenant des dépôts git en tant que sous-répertoires, et non vers un seul dépôt.
Gestion des sources
atx ct source list atx ct source remove --namename
Découverte et gestion du référentiel
atx ct discovery scan --sourcenameatx ct discovery status --sourcenameatx ct discovery scan --sourcename--pathnew-directory
Après la découverte :
atx ct repository list atx ct repository list --sourcenameatx ct repository list --labels "team:frontend,priority:high" atx ct repository update --sourcename--repo "source::repo" --labels "team:frontend,priority:high" atx ct repository update --sourcename--labels "migration:wave-1"
Analyse en cours
Le --type drapeau indique le type d'analyse à exécuter :
rapid-techdebt-analysis— Dépendances obsolètes et gains faciles.tech-debt-comprehensive— AI-powered Analyse approfondie portant sur les dépendances, la sécurité, les modèles, les performances, la maintenabilité, l'architecture, la qualité du code et les résultats de l'infrastructure.security— Vulnérabilités et expositions en matière de sécurité.agentic-readiness— Préparation de vos référentiels pour les agents d'IA (frameworks, API, documentation).modernization-readiness— Des opportunités de modernisation dans tous les domaines de votre infrastructure, de vos applications, de vos données, de votre sécurité et de vos opérations.
atx ct analysis run --typetype--sourcename[--reposource::repo] [--wait] atx ct analysis get --idid--json atx ct analysis list --json atx ct analysis list --statuspending|running|complete|cancelled|failed--json atx ct analysis list --typetype--json atx ct analysis cancel --ididatx ct analysis delete --idid[--cascade-findings]
Analyse personnalisée
atx ct analysis run --type custom --transformation-namename--sourcesource--reposource::repo--wait
Configuration avec -g indicateur : clé-valeur, JSON ou chemin de fichier.
Liste des TD : atx custom def list
Gestion des résultats
atx ct findings list --json atx ct findings list --reposource::repo--sourcename--severityhigh|medium|low--typeanalysis-type--statusopen|dismissed|obsolete--analysis-idid--fix-transformtransform-name--json
Trouver des statuts
open— Actifdismissed— Rejeté manuellement (nécessite une raison)obsolete— System-set lorsque la nouvelle analyse ne produit plus le résultat
atx ct findings update --idid--status dismissed --reason "reason" atx ct findings update --idid--status open atx ct findings batch-update --idsid1,id2--status dismissed --reason "reason" atx ct findings get --ididatx ct findings delete --idid
Trouver l'obsolescence
Re-analysis marque les résultats résolus comme étant obsolètes. Ne peut pas être rouvert. Conservé à des fins d'audit.
Création de mesures correctives
Trois modes : basé sur les résultats, remplacement TD, TD direct.
atx ct remediation create --idsid1,id2--name "name" atx ct remediation create --idsid1,id2--transformation-nameTDatx ct remediation create --transformation-nameTD--reposource::repo
Sortie par fournisseur : GitHub PR, GitLab MR, Bitbucket PR, succursale locale.
Note
Le jeton doit disposer d'un accès en écriture pour être PR/MR créé.
Exécution locale avec --local drapeau.
atx ct remediation create --transformation-nameTD--reposource::repo-g "additionalPlanContext=Upgrade to Node.js 22" atx ct remediation list atx ct remediation status --ididatx ct remediation retry --ididatx ct remediation cancel --ididatx ct remediation delete --idid
Exécution à distance
Par défaut, les analyses et les corrections s'exécutent sur votre machine locale. Pour les portefeuilles plus importants, vous pouvez déléguer le travail à une infrastructure distante. Vous pouvez fonctionner sur une AWS Transform-managed infrastructure sans rien à provisionner (analyses uniquement), ou sur Compte AWS une infrastructure que vous provisionnez et gérez dans votre instance Amazon EC2 persistante ou des tâches AWS Batch (Fargate). Les atx ct remote commandes approvisionnent, exécutent, surveillent et démantelent l'infrastructure gérée par le client. Quel que soit l'endroit où l'exécution a lieu, vous créez toutes les ressources dans votre ordinateur Compte AWS et votre code source reste sous votre contrôle.
Note
Le provisionnement, la mise à jour et le démantèlement de l'infrastructure créent et modifient des AWS CloudFormation
piles et des rôles IAM, et nécessitent des autorisations d'administrateur. Passez --ack pour en accuser réception et ignorez l'invite interactive. L'exécution d'analyses et de corrections sur une infrastructure déjà provisionnée utilise des politiques d'exécution dotées du moindre privilège. Consultez la section Marquage et contrôle d'accès et les options de calcul pour les politiques gérées concernées. Comment ? AWS Transformez les travaux de modernisation continue
En cours d'exécution AWS Transform-managed infrastructure (pas de provisionnement)
Pour exécuter une analyse à distance sans rien provisionner, utilisez--mode aws-managed. La soumission est envoyée à AWS Transform, qui effectue l'analyse de l' AWS Transform-managed infrastructure. Il n'y a aucune pile à provisionner, aucun réseau à configurer et aucune information d'identification à stocker dans AWS Secrets Manager. La soumission est définitive. Choisissez la AWS région dans laquelle s'exécute la charge de travail--region.
# Run an analysis on AWS Transform-managed infrastructure atx ct remote analysis --typetype--mode aws-managed --sourcesname[--reposrepo1,repo2] [--regionregion] # Poll the submission (there is no remote status command in this mode) atx ct analysis get --idid--json
Ce mode exécute uniquement des analyses. Il ne prend pas en charge la correction, le type custom d'analyse ou les sources locales. Comme il n'y a pas de pile--stack-name, les --batch-name options --tags--existing-instance,, et ne s'appliquent pas. Une seule soumission couvre jusqu'à 100 référentiels. Pour couvrir des domaines plus larges, répartissez-les sur plusieurs soumissions avec--repos. Contrairement à Amazon EC2 et aux exécutions par lots, vous pouvez suivre la progression avec atx ct analysis get plutôt queatx ct remote status.
Mise en réseau
Le calcul à distance doit être exécuté dans des sous-réseaux privés. Découvrez le réseau existant ou créez un nouveau VPC avant de procéder au provisionnement :
# List VPCs, private subnets, and security groups in the current account and Region atx ct remote network discover atx ct remote network discover --vpcvpc-id--json # Create a new VPC with private subnets, a NAT gateway, and a security group atx ct remote network create --cidr10.1.0.0/16--ack
Provisionnement de l'infrastructure
Déployez la pile Amazon EC2 ou Batch. Omettez --execute de prévisualiser le modèle ou l'ensemble de modifications ; ajoutez-le --execute pour appliquer.
Le provisionnement crée la pile de calcul pour le mode que vous choisissez, ainsi qu'une pile de planificateur :
Batch : une file d'attente de tâches et un environnement de calcul AWS par lots, une définition de tâche avec l'image du conteneur de modernisation continue, des rôles IAM pour l'exécution des tâches et une fonction Lambda pour la soumission des tâches. Batch nécessite un groupe de sécurité.
Amazon EC2 : instance Amazon EC2 persistante dotée d'un profil d'instance IAM et d'un groupe de sécurité. Si vous omettez
--securityGroup, la pile crée un groupe de sécurité sans règles entrantes ; l'accès se fait via SSM.Planificateur :
atx-schedulerpile (un groupe de EventBridge planification Amazon Scheduler et un rôle d'invocation) utilisée par les analyses récurrentes. Laissez-passer--skip-schedulerpour vous désinscrire.
# Preview, then deploy an EC2 stack atx ct remote provision --mode ec2 --vpcvpc-id--subnetssubnet-a,subnet-batx ct remote provision --mode ec2 --vpcvpc-id--subnetssubnet-a,subnet-b--execute --ack # Deploy a Batch stack atx ct remote provision --mode batch --vpcvpc-id--subnetssubnet-a,subnet-b--securityGroupsg-id--execute --ack # Update an existing stack to the latest template, or tear it down atx ct remote update --modeec2|batch--execute --ack atx ct remote teardown --modeec2|batch--execute --ack
Image de conteneur
Lorsque vous exécutez des analyses et des corrections à distance, elles s'exécutent dans une image de conteneur. Par défaut, lorsque vous provisionnez un environnement distant, celui-ci utilise l'image publique AWS Transform,public.ecr.aws/d9h8z6l7/aws-transform:latest. Batch la définit comme image de définition de tâche. Amazon EC2 l'utilise comme image du coureur.
Pour exécuter une autre image (par exemple, une image Amazon ECR privée qui regroupe des langues ou des outils --image-uri supplémentaires), vous devez procéder à la mise en service :
# Batch: provision with a custom image atx ct remote provision --mode batch --vpcvpc-id--subnetssubnet-a,subnet-b--securityGroupsg-id--image-uriaccount-id.dkr.ecr.region.amazonaws.com/repo:tag--execute --ack # EC2: provision with a custom image atx ct remote provision --mode ec2 --vpcvpc-id--subnetssubnet-a,subnet-b--image-uriaccount-id.dkr.ecr.region.amazonaws.com/repo:tag--execute --ack
Stockage des informations d'identification source
Les conteneurs distants clonent vos référentiels à l'aide de jetons stockés dans AWS Secrets Manager. Enregistrez un jeton pour chaque source SCM avant d'exécuter une analyse ou une correction à distance :
atx ct remote credentials --sourcename--tokentokenatx ct remote credentials --sourcename--remove
Courir à distance
L'analyse à distance exécute un conteneur pour chaque référentiel ; la correction à distance exécute un conteneur pour chaque découverte. Utilisez --sources--repos, et --labels pour contrôler le fan-out, --stack-name et/ou --tags pour sélectionner la pile provisionnée à utiliser.
# Run analysis across a source on Batch atx ct remote analysis --typetype--mode batch --sourcesname[--reposrepo1,repo2] [--labels "team:frontend"] # Run remediation for specific findings on EC2 atx ct remote remediation --mode ec2 --idsid1,id2atx ct remote remediation --mode ec2 --sourcesname--min-severity high
Surveillance et gestion des courses
# Check whether infrastructure is deployed atx ct remote detect --modeec2|batch# Track a submission (Batch by batch ID, EC2 by group ID) atx ct remote status --batchbatch-id--stack-namenameatx ct remote status --groupec2-group-id--wait # Resume a partially-failed Batch run (re-submits only incomplete repos). # On resume, --batch-name takes the existing batch ID reported by "remote status --batch". atx ct remote analysis --typetype--mode batch --sourcesname--resume-incomplete --batch-namebatch-id# Cancel a running submission atx ct remote cancel --mode batch --batchbatch-id--stack-namenameatx ct remote cancel --mode ec2 --groupec2-group-id
Planifier une analyse récurrente
Permet atx ct schedule d'exécuter des analyses automatiquement à une cadence récurrente. Vous pouvez planifier des analyses mais pas des mesures correctives. Miroir des options d'emploiatx ct remote analysis. Les horaires sont exécutés à distance, de deux manières différentes :
AWS Transform-managed(
--mode aws-managed) : un calendrier côté serveur qui déclenche des analyses sur AWS Transform-managed l'infrastructure. Il n'y a pas de EventBridge calendrier Amazon et il n'y a rien à prévoir. Cela nécessite un rôle d'exécution (--execution-role) que AWS Transform assume à chaque exécution (voirRôle d'exécution pour AWS Transform-managed horaires).Customer-managed(
--mode ec2|batch) : un calendrier Amazon EventBridge Scheduler intégré à votre compte répartit chaque exécution vers une instance Amazon EC2 persistante ou une pile de AWS lots que vous provisionnez en premier (voir). Exécution à distance
La --recurrence valeur acceptedaily, weekly: (par exemple,DAYweekly:MONDAY), ou monthly: où NN est un jour compris entre 1 et 28. Les horaires relatifs à AWS Transform-managed l'infrastructure sont exécutés en UTC.
# AWS Transform-managed schedule (no infrastructure; requires an execution role) atx ct schedule create --namename--mode aws-managed --execution-rolerole-arn--recurrencedaily--typetype--sourcesname[--reposrepo1,repo2] # Customer-managed schedule (EventBridge Scheduler dispatching to your EC2 or Batch stack) atx ct schedule create --namename--modeec2|batch--recurrenceweekly:MONDAY--typetype--sourcesname[--reposrepo1,repo2] # Manage schedules of either type by their schedule ID (from schedule list) atx ct schedule list atx ct schedule getschedule-idatx ct schedule disableschedule-idatx ct schedule enableschedule-idatx ct schedule deleteschedule-id
Pour afficher les analyses exécutées par un calendrier, utilisezatx ct analysis list --schedule-id , qui renvoie les exécutions déclenchées par le calendrier, les plus récentes en premier.schedule-id
Pour supprimer le rôle de planificateur et le groupe de planification utilisés par les planifications gérées par le client, exécutez. atx ct schedule teardown --execute
Rôle d'exécution pour AWS Transform-managed horaires
Un planning créé avec --mode aws-managed nécessite un --execution-role ARN que AWS Transform assume à chaque exécution du planning. Configurez le rôle comme suit :
L'identité qui crée le planning doit disposer d'une
iam:PassRoleautorisation sur le rôle d'exécution.La politique de confiance du rôle doit permettre au
transform-custom.amazonaws.com.rproxy.govskope.caresponsable du service de l'assumer.Au minimum, le rôle doit être AWSTransformCustomFullAccess associé à la politique AWS gérée, ainsi que des
secretsmanager:DescribeSecretautorisations sursecretsmanager:GetSecretValueles secrets sous leatx/*préfixe afin que les exécutions planifiées puissent récupérer les informations d'identification du clone source.
La politique en ligne suivante accorde au AWS Secrets Manager l'accès dont les exécutions planifiées ont besoin pour récupérer les informations d'identification du clone source. Attachez-le au rôle d'exécution à côté de la politique AWSTransformCustomFullAccess gérée, en account-id remplaçant region et par la AWS région et le compte dans lesquels le calendrier s'exécute.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AtxSourceCredentials", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "arn:aws:secretsmanager:region:account-id:secret:atx/*" } ] }
Marquage et contrôle d'accès
Vous pouvez appliquer des balises (key=valuepaires séparées par des virgules) aux sources, aux analyses et aux corrections à l'aide de cette option. --tags Les balises sont également prises en charge sur l'infrastructure distante, les informations d'identification stockées et les ressources réseau. Les balises vous permettent d'organiser les ressources. Combinées aux conditions des balises IAM, les balises implémentent le contrôle d'accès basé sur les attributs (ABAC) afin que les équipes n'accèdent qu'aux ressources qui contiennent leurs balises.
atx ct source add --namename--provider github --orgorg--tokenpat--tagsteam=platform,env=prodatx ct analysis run --typetype--sourcename--tagsteam=platformatx ct remediation create --idsid1,id2--tagsteam=platform
Par défaut, les ressources sont balisées avec les balises que vous définissez dans~/.aws/atx/settings.json. Ajoutez les balises que vous souhaitez appliquer à chaque ressource ci-dessousapplyTags, et elles deviendront vos balises par défaut.
{ "applyTags": [ { "team": "alpha" } ] }
Note
Les balises transmises --tags sont fusionnées avec toutes les balises par défaut configurées, et chaque clé est --tags gagnante aux deux endroits.
AWS Transformez les applications Web
Utilisez l'application Web AWS Transform pour créer et exécuter des analyses, examiner les résultats, créer des solutions et suivre les demandes d'extraction générées dans vos sources de code.
Avant d'utiliser l'application Web, votre organisation doit activer votre identité d'utilisateur pour accéder à AWS Transform. Pour plus d'informations sur la configuration de AWS Transform, voir Configuration de AWS Transform.
Connexion
Pour accéder à l'application Web AWS Transform, procédez comme suit.
Ouvrez
https://aws.amazon.com/transform/et connectez-vous à l'aide des informations d'identification AWS IAM Identity Center.Si la modernisation continue n'apparaît pas, connectez-vous plutôt avec des informations d'identification IAM :
Dans la console AWS de gestion, ouvrez AWS Transform et choisissez Paramètres.
Activez Access AWS Transform à l'aide des informations d'identification IAM.
Copiez l'URL de l'application Web (avec IAM) et collez-la dans la même fenêtre de navigateur que celle où la console est ouverte.
Ouvrez le menu de navigation de gauche et choisissez Modernisation continue.
Modes d'infrastructure
Lorsque vous créez une analyse, choisissez l'un des modes d'infrastructure suivants :
AWS géré — Exécuté sur une infrastructure gérée par AWS Transform. Vous n'avez pas besoin de provisionner d'infrastructure.
Appartenant au client — Exécutez sur une pile déployée dans votre propre environnement Compte AWS. Utilisez ce mode lorsque vous avez besoin de contrôler le calcul, la mise en réseau ou la configuration de sécurité.
Note
Pour effectuer une analyse de sécurité, utilisez l'infrastructure appartenant au client. L'analyse de sécurité s'exécute sur l'agent de sécurité déployé sur votre compte.
Pour utiliser l'infrastructure appartenant au client, ouvrez l'onglet Paramètres. Utilisez les liens de AWS CloudFormation création rapide pour déployer les piles suivantes dans l'ordre :
AtxDispatcherStack— Répartiteur de messages (toujours obligatoire).Pile de calcul :
AtxInfrastructureStack(AWS Batch) ouatx-runner(Amazon EC2).atx-scheduler— Nécessaire pour les analyses programmées récurrentes.AtxSecurityAgentStack-<region>— Nécessaire uniquement pour l'analyse de sécurité.
Pour le CLI-based provisionnement et la configuration réseau, consultezExécution à distance.
Démarrage du flux de travail
Connecter des sources : ouvrez l'onglet Sources et ajoutez des référentiels depuis GitHubGitLab, ouBitbucket.
Exécuter ou planifier une analyse : ouvrez l'onglet Analyses, sélectionnez des référentiels, choisissez un type d'analyse, sélectionnez un mode d'infrastructure, puis choisissez Exécuter. Pour exécuter selon une cadence récurrente (quotidienne, hebdomadaire ou mensuelle), choisissez Planifier à la place.
Examiner les résultats — Ouvrez l'onglet Résultats pour afficher les résultats par niveau de gravité.
Créer une correction : sélectionnez les résultats et choisissez Créer une correction.
Passez en revue les pull requests : ouvrez l'onglet Corrections pour afficher les liens PR générés par référentiel.
Discutez avec AWS Transform directement depuis l'application Web pour poser des questions sur vos analyses, vos résultats ou les mesures correctives.