Integrasikan repositori Bitbucket dengan AWS Amplify menggunakan AWS CloudFormation - AWS Prescriptive Guidance

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

Integrasikan repositori Bitbucket dengan AWS Amplify menggunakan AWS CloudFormation

Alwin Abraham, Amazon Web Services

Ringkasan

AWS Amplify membantu Anda menerapkan dan menguji situs web statis dengan cepat tanpa harus menyiapkan infrastruktur yang biasanya diperlukan. Anda dapat menerapkan pendekatan pola ini jika organisasi Anda ingin menggunakan Bitbucket untuk kontrol sumber, baik untuk memigrasikan kode aplikasi yang ada atau membuat aplikasi baru. Dengan menggunakan AWS CloudFormation untuk mengatur Amplify secara otomatis, Anda memberikan visibilitas ke dalam konfigurasi yang Anda gunakan.

Pola ini menjelaskan cara membuat pipeline dan penerapan pipeline dan penerapan berkelanjutan front-end dan lingkungan penerapan berkelanjutan (CI/CD) dengan menggunakan AWS untuk mengintegrasikan repositori Bitbucket dengan CloudFormation AWS Amplify. Pendekatan pola berarti Anda dapat membuat pipeline front-end Amplify untuk penerapan berulang.

Prasyarat dan batasan

Prasyarat

  • Akun Amazon Web Services (AWS) yang aktif

  • Akun Bitbucket aktif dengan akses administrator

  • Akses ke terminal yang menggunakan cURL atau aplikasi Postman

  • Keakraban dengan Amplify

  • Keakraban dengan AWS CloudFormation

  • Keakraban dengan file berformat YAML

Arsitektur

Diagram showing user interaction with Bitbucket repository connected to AWS Amplify in AWS Cloud region.

Tumpukan teknologi

  • Amplify

  • AWS CloudFormation

  • Bitbucket

Alat

  • AWS Amplify — Amplify membantu pengembang mengembangkan dan menerapkan aplikasi seluler dan web bertenaga cloud.

  • AWS CloudFormation — AWS CloudFormation adalah layanan yang membantu Anda memodelkan dan menyiapkan sumber daya AWS sehingga Anda dapat menghabiskan lebih sedikit waktu untuk mengelola sumber daya tersebut dan lebih banyak waktu untuk berfokus pada aplikasi yang berjalan di AWS.

  • Bitbucket - Bitbucket adalah solusi manajemen repositori Git yang dirancang untuk tim profesional. Ini memberi Anda tempat sentral untuk mengelola repositori Git, berkolaborasi pada kode sumber Anda, dan memandu Anda melalui alur pengembangan.

Kode

bitbucket-amplify.ymlFile (terlampir) berisi CloudFormation template AWS untuk pola ini.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan
(Opsional) Buat repositori Bitbucket.
  1. Masuk ke akun Bitbucket Anda dan buat repositori baru. Untuk informasi selengkapnya tentang hal ini, lihat Membuat repositori Git dalam dokumentasi Bitbucket. 

  2. Catat nama ruang kerja.

catatan

Anda juga dapat menggunakan repositori Bitbucket yang ada.

DevOps insinyur
Buka pengaturan ruang kerja.
  1. Buka ruang kerja dan pilih tab Repositori.

  2. Pilih repositori yang ingin Anda integrasikan dengan Amplify.

  3. Pilih nama ruang kerja yang berada di atas nama repositori.

  4. Di bilah sisi, pilih Pengaturan.

DevOps insinyur
Buat OAuth konsumen.
  1. Di bagian Aplikasi dan Fitur, pilih OAuth konsumen, lalu pilih Tambah konsumen.

  2. Masukkan nama untuk konsumen Anda, misalnya,Amplify Integration.

  3. Masukkan URL panggilan balik. Meskipun bidang ini adalah input yang diperlukan, itu tidak digunakan untuk menyelesaikan integrasi sehingga nilainya bisa http://localhost:3000

  4. Centang kotak untuk Ini adalah konsumen pribadi.

  5. Pilih izin berikut:

    • Proyek - Read

    • Repositori Admin

    • Permintaan tarik - Read

    • Webhooks — dan Read Write

  6. Tinggalkan pilihan default untuk semua bidang lainnya dan pilih Kirim.

  7. Catat kunci dan rahasia yang dihasilkan.

DevOps insinyur
Dapatkan token OAuth akses.
  1. Buka jendela terminal dan jalankan perintah berikut: 

curl -X POST -u "KEY:SECRET" https://bitbucket.org/site/oauth2/access_token -d grant_type=client_credentials 

penting

Ganti KEY dan SECRET dengan kunci dan rahasia yang Anda rekam sebelumnya. 

2. Rekam token akses tanpa menggunakan tanda kutip. Token hanya berlaku untuk waktu terbatas dan waktu default adalah dua jam. Anda harus menjalankan CloudFormation template AWS dalam jangka waktu ini.

DevOps insinyur
TugasDeskripsiKeterampilan yang dibutuhkan
Unduh CloudFormation templat AWS.

Unduh CloudFormation templat bitbucket-amplify.yml AWS (terlampir). Template ini membuat CI/CD pipeline di Amplify, selain proyek dan cabang Amplify.

Buat dan terapkan CloudFormation tumpukan AWS.
  1. Masuk ke AWS Management Console di Wilayah AWS yang ingin Anda terapkan dan buka CloudFormation konsol AWS. 

  2. Pilih Buat Tumpukan (dengan sumber daya baru) dan kemudian pilih Unggah File Template

  3. Unggah bitbucket-amplify.yml file.

  4. Pilih Berikutnya, masukkan nama tumpukan, lalu masukkan parameter berikut:

    • Access token: Rekatkan token OAuth akses yang Anda buat sebelumnya.

    • URL Repositori: Tambahkan URL repositori proyek Bitbucket. URL biasanya dalam format berikut: https://bitbucket.org/<WORKSPACE_NAME>/<REPO_NAME>

    • Nama cabang: Ini harus cocok dengan nama cabang di repositori Bitbucket Anda. Cabang ini tidak perlu ada saat Anda menjalankan CloudFormation tumpukan AWS tetapi diperlukan untuk menerapkan kode ke lingkungan.

    • Nama proyek: Ini adalah nama untuk dikaitkan dengan proyek Amplify.

5. Pilih Berikutnya dan kemudian pilih Create Stack.

DevOps insinyur
TugasDeskripsiKeterampilan yang dibutuhkan
Menyebarkan kode ke cabang di repositori Anda.
  1. Kloning repositori Bitbucket Anda dengan menjalankan perintah berikut: git clone https://bitbucket.org/<WORKSPACE_NAME>/<REPO_NAME>

  2. Lihat nama cabang yang digunakan saat menjalankan CloudFormation skrip AWS. Untuk membuat dan memeriksa cabang baru, jalankan git checkout -b <BRANCH_NAME> perintah. Untuk memeriksa cabang yang ada, jalankan git checkout <BRANCH_NAME> perintah

  3. Komit kode ke cabang dan dorong ke cabang jarak jauh dengan menjalankan git push perintah git commit and.

  4. Amplify kemudian membangun dan menyebarkan aplikasi.

Untuk informasi selengkapnya tentang ini, lihat Perintah Git Dasar dalam dokumentasi Bitbucket. 

Pengembang aplikasi

Sumber daya terkait

Metode otentikasi (dokumentasi Atlassian)

Lampiran

Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip