Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Lavorare con una modernizzazione continua
Gestione delle fonti
Usa atx ct source i comandi per connettere i repository. Provider supportati: GitHub, GitLab, Bitbucket, local.
GitHub organizzazioni
Token: token di accesso personale (classico) con repo ambito. Read-only per l'analisi, repository completo per la correzione.
atx ct source add --namename--provider github --orgorg--tokenpat
GitLab gruppi e utenti
Token: token di accesso personale con api ambito.
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
Spazi di lavoro e progetti Bitbucket
Bitbucket Cloud: ambiti:,,,. read:repository:bitbucket write:repository:bitbucket read:pullrequest:bitbucket write:pullrequest:bitbucket Inoltre ha bisogno di e. --email --username
atx ct source add --namename--provider bitbucket --orgworkspace--tokenapi-token--emailusername
Centro dati Bitbucket:
atx ct source add --namename--provider bitbucket --orgproject-key--tokenhttp-access-token--url https://bitbucket.example.com
Repository locali
atx ct source add --namename--provider local --pathparent-directory
Importante
--pathdeve puntare a una directory principale contenente git repos come sottodirectory, non a un singolo repository.
Gestione delle fonti
atx ct source list atx ct source remove --namename
Individuazione e gestione dei repository
atx ct discovery scan --sourcenameatx ct discovery status --sourcenameatx ct discovery scan --sourcename--pathnew-directory
Dopo la scoperta:
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"
Analisi in corso
Il --type flag specifica il tipo di analisi da eseguire:
rapid-techdebt-analysis— Dipendenze obsolete e vincite facili.tech-debt-comprehensive— AI-powered Analisi più approfondita su dipendenza, sicurezza, pattern, prestazioni, manutenibilità, architettura, qualità del codice e risultati dell'infrastruttura.security— Vulnerabilità ed esposizioni in materia di sicurezza.agentic-readiness— Disponibilità dei repository per gli agenti di intelligenza artificiale (framework, API, documentazione).modernization-readiness— Opportunità di modernizzazione in tutte le dimensioni dell'infrastruttura, delle applicazioni, dei dati, della sicurezza e delle operazioni.
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]
Analisi personalizzata
atx ct analysis run --type custom --transformation-namename--sourcesource--reposource::repo--wait
Configurazione con -g flag: chiave-valore, JSON o percorso del file.
Elenca i TD: atx custom def list
Gestione degli esiti
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
Ricerca degli stati
open— Attivodismissed— Ignorato manualmente (richiede una motivazione)obsolete— System-set quando una nuova analisi non produce più il risultato
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
Scoprire l'obsolescenza
Re-analysis contrassegna i risultati risolti come obsoleti. Non può essere riaperto. Conservato per l'audit.
Creazione di correzioni
Tre modalità: basata sui risultati, TD override, TD diretto.
atx ct remediation create --idsid1,id2--name "name" atx ct remediation create --idsid1,id2--transformation-nameTDatx ct remediation create --transformation-nameTD--reposource::repo
Produzione per fornitore: GitHub PR, GitLab MR, Bitbucket PR, filiale locale.
Nota
Il token deve avere accesso in scrittura per la PR/MR creazione.
Esecuzione locale con --local flag.
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
Esecuzione remota
Per impostazione predefinita, le analisi e le correzioni vengono eseguite sul computer locale. Per portafogli più grandi, puoi scaricare il lavoro sull'infrastruttura remota. Puoi eseguire l'esecuzione su AWS Transform-managed un'infrastruttura che non richiede il provisioning (solo analisi) o su un'infrastruttura di cui esegui il provisioning e gestisci all'interno della tua azienda Account AWS: un'istanza persistente di Amazon EC2 o AWS processi Batch (Fargate). I atx ct remote comandi forniscono, eseguono, monitorano e distruggono l'infrastruttura gestita dal cliente. Indipendentemente dal luogo in cui avviene l'esecuzione, crei tutte le risorse Account AWS e il codice sorgente rimane sotto il tuo controllo.
Nota
Il provisioning, l'aggiornamento e lo smontaggio dell'infrastruttura creano e modificano gli AWS CloudFormation
stack e i ruoli IAM e richiedono le autorizzazioni di amministratore. Passa --ack per confermarlo e salta il prompt interattivo. L'esecuzione di analisi e correzioni su un'infrastruttura già predisposta utilizza politiche di esecuzione con privilegi minimi: visualizza e inserisci le opzioni di calcolo per le policy gestite coinvolte. Etichettatura e controllo degli accessi In che modo AWS Transform: opere di modernizzazione continua
In esecuzione su AWS Transform-managed infrastruttura (nessun provisioning)
Per eseguire un'analisi in remoto senza effettuare alcun provisioning, usa. --mode aws-managed L'invio va a AWS Transform, che esegue l'analisi sull'infrastruttura. AWS Transform-managed Non ci sono stack da fornire, nessuna rete da configurare e nessuna credenziale da archiviare in AWS Secrets Manager. L'invio è la corsa. Scegli la AWS regione in cui viene eseguito il carico di lavoro. --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
Questa modalità esegue solo analisi. Non supporta la correzione, il tipo di custom analisi o le fonti locali. Poiché non esiste uno stack, le --batch-name opzioni --stack-name--tags,--existing-instance, e non sono applicabili. Un singolo invio copre fino a 100 repository. Per coprire ambiti più ampi, suddividili su più invii con. --repos A differenza di Amazon EC2 e Batch Runs, i progressi vengono monitorati con anziché conatx ct analysis get. atx ct remote status
Rete
L'elaborazione remota deve essere eseguita in sottoreti private. Scopri le reti esistenti o crea un nuovo VPC prima di effettuare il provisioning:
# 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
Provisioning dell'infrastruttura
Implementa lo stack Amazon EC2 o Batch. Ometti --execute di visualizzare in anteprima il modello o il changeset; aggiungi per applicare. --execute
Il provisioning crea lo stack di calcolo per la modalità scelta, più uno stack di scheduler:
Batch: una coda di lavoro e un ambiente di elaborazione AWS Batch, una definizione del lavoro con l'immagine del contenitore di modernizzazione continua, ruoli IAM per l'esecuzione dei lavori e una funzione Lambda per l'invio dei lavori. Batch richiede un gruppo di sicurezza.
Amazon EC2: un'istanza Amazon EC2 persistente con un profilo di istanza IAM e un gruppo di sicurezza. Se ometti
--securityGroup, lo stack crea un gruppo di sicurezza senza regole in entrata; l'accesso avviene tramite SSM.Scheduler: uno
atx-schedulerstack (un gruppo di EventBridge pianificazione e un ruolo di chiamata di Amazon Scheduler) utilizzato dalle analisi ricorrenti. Passa per annullare la sottoscrizione.--skip-scheduler
# 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
Immagine del contenitore
Quando esegui analisi e correzioni in remoto, queste vengono eseguite all'interno di un'immagine del contenitore. Per impostazione predefinita, quando si esegue il provisioning di un ambiente remoto, viene utilizzata l'immagine pubblica AWS Transform,. public.ecr.aws/d9h8z6l7/aws-transform:latest Batch la imposta come immagine di definizione del lavoro. Amazon EC2 la utilizza come immagine del runner.
Per eseguire un'immagine diversa, ad esempio un'immagine privata Amazon ECR che raggruppa linguaggi o strumenti aggiuntivi, è necessario eseguire il provisioning di: --image-uri
# 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
Memorizzazione delle credenziali di origine
I contenitori remoti clonano i tuoi repository utilizzando i token archiviati in Secrets Manager. AWS Registra un token per ogni fonte SCM prima di eseguire l'analisi o la correzione remota:
atx ct remote credentials --sourcename--tokentokenatx ct remote credentials --sourcename--remove
Esecuzione in remoto
L'analisi remota esegue un contenitore per ogni repository; la riparazione remota esegue un contenitore per ogni risultato. Usa --sources--repos, e --labels per controllare il fan-out --stack-name e/o per selezionare lo stack di cui è stato eseguito --tags il provisioning da utilizzare.
# 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
Monitoraggio e gestione delle esecuzioni
# 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
Pianificazione di analisi ricorrenti
atx ct scheduleDa utilizzare per eseguire analisi automaticamente su una cadenza ricorrente. È possibile pianificare le analisi ma non le correzioni. Le opzioni di lavoro si specchiano. atx ct remote analysis Le pianificazioni vengono eseguite in remoto, in due modi:
AWS Transform-managed(
--mode aws-managed): una pianificazione lato server che attiva le analisi sull'infrastruttura. AWS Transform-managed Non è prevista alcuna EventBridge pianificazione Amazon e non è previsto nulla da fornire. Richiede un ruolo di esecuzione (--execution-role) che AWS Transform assume a ogni esecuzione (vediRuolo di esecuzione per AWS Transform-managed orari).Customer-managed(
--mode ec2|batch): una EventBridge pianificazione di Amazon Scheduler nel tuo account invia ogni esecuzione a un'istanza persistente di Amazon EC2 o a uno stack AWS Batch di cui esegui il provisioning per primo (vedi). Esecuzione remota
Il --recurrence valore accettadaily, weekly: (ad esempio,DAYweekly:MONDAY), o monthly: dove NN è un giorno compreso tra 1 e 28. Gli orari sull' AWS Transform-managed infrastruttura vengono eseguiti in 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
Per visualizzare le analisi eseguite da una pianificazione, usaatx ct analysis list --schedule-id , che restituisce le esecuzioni attivate della pianificazione, le più recenti per prime.schedule-id
Per rimuovere il ruolo dello scheduler e il gruppo di pianificazione utilizzati dalle pianificazioni gestite dal cliente, esegui. atx ct schedule teardown --execute
Ruolo di esecuzione per AWS Transform-managed orari
Una pianificazione creata con --mode aws-managed richiede un --execution-role ARN che AWS Transform assume ogni volta che viene eseguita la pianificazione. Configura il ruolo come segue:
L'identità che crea la pianificazione deve disporre
iam:PassRoledell'autorizzazione per il ruolo di esecuzione.La politica di fiducia del ruolo deve consentire al responsabile del
transform-custom.amazonaws.com.rproxy.govskope.caservizio di assumerla.Come minimo, al ruolo deve essere AWSTransformCustomFullAccess associata la policy AWS gestita, oltre
secretsmanager:GetSecretValueallesecretsmanager:DescribeSecretautorizzazioni sui segreti sotto ilatx/*prefisso, in modo che le esecuzioni pianificate possano recuperare le credenziali del clone di origine.
La seguente policy in linea garantisce al AWS Secrets Manager l'accesso necessario alle esecuzioni pianificate per recuperare le credenziali del clone di origine. Associala al ruolo di esecuzione insieme alla policy AWSTransformCustomFullAccess gestita, sostituendola account-id con la AWS Regione region e l'account in cui viene eseguita la pianificazione.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AtxSourceCredentials", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "arn:aws:secretsmanager:region:account-id:secret:atx/*" } ] }
Etichettatura e controllo degli accessi
Puoi applicare tag (key=valuecoppie separate da virgole) a fonti, analisi e correzioni con questa opzione. --tags I tag sono supportati anche sull'infrastruttura remota, sulle credenziali archiviate e sulle risorse di rete. Con i tag, puoi organizzare le risorse. In combinazione con le condizioni dei tag IAM, i tag implementano il controllo degli accessi basato sugli attributi (ABAC) in modo che i team accedano solo alle risorse che contengono i loro tag.
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
Per impostazione predefinita, le risorse sono contrassegnate con i tag definiti dall'utente. ~/.aws/atx/settings.json Aggiungete i tag da applicare a tutte le risorse in applyTags essa contenuti e diventeranno i tag predefiniti.
{ "applyTags": [ { "team": "alpha" } ] }
Nota
I tag passati con --tags vengono uniti a tutti i tag predefiniti configurati e --tags vincono per qualsiasi set di chiavi in entrambe le posizioni.
AWS Trasforma l'applicazione web
Usa l'applicazione web AWS Transform per creare ed eseguire analisi, esaminare i risultati, creare correzioni e tenere traccia delle pull request generate tra le tue fonti di codice.
Prima di utilizzare l'applicazione web, l'organizzazione deve abilitare la tua identità utente per accedere AWS a Transform. Per ulteriori informazioni sulla configurazione di AWS Transform, vedere Configurazione di AWS Transform.
Accesso
Per accedere all'applicazione web AWS Transform, completare i passaggi seguenti.
Apri
https://aws.amazon.com/transform/e accedi con le credenziali di AWS IAM Identity Center.Se la modernizzazione continua non viene visualizzata, accedi invece con le credenziali IAM:
Nella console di AWS gestione, apri AWS Transform e scegli Impostazioni.
Attiva Access AWS Transform con le credenziali IAM.
Copia l'URL dell'applicazione Web (con IAM) e incollalo nella stessa finestra del browser in cui è aperta la console.
Apri il menu di navigazione a sinistra e scegli la modernizzazione continua.
Modalità di infrastruttura
Quando crei un'analisi, scegli una delle seguenti modalità di infrastruttura:
AWS gestito: eseguito su un'infrastruttura gestita da AWS Transform. Non è necessario effettuare il provisioning di alcuna infrastruttura.
Di proprietà del cliente: esegui su uno stack distribuito a tuo piacimento. Account AWS Usa questa modalità quando hai bisogno di controllare la configurazione di elaborazione, rete o sicurezza.
Nota
Per eseguire l'analisi della sicurezza, utilizza l'infrastruttura di proprietà del cliente. L'analisi di sicurezza viene eseguita sul Security Agent distribuito nel tuo account.
Per utilizzare l'infrastruttura di proprietà del cliente, apri la scheda Impostazioni. Usa i link di AWS CloudFormation creazione rapida per distribuire i seguenti stack nell'ordine:
AtxDispatcherStack— Message dispatcher (sempre obbligatorio).Stack di elaborazione:
AtxInfrastructureStack(AWS Batch) oatx-runner(Amazon EC2).atx-scheduler— Necessario per analisi pianificate ricorrenti.AtxSecurityAgentStack-<region>— Richiesto solo per l'analisi di sicurezza.
Per il CLI-based provisioning e la configurazione di rete, vedereEsecuzione remota.
Flusso di lavoro introduttivo
Connetti le fonti: apri la scheda Sorgenti e aggiungi i repository daGitHub,GitLab, oBitbucket.
Esegui o pianifica un'analisi: apri la scheda Analisi, seleziona i repository, scegli un tipo di analisi, seleziona una modalità di infrastruttura e scegli Esegui. Per eseguire con una cadenza ricorrente (giornaliera, settimanale o mensile), scegli invece Pianificazione.
Rivedi i risultati: apri la scheda Risultati per visualizzare i risultati in base alla gravità.
Crea una correzione: seleziona i risultati e scegli Crea correzione.
Esamina le pull request: apri la scheda Remediations per visualizzare i link PR generati per repository.
Chatta con AWS Transform direttamente dall'applicazione web per porre domande sulle tue analisi, scoperte o correzioni.