View a markdown version of this page

Amazon ECR-Beispiele, die das SDK für SAP ABAP verwenden - AWS SDK-Codebeispiele

Weitere AWS SDK-Beispiele sind im AWS Doc SDK Examples GitHub Repo verfügbar.

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.

Amazon ECR-Beispiele, die das SDK für SAP ABAP verwenden

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe des AWS SDK für SAP ABAP mit Amazon ECR Aktionen ausführen und gängige Szenarien implementieren.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anweisungen zum Einrichten und Ausführen des Codes im Kodex finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendung. CreateRepository

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' oo_result = lo_ecr->createrepository( iv_repositoryname = iv_repository_name ). DATA(lv_repository_uri) = oo_result->get_repository( )->get_repositoryuri( ). MESSAGE |Repository created with URI: { lv_repository_uri }| TYPE 'I'. CATCH /aws1/cx_ecrrepositoryalrexex. " If repository already exists, retrieve it DATA lt_repo_names TYPE /aws1/cl_ecrrepositorynamels00=>tt_repositorynamelist. APPEND NEW /aws1/cl_ecrrepositorynamels00( iv_value = iv_repository_name ) TO lt_repo_names. DATA(lo_describe_result) = lo_ecr->describerepositories( it_repositorynames = lt_repo_names ). DATA(lt_repos) = lo_describe_result->get_repositories( ). IF lines( lt_repos ) > 0. READ TABLE lt_repos INDEX 1 INTO DATA(lo_repo). oo_result = NEW /aws1/cl_ecrcrerepositoryrsp( io_repository = lo_repo ). MESSAGE |Repository { iv_repository_name } already exists.| TYPE 'I'. ENDIF. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungDeleteRepository.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' lo_ecr->deleterepository( iv_repositoryname = iv_repository_name iv_force = abap_true ). MESSAGE |Repository { iv_repository_name } deleted.| TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungDescribeImages.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' " it_image_ids = VALUE #( ( NEW /aws1/cl_ecrimageidentifier( iv_imagetag = 'latest' ) ) ) IF it_image_ids IS NOT INITIAL. oo_result = lo_ecr->describeimages( iv_repositoryname = iv_repository_name it_imageids = it_image_ids ). ELSE. oo_result = lo_ecr->describeimages( iv_repositoryname = iv_repository_name ). ENDIF. DATA(lt_image_details) = oo_result->get_imagedetails( ). MESSAGE |Found { lines( lt_image_details ) } images in repository.| TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. CATCH /aws1/cx_ecrimagenotfoundex. MESSAGE 'Image not found.' TYPE 'I'. CATCH /aws1/cx_ecrinvalidparameterex. MESSAGE 'Invalid parameter provided.' TYPE 'I'. ENDTRY.
  • API-Details finden Sie DescribeImages in der AWS SDK for SAP ABAP API-Referenz.

Das folgende Codebeispiel zeigt die VerwendungDescribeRepositories.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " it_repository_names = VALUE #( ( NEW /aws1/cl_ecrrepositorynamels00( iv_value = 'my-repository' ) ) ) oo_result = lo_ecr->describerepositories( it_repositorynames = it_repository_names ). DATA(lt_repositories) = oo_result->get_repositories( ). MESSAGE |Found { lines( lt_repositories ) } repositories.| TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungGetAuthorizationToken.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. oo_result = lo_ecr->getauthorizationtoken( ). DATA(lt_auth_data) = oo_result->get_authorizationdata( ). IF lines( lt_auth_data ) > 0. READ TABLE lt_auth_data INDEX 1 INTO DATA(lo_auth_data). DATA(lv_token) = lo_auth_data->get_authorizationtoken( ). MESSAGE 'Authorization token retrieved.' TYPE 'I'. ENDIF. CATCH /aws1/cx_ecrserverexception. MESSAGE 'Server exception occurred.' TYPE 'I'. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungGetRepositoryPolicy.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' oo_result = lo_ecr->getrepositorypolicy( iv_repositoryname = iv_repository_name ). DATA(lv_policy_text) = oo_result->get_policytext( ). MESSAGE 'Repository policy retrieved.' TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. CATCH /aws1/cx_ecrrepositoryplynot00. MESSAGE 'Repository policy not found.' TYPE 'I'. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungPutLifeCyclePolicy.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' " iv_lifecycle_policy_text = '{"rules":[{"rulePriority":1,"description":"Expire images older than 14 days",...}]}' lo_ecr->putlifecyclepolicy( iv_repositoryname = iv_repository_name iv_lifecyclepolicytext = iv_lifecycle_policy_text ). MESSAGE |Lifecycle policy set for repository { iv_repository_name }.| TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. CATCH /aws1/cx_ecrvalidationex. MESSAGE 'Invalid lifecycle policy format.' TYPE 'I'. ENDTRY.

Das folgende Codebeispiel zeigt die VerwendungSetRepositoryPolicy.

SDK für SAP ABAP
Anmerkung

Es läuft noch mehr. GitHub Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.

TRY. " iv_repository_name = 'my-repository' " iv_policy_text = '{"Version":"2012-10-17","Statement":[...]}' lo_ecr->setrepositorypolicy( iv_repositoryname = iv_repository_name iv_policytext = iv_policy_text ). MESSAGE |Policy set for repository { iv_repository_name }.| TYPE 'I'. CATCH /aws1/cx_ecrrepositorynotfndex. MESSAGE 'Repository not found.' TYPE 'I'. ENDTRY.