Contoh Amazon ECR menggunakan SDK untuk SAP ABAP - AWS SDK untuk SAP ABAP

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh Amazon ECR menggunakan SDK untuk SAP ABAP

Contoh kode berikut menunjukkan cara melakukan tindakan dan menerapkan skenario umum dengan menggunakan AWS SDK untuk SAP ABAP dengan Amazon ECR.

Tindakan merupakan kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.

Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.

Tindakan

Contoh kode berikut menunjukkan cara menggunakanCreateRepository.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.
  • Untuk detail API, lihat CreateRepositorydi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDeleteRepository.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.
  • Untuk detail API, lihat DeleteRepositorydi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDescribeImages.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.
  • Untuk detail API, lihat DescribeImagesdi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDescribeRepositories.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.

Contoh kode berikut menunjukkan cara menggunakanGetAuthorizationToken.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.

Contoh kode berikut menunjukkan cara menggunakanGetRepositoryPolicy.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.

Contoh kode berikut menunjukkan cara menggunakanPutLifeCyclePolicy.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.

Contoh kode berikut menunjukkan cara menggunakanSetRepositoryPolicy.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

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.