Tutorial: Menyiapkan build Micro Focus untuk aplikasi BankDemo sampel - AWS Modernisasi Mainframe

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

Tutorial: Menyiapkan build Micro Focus untuk aplikasi BankDemo sampel

AWSModernisasi Mainframe memberi Anda kemampuan untuk menyiapkan build dan pipeline integrasi/pengiriman berkelanjutan (CI/CD) untuk aplikasi yang dimigrasi. Build dan pipeline ini menggunakanAWS CodeBuild,AWS CodeCommit, dan AWS CodePipeline untuk menyediakan kemampuan ini. CodeBuild adalah layanan build terkelola penuh yang mengkompilasi kode sumber Anda, menjalankan pengujian unit, dan menghasilkan artefak yang siap digunakan. CodeCommit adalah layanan kontrol versi yang memungkinkan Anda menyimpan dan mengelola reponsitori Git secara pribadi di Cloud. AWS CodePipeline adalah layanan pengiriman berkelanjutan yang memungkinkan Anda untuk memodelkan, memvisualisasikan, dan mengotomatiskan langkah-langkah yang diperlukan untuk merilis perangkat lunak Anda.

Tutorial ini menunjukkan cara menggunakan AWS CodeBuild untuk mengkompilasi BankDemo contoh kode sumber aplikasi dari Amazon S3 dan kemudian mengekspor kode yang dikompilasi kembali ke Amazon S3.

AWS CodeBuildadalah layanan integrasi berkelanjutan yang dikelola sepenuhnya yang mengkompilasi kode sumber, menjalankan pengujian, dan menghasilkan paket perangkat lunak yang siap digunakan. Dengan CodeBuild, Anda dapat menggunakan lingkungan build yang dikemas sebelumnya, atau Anda dapat membuat lingkungan build khusus yang menggunakan alat build Anda sendiri. Skenario demo ini menggunakan opsi kedua. Ini terdiri dari lingkungan CodeBuild build yang menggunakan image Docker pra-paket.

Prasyarat

Sebelum Anda memulai tutorial ini, selesaikan prasyarat berikut.

  • Unduh aplikasi BankDemo sampel dan unzip ke folder. Folder sumber berisi program COBOL dan Copybooks, dan definisi CICS BMS. Ini juga berisi folder JCL untuk referensi, meskipun Anda tidak perlu membangun JCL. Folder ini juga berisi file meta yang diperlukan untuk build.

  • Di konsol Modernisasi AWS Mainframe, pilih Tools. Dalam Analisis, pengembangan, dan pembuatan aset, pilih Bagikan aset dengan akun AWS saya.

Langkah 1: Buat ember Amazon S3

Pada langkah ini, Anda membuat dua ember Amazon S3. Yang pertama adalah bucket input untuk menahan kode sumber, dan yang lainnya adalah bucket keluaran untuk menampung output build. Untuk informasi selengkapnya, lihat Membuat, mengonfigurasi, dan bekerja dengan bucket Amazon S3 di Panduan Pengguna Amazon S3.

  1. Untuk membuat bucket input, masuk ke konsol Amazon S3 dan pilih Buat bucket.

  2. Dalam konfigurasi Umum, berikan nama untuk bucket dan tentukan Wilayah AWS tempat Anda ingin membuat bucket. Contoh nama adalahcodebuild-regionId-accountId-input-bucket, di mana regionId ember, dan accountId Akun AWS ID Anda. Wilayah AWS

    catatan

    Jika Anda membuat bucket berbeda Wilayah AWS dari US East (Virginia N.), tentukan LocationConstraint parameternya. Untuk informasi selengkapnya, lihat Membuat Bucket di Referensi API Amazon Simple Storage Service.

  3. Pertahankan semua pengaturan lainnya dan pilih Buat ember.

  4. Ulangi langkah 1-3 untuk membuat bucket keluaran. Contoh nama adalahcodebuild-regionId-accountId-output-bucket, di mana regionId ember dan accountId Akun AWS ID Anda. Wilayah AWS

    Apa pun nama yang Anda pilih untuk ember ini, pastikan untuk menggunakannya di seluruh tutorial ini.

Langkah 2: Buat file spesifikasi build

Pada langkah ini, Anda membuat file spesifikasi build,. File ini menyediakan perintah build dan pengaturan terkait, dalam format YAMM, CodeBuild untuk menjalankan build. Untuk informasi selengkapnya, lihat Membangun referensi spesifikasi untuk CodeBuild di Panduan AWS CodeBuild Pengguna.

  1. Buat file bernama buildspec.yml di direktori yang Anda buka ritsleting sebagai prasyarat.

  2. Tambahkan konten berikut ke file dan simpan. Tidak ada perubahan yang diperlukan untuk file ini.

    version: 0.2 env: exported-variables: - CODEBUILD_BUILD_ID - CODEBUILD_BUILD_ARN phases: install: runtime-versions: python: 3.7 pre_build: commands: - echo Installing source dependencies... - ls -lR $CODEBUILD_SRC_DIR/source build: commands: - echo Build started on `date` - /start-build.sh -Dbasedir=$CODEBUILD_SRC_DIR/source -Dloaddir=$CODEBUILD_SRC_DIR/target post_build: commands: - ls -lR $CODEBUILD_SRC_DIR/target - echo Build completed on `date` artifacts: files: - $CODEBUILD_SRC_DIR/target/**

    Di siniCODEBUILD_BUILD_ID,CODEBUILD_BUILD_ARN,$CODEBUILD_SRC_DIR/source, dan $CODEBUILD_SRC_DIR/target merupakan variabel lingkungan yang tersedia di dalamnya CodeBuild. Untuk informasi selengkapnya, lihat Variabel lingkungan di lingkungan build.

    Pada titik ini, direktori Anda akan terlihat seperti ini.

    (root directory name) |-- build.xml |-- buildspec.yml |-- LICENSE.txt |-- source |... etc.
  3. Zip isi folder ke file bernamaBankDemo.zip.. Untuk tutorial ini, Anda tidak dapat zip folder. Sebagai gantinya, zip isi folder ke fileBankDemo.zip.

Langkah 3: Unggah file sumber

Pada langkah ini, Anda mengunggah kode sumber untuk aplikasi BankDemo sampel ke bucket input Amazon S3 Anda.

  1. Masuk ke konsol Amazon S3 dan pilih Bucket di panel navigasi kiri. Kemudian pilih bucket input yang Anda buat sebelumnya.

  2. Di bawah Objek, pilih Unggah.

  3. Di bagian File dan folder, pilih Tambahkan File.

  4. Arahkan ke dan pilih BankDemo.zip file Anda.

  5. Pilih Upload (Unggah).

Langkah 4: Buat kebijakan IAM

Pada langkah ini, Anda membuat dua kebijakan IAM. Satu kebijakan memberikan izin untuk Modernisasi AWS Mainframe untuk mengakses dan menggunakan image Docker yang berisi alat build Micro Focus. Kebijakan ini tidak disesuaikan untuk pelanggan. Kebijakan lainnya memberikan izin untuk Modernisasi AWS Mainframe untuk berinteraksi dengan bucket input dan output, dan dengan log Amazon yang menghasilkan. CloudWatch CodeBuild

Untuk mempelajari cara membuat kebijakan IAM, lihat Mengedit kebijakan IAM di Panduan Pengguna IAM.

Untuk membuat kebijakan untuk mengakses gambar Docker
  1. Di konsol IAM, salin dokumen kebijakan berikut dan tempelkan ke editor kebijakan.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage" ], "Resource": "arn:aws:ecr:*:673918848628:repository/m2-enterprise-build-tools" }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::aws-m2-repo-*/*" } ] }
  2. Berikan nama untuk kebijakan tersebut, misalnya,m2CodeBuildPolicy.

