Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Welcher Pipeline-Typ ist der richtige für mich?
Der Pipeline-Typ wird durch die Eigenschaften und Funktionen bestimmt, die von jeder Pipeline-Version unterstützt werden.
Im Folgenden finden Sie eine Zusammenfassung der Anwendungsfälle und Merkmale, die für jeden Pipeline-Typ verfügbar sind.
| Typ V1 | Typ V2 | |
|---|---|---|
| Merkmale | ||
| Anwendungsfälle |
|
|
| Action-levelVariablen | Unterstützt | Unterstützt |
| PARALLELER Ausführungsmodus | Nicht unterstützt | Unterstützt |
| Pipeline-level Variablen | Nicht unterstützt | Unterstützt |
| AUSFÜHRUNGSMODUS IN DER WARTESCHLANGE | Nicht unterstützt | Unterstützt |
| Rollback für Pipeline-Phasen | Nicht unterstützt | Unterstützt |
| Überschreibungen der Quellversion | Nicht unterstützt | Unterstützt |
| Stufenbedingungen | Nicht unterstützt | Unterstützt |
| Triggert und filtert Git-Tags, Pull-Requests, Branches oder Dateipfade | Nicht unterstützt | Unterstützt |
| Die Aktion „Befehle“ | Nicht unterstützt | Unterstützt |
| Eingabebedingungen mit dem Befehl Ergebnis überspringen erstellen | Nicht unterstützt | Unterstützt |
| Konfigurieren Sie eine Phase für die automatische Wiederholung bei einem Fehler | Nicht unterstützt | Unterstützt |
Informationen zur Preisgestaltung für finden Sie CodePipeline unter Preisgestaltung
Sie können ein Python-Skript erstellen und ausführen, um die potenziellen Kosten für die Umstellung einer Pipeline vom Typ V1 auf eine Pipeline vom Typ V2 zu analysieren.
Anmerkung
Das folgende Beispielskript dient nur zu Demonstrations- und Evaluierungszwecken. Es ist kein Angebotstool und garantiert nicht die Kosten für Ihre tatsächliche Nutzung einer Pipeline vom Typ V2, und es beinhaltet keine eventuell anfallenden Steuern. Informationen zur Preisgestaltung für finden Sie CodePipeline unter Preisgestaltung
Um ein Skript zu erstellen und auszuführen, das Ihnen bei der Bewertung der Kosten für die Umstellung einer Pipeline vom Typ V1 auf eine Pipeline vom Typ V2 hilft
-
Laden Sie Python herunter und installieren Sie es.
-
Öffnen Sie ein Terminal-Fenster. Führen Sie den folgenden Befehl aus, um ein neues Python-Skript mit dem Namen zu erstellen PipelineCostAnalyzer.py.
vi PipelineCostAnalyzer.py -
Kopieren Sie den folgenden Code und fügen Sie ihn in das PipelineCostAnalyzer.py Skript ein.
import boto3 import sys import math from datetime import datetime, timedelta, timezone if len(sys.argv) < 3: raise Exception("Please provide region name and pipeline name as arguments. Example usage: python PipelineCostAnalyzer.py us-east-1 MyPipeline") session = boto3.Session(profile_name='default', region_name=sys.argv[1]) pipeline = sys.argv[2] codepipeline = session.client('codepipeline') def analyze_cost_in_v2(pipeline_name): if codepipeline.get_pipeline(name=pipeline)['pipeline']['pipelineType'] == 'V2': raise Exception("Provided pipeline is already of type V2.") total_action_executions = 0 total_blling_action_executions = 0 total_action_execution_minutes = 0 cost = 0.0 hasNextToken = True nextToken = "" while hasNextToken: if nextToken=="": response = codepipeline.list_action_executions(pipelineName=pipeline_name) else: response = codepipeline.list_action_executions(pipelineName=pipeline_name, nextToken=nextToken) if 'nextToken' in response: nextToken = response['nextToken'] else: hasNextToken= False for action_execution in response['actionExecutionDetails']: start_time = action_execution['startTime'] end_time = action_execution['lastUpdateTime'] if (start_time < (datetime.now(timezone.utc) - timedelta(days=30))): hasNextToken= False continue total_action_executions += 1 if (action_execution['status'] in ['Succeeded', 'Failed', 'Stopped']): action_owner = action_execution['input']['actionTypeId']['owner'] action_category = action_execution['input']['actionTypeId']['category'] if (action_owner == 'Custom' or (action_owner == 'AWS' and action_category == 'Approval')): continue total_blling_action_executions += 1 action_execution_minutes = (end_time - start_time).total_seconds()/60 action_execution_cost = math.ceil(action_execution_minutes) * 0.002 total_action_execution_minutes += action_execution_minutes cost = round(cost + action_execution_cost, 2) print ("{:<40}".format('Activity in last 30 days:')) print ("| {:<40} | {:<10}".format('___________________________________', '__________________')) print ("| {:<40} | {:<10}".format('Total action executions:', total_action_executions)) print ("| {:<40} | {:<10}".format('Total billing action executions:', total_blling_action_executions)) print ("| {:<40} | {:<10}".format('Total billing action execution minutes:', round(total_action_execution_minutes, 2))) print ("| {:<40} | {:<10}".format('Cost of moving to V2 in $:', cost - 1)) analyze_cost_in_v2(pipeline) -
Wechseln Sie vom Terminal oder der Befehlszeile aus in das Verzeichnis, in dem Sie das Analyzer-Skript erstellt haben.
Führen Sie in diesem Verzeichnis den folgenden Befehl aus, wobei Region der Ort ist, an AWS-Region dem Sie die V1-Pipelines erstellt haben, die Sie analysieren möchten. Sie können optional auch eine bestimmte Pipeline evaluieren, indem Sie ihren Namen angeben:
python3 PipelineCostAnalyzer.pyregion--pipelineNameFühren Sie beispielsweise den folgenden Befehl aus, um das Python-Skript mit dem Namen auszuführen PipelineCostAnalyzer.py. In diesem Beispiel ist die Region
us-west-2.python3 PipelineCostAnalyzer.py us-west-2Anmerkung
Dieses Skript analysiert alle V1-Pipelines in der angegebenen Region, AWS-Region sofern Sie keinen bestimmten Pipeline-Namen angeben.
-
In der folgenden Beispielausgabe des Skripts sehen wir die Liste der Aktionsausführungen, die Liste der Aktionsausführungen, die für die Abrechnung in Frage kamen, die Gesamtlaufzeit dieser Aktionsausführungen und die geschätzten Kosten dieser Aktionen, wie sie in einer V2-Pipeline ausgeführt wurden.
Activity in last 30 days: | ___________________________________ | __________________ | Total action executions: | 9 | Total billing action executions: | 9 | Total billing action execution minutes: | 5.59 | Cost of moving to V2 in $: | -0.76
In diesem Beispiel steht der negative Wert in der letzten Zeile für den geschätzten Betrag, der durch die Umstellung auf Pipelines vom Typ V2 eingespart werden könnte.
Anmerkung
Bei der Skriptausgabe und den zugehörigen Beispielen, die Kosten und andere Informationen zeigen, handelt es sich lediglich um Schätzungen. Sie dienen nur zu Demonstrations- und Bewertungszwecken und garantieren keine tatsächlichen Einsparungen. Informationen zur Preisgestaltung für finden Sie CodePipeline unter Preisgestaltung
.