Untuk membuat kebijakan yang memungkinkan Modernisasi AWS Mainframe berinteraksi dengan bucket dan log
  1. Di konsol IAM, salin dokumen kebijakan berikut dan tempelkan ke editor kebijakan. Pastikan untuk memperbarui regionId keWilayah AWS, dan accountId ke AndaAkun AWS.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:regionId:accountId:log-group:/aws/codebuild/codebuild-bankdemo-project", "arn:aws:logs:regionId:accountId:log-group:/aws/codebuild/codebuild-bankdemo-project:*" ], "Effect": "Allow" }, { "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion", "s3:GetBucketAcl", "s3:GetBucketLocation", "s3:List*" ], "Resource": [ "arn:aws:s3:::codebuild-regionId-accountId-input-bucket", "arn:aws:s3:::codebuild-regionId-accountId-input-bucket/*", "arn:aws:s3:::codebuild-regionId-accountId-output-bucket", "arn:aws:s3:::codebuild-regionId-accountId-output-bucket/*" ], "Effect": "Allow" } ] }
  2. Berikan nama untuk kebijakan tersebut, misalnya,BankdemoCodeBuildRolePolicy.

Langkah 5: Buat peran IAM

Pada langkah ini, Anda membuat peran IAM baru yang memungkinkan CodeBuild untuk berinteraksi dengan AWS sumber daya untuk Anda, setelah Anda mengaitkan kebijakan IAM yang sebelumnya Anda buat dengan peran IAM baru ini.

Untuk informasi tentang membuat peran layanan, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di Panduan Pengguna IAM,.

  1. Masuk ke konsol IAM dan pilih Peran di panel navigasi kiri.

  2. Pilih Buat peran.

  3. Di bawah Jenis entitas Tepercaya, pilih layanan AWS.

  4. Di bawah Kasus penggunaan untuk layanan AWS lainnya CodeBuild, pilih, lalu pilih CodeBuildlagi.

  5. Pilih Berikutnya.

  6. Pada halaman Tambahkan izin, pilih Berikutnya. Anda menetapkan kebijakan untuk peran nanti.

  7. Di bawah Rincian peran, berikan nama untuk peran tersebut, misalnya,BankdemoCodeBuildServiceRole.

  8. Di bawah Pilih entitas tepercaya, verifikasi bahwa dokumen kebijakan terlihat seperti berikut:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "codebuild.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  9. Pilih Buat peran.

Langkah 6: Lampirkan kebijakan IAM ke peran IAM

Pada langkah ini, Anda melampirkan dua kebijakan IAM yang sebelumnya Anda buat ke peran BankdemoCodeBuildServiceRole IAM.

  1. Masuk ke konsol IAM dan pilih Peran di panel navigasi kiri.

  2. Di Peran, pilih peran yang Anda buat sebelumnya, misalnya,BankdemoCodeBuildServiceRole.

  3. Di kebijakan Izin, pilih Tambahkan izin, lalu Lampirkan kebijakan.

  4. Dalam kebijakan izin lainnya, pilih kebijakan yang Anda buat sebelumnya, misalnya, m2CodeBuildPolicy danBankdemoCodeBuildRolePolicy.

  5. Pilih Lampirkan kebijakan.

Langkah 7: Buat CodeBuild proyek

Pada langkah ini, Anda membuat CodeBuild proyek.

  1. Masuk ke CodeBuild konsol dan pilih Buat proyek build.

  2. Di bagian konfigurasi Proyek, berikan nama untuk proyek, misalnya,codebuild-bankdemo-project.

  3. Di bagian Sumber, untuk penyedia Sumber, pilih Amazon S3, lalu pilih bucket input yang Anda buat sebelumnya, misalnya,. codebuild-regionId-accountId-input-bucket

  4. Di bidang kunci objek S3 atau folder S3, masukkan nama file zip yang Anda unggah ke bucket S3. Dalam hal ini, nama file adalahbankdemo.zip.

  5. Di bagian Lingkungan, pilih Gambar kustom.

  6. Di bidang Environment type, pilih Linux.

  7. Di bawah Registri gambar, pilih Registri lain.

  8. Di bidang URL registri eksternal, masukkan 673918848628.dkr.ecr.us-west-2.amazonaws.com/m2-enterprise-build-tools:latest

  9. Di bawah Peran layanan, pilih Peran layanan yang ada, dan di bidang ARN Peran, pilih peran layanan yang Anda buat sebelumnya; misalnya,. BankdemoCodeBuildServiceRole

  10. Di bagian Buildspec, pilih Gunakan file buildspec.

  11. Di bagian Artefak, di bawah Jenis, pilih Amazon S3, lalu pilih bucket keluaran Anda, misalnya,. codebuild-regionId-accountId-output-bucket

  12. Di bidang Nama, masukkan nama folder di bucket yang ingin berisi artefak keluaran build, misalnya,bankdemo-output.zip.

  13. Di bawah kemasan Artefak, pilih Zip.

  14. Pilih Buat proyek build.

Langkah 8: Mulai membangun

Pada langkah ini, Anda memulai build.

  1. Masuk ke CodeBuild konsol.

  2. Di panel navigasi kiri, pilih Membangun proyek.

  3. Pilih proyek build yang Anda buat sebelumnya, misalnya,codebuild-bankdemo-project.

  4. Pilih Mulai membangun.

Perintah ini memulai build. Build berjalan secara asinkron. Output dari perintah adalah JSON yang menyertakan id atribut. Atribut ini adalah referensi ke id CodeBuild build build yang baru saja Anda mulai. Anda dapat melihat status build di CodeBuild konsol. Anda juga dapat melihat log terperinci tentang eksekusi build di konsol. Untuk informasi selengkapnya, lihat Melihat informasi build terperinci di Panduan AWS CodeBuild Pengguna.

Ketika fase saat ini SELESAI, itu berarti build Anda berhasil diselesaikan, dan artefak yang dikompilasi sudah siap di Amazon S3.

Langkah 9: Unduh artefak keluaran

Pada langkah ini, Anda mengunduh artefak keluaran dari Amazon S3. Alat build Micro Focus dapat membuat beberapa tipe executable yang berbeda. Dalam tutorial ini, menghasilkan objek bersama.

  1. Masuk ke konsol Amazon S3.

  2. Di bagian Bucket, pilih nama bucket keluaran Anda, misalnya,codebuild-regionId-accountId-output-bucket.

  3. Pilih Unduh.

  4. Unzip file yang diunduh. Arahkan ke folder target untuk melihat artefak build. Ini termasuk objek bersama .so Linux.

Pembersihan sumber daya

Jika Anda tidak lagi membutuhkan sumber daya yang Anda buat untuk tutorial ini, hapus untuk menghindari biaya tambahan. Untuk melakukannya, selesaikan langkah-langkah berikut:

  • Hapus bucket S3 yang Anda buat untuk tutorial ini. Untuk informasi selengkapnya, lihat Menghapus bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

  • Hapus kebijakan IAM yang Anda buat untuk tutorial ini. Untuk informasi selengkapnya, lihat Menghapus kebijakan IAM di Panduan Pengguna IAM.

  • Hapus peran IAM yang Anda buat untuk tutorial ini. Untuk informasi lebih lanjut, lihat Menghapus peran atau profil instans dalam Panduan Pengguna IAM.

  • Hapus CodeBuild proyek yang Anda buat untuk tutorial ini. Untuk informasi selengkapnya, lihat Menghapus proyek build CodeBuild di Panduan AWS CodeBuild Pengguna.