全部产品
Search
文档中心

Function Compute:Mengelola pipeline

更新时间:Aug 20, 2025

Serverless Application Center memungkinkan Anda mengonfigurasi langkah-langkah eksekusi pipeline kustom. Dengan cara ini, Anda dapat menerbitkan kode ke Function Compute secara efisien dengan mengonfigurasi pipeline dan mengatur alur tugas. Topik ini menjelaskan cara mengelola pipeline di konsol Function Compute, termasuk konfigurasi pipeline, detail pipeline, dan catatan eksekusi pipeline.

Latar Belakang

Saat membuat aplikasi, Serverless Application Center membuat lingkungan default untuk aplikasi tersebut. Anda dapat menentukan metode pemicu peristiwa Git dari pipeline di lingkungan tersebut dan mengonfigurasi pengaturan pipeline. Saat mengonfigurasi pipeline, Anda dapat memilih Konfigurasi Otomatis atau Kustom. Jika memilih Konfigurasi Otomatis, Serverless Application Center membuat pipeline berdasarkan parameter default. Jika memilih Konfigurasi Kustom, Anda dapat menentukan metode pemicu peristiwa Git dan memilih lingkungan eksekusi untuk pipeline. Informasi seperti informasi Git dan aplikasi diteruskan ke pipeline sebagai konteks eksekusi.

Saat memodifikasi konfigurasi pipeline, Anda dapat mengubah metode pemicu dan lingkungan eksekusi. Anda juga dapat mengonfigurasi notifikasi DingTalk dan file YAML.

  • Konfigurasikan pipeline saat membuat aplikasi atau lingkungan.

    Saat membuat aplikasi atau lingkungan, Anda dapat menentukan metode pemicu Git dan lingkungan eksekusi pipeline.

    image.png

  • Modifikasi pipeline lingkungan yang ada.

    Anda dapat mengubah metode pemicu peristiwa Git, lingkungan eksekusi, notifikasi DingTalk, dan file YAML untuk pipeline lingkungan yang ada di tab Manajemen Pipeline.

    image.png

Konfigurasikan pipeline

Untuk mengonfigurasi pipeline, Anda harus mengonfigurasi parameter berikut: Mode Pemicu Pipeline, YAML, Pengaturan Notifikasi Chatbot DingTalk, dan Lingkungan Eksekusi Pipeline. Saat membuat aplikasi dan lingkungan, Anda hanya dapat mengonfigurasi parameter Mode Pemicu Pipeline dan Lingkungan Eksekusi Pipeline. Setelah membuat aplikasi dan lingkungan, Anda dapat mengklik Modifikasi di sebelah kanan Konfigurasi Pipeline pada tab Manajemen Pipeline untuk memodifikasi empat parameter tersebut.

image.png

Mode Pemicu Pipeline

Serverless Application Center memungkinkan Anda menentukan metode untuk memicu peristiwa Git dari pipeline. Serverless Application Center menggunakan webhook untuk menerima peristiwa Git. Saat peristiwa yang memenuhi kondisi pemicu diterima, Serverless Application Center membuat dan menjalankan pipeline berdasarkan file YAML yang Anda tentukan. Mode pemicu berikut didukung:

  • Dipicu oleh cabang: Lingkungan harus dikaitkan dengan cabang tertentu dan semua peristiwa push di cabang tersebut cocok.

  • Dipicu oleh tag: Semua peristiwa pembuatan tag dari ekspresi tag tertentu cocok.

  • Dipicu oleh penggabungan cabang: Peristiwa penggabungan dan pull request dari cabang sumber ke cabang tujuan yang terkait dengan lingkungan cocok.

Lingkungan Eksekusi Pipeline

Anda dapat mengatur parameter ini ke Default Environment atau Custom Environment.

Lingkungan Default

Jika Anda mengatur parameter Lingkungan Eksekusi Pipeline ke Default Environment, Serverless Application Center sepenuhnya mengelola sumber daya pipeline dan Function Compute menyelesaikan biaya selama eksekusi pipeline. Setiap tugas pipeline berjalan pada mesin virtual mandiri dan sandboxed. Serverless Application Center memastikan isolasi lingkungan eksekusi pipeline. Berikut adalah batasan yang diberlakukan pada lingkungan default:

  • Spesifikasi instance: 4 vCPU dan 8 GB memori.

  • Ruang disk sementara: 10 GB.

  • Batas waktu eksekusi tugas: 15 menit.

  • Wilayah: Jika Anda membuat lingkungan menggunakan template atau kode sumber dari GitHub, tentukan wilayah Singapura. Jika Anda membuat lingkungan menggunakan Gitee, GitLab, atau Codeup, tentukan wilayah Tiongkok (Hangzhou).

  • Jaringan: Anda tidak dapat menggunakan alamat IP tetap atau blok CIDR. Anda tidak dapat mengonfigurasi daftar putih alamat IP untuk mengakses situs web tertentu. Anda tidak dapat mengakses sumber daya dalam virtual private cloud (VPC).

Lingkungan Kustom

Jika Anda mengatur parameter Lingkungan Eksekusi Pipeline ke Custom Environment, pipeline dieksekusi di akun Alibaba Cloud Anda. Dibandingkan dengan lingkungan default, lingkungan kustom menyediakan lebih banyak kemampuan kustom. Serverless Application Center sepenuhnya mengelola tugas dalam lingkungan kustom dan menjadwalkan instance Function Compute secara real-time untuk menjalankan pipeline berdasarkan otorisasi Anda. Sama seperti lingkungan default, lingkungan kustom menyediakan fitur serverless, yang menghilangkan kebutuhan untuk memelihara infrastruktur.

Lingkungan kustom menyediakan kemampuan kustom berikut:

  • Wilayah dan jaringan: Anda dapat menentukan wilayah dan VPC untuk lingkungan eksekusi untuk mengakses repositori kode internal, repositori artefak, repositori gambar, dan repositori Maven internal. Untuk informasi tentang wilayah yang didukung, lihat Wilayah yang Didukung.

  • Spesifikasi instance: Anda dapat menentukan CPU dan memori untuk lingkungan eksekusi. Misalnya, Anda dapat menentukan instance dengan spesifikasi tinggi untuk mempercepat kecepatan build.

    Catatan

    Rasio kapasitas vCPU terhadap kapasitas memori (dalam GB) berkisar antara 1:1 hingga 1:4.

  • Penyimpanan persisten: Anda dapat mengonfigurasi File Storage NAS (NAS) atau Object Storage Service (OSS) mounting. Misalnya, Anda dapat menggunakan NAS untuk menyimpan cache file untuk mempercepat kecepatan build.

  • Log: Anda dapat menentukan proyek Simple Log Service dan penyimpanan log untuk menyimpan log eksekusi pipeline.

  • Batas waktu: Anda dapat menentukan periode timeout kustom untuk tugas pipeline. Nilai default: 600. Nilai maksimum: 86400. Unit: detik.

Penting

Lingkungan kustom memungkinkan tugas pipeline berjalan di Function Compute di akun Anda. Dalam hal ini, Anda akan dikenakan biaya terkait. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan.

YAML

Serverless Application Center terintegrasi dengan Serverless Devs. Anda dapat menggunakan file YAML Serverless Devs untuk mendeklarasikan konfigurasi sumber daya aplikasi Anda. Untuk informasi tentang spesifikasi file YAML, lihat Spesifikasi YAML. File YAML default bernama s.yaml. Anda juga dapat menentukan file YAML lainnya. Setelah Anda menentukan file YAML, Anda dapat menggunakannya di pipeline dengan metode berikut:

  • Jika Anda menggunakan plug-in @serverless-cd/s-deploy, Anda dapat menggunakan file YAML untuk menerapkan sumber daya saat plug-in dijalankan. Eksekusi plug-in dicapai dengan menambahkan -t/--template ke perintah yang sesuai di Serverless Devs. Dalam contoh berikut, file YAML bernama demo.yaml. Untuk menjalankan plug-in, jalankan perintah s deploy -t demo.yaml.

- name: deploy
  context:
    data:
      deployFile: demo.yaml
      steps:
      - plugin: '@serverless-cd/s-setup'
      - plugin: '@serverless-cd/checkout'
      - plugin: '@serverless-cd/s-deploy'
  taskTemplate: serverless-runner-task
  • Jika Anda menjalankan pipeline menggunakan skrip, Anda dapat menggunakan ${{ ctx.data.deployFile }} untuk merujuk ke file YAML tertentu. Dalam contoh berikut, perintah s plan dijalankan menggunakan file yang ditentukan jika Anda menentukan file YAML. Jika tidak, perintah s plan dijalankan menggunakan file s.yaml default.

- name: pre-check
  context:
    data:
      steps:
      - run: s plan -t ${{ ctx.data.deployFile || s.yaml }}
      - run: echo "s plan finished."
  taskTemplate: serverless-runner-task

DingTalk Chatbot Notification Settings

Setelah mengaktifkan fitur ini, konfigurasikan parameter berikut: Webhook address, Signing key, Beri tahu hanya saat gagal, dan custom message. Anda dapat mengelola tugas yang memerlukan notifikasi secara terpusat. Anda juga dapat menggunakan file YAML pipeline untuk mengaktifkan notifikasi untuk setiap tugas. Setelah mengonfigurasi notifikasi, Anda dapat mengonfigurasi notifikasi untuk setiap tugas di bagian Pipeline Details.

Bagian Detail Pipeline

Di bagian Pipeline Details, Anda dapat mengonfigurasi tugas dalam pipeline dan hubungan antar tugas. Platform secara otomatis menghasilkan proses pipeline default berdasarkan mana Anda dapat memodifikasi konfigurasi.

Anda dapat mengelola pipeline menggunakan YAML. Saat mengonfigurasi item ini, Anda dapat memilih Hosting on Platform atau Read from Repository.

Catatan
  • Jika Anda memilih Hosting di Platform, variabel yang telah ditentukan dalam file YAML tidak didukung. Untuk informasi lebih lanjut, lihat Gunakan file .yaml untuk mendeskripsikan pipeline.

  • Jika Anda memilih Baca dari Repositori, variabel yang telah ditentukan dalam file YAML didukung.

Hosting di Platform

Secara default, file YAML pipeline dikonfigurasi dan dikelola secara terpusat oleh Serverless Application Center. Setelah Anda memperbarui file YAML pipeline, konfigurasi baru berlaku pada penyebaran berikutnya.

Baca dari Repositori

File YAML pipeline disimpan di repositori Git. Setelah Anda memodifikasi dan menyimpan konfigurasi di konsol Function Compute, Serverless Application Center mengirimkan modifikasi ke repositori Git secara real-time. Ini tidak memicu eksekusi pipeline. Saat peristiwa di repositori kode Anda memicu eksekusi pipeline, Serverless Application Center membuat dan menjalankan pipeline menggunakan file YAML yang ditentukan di repositori Git.

Anda dapat memilih Read from Repository di bagian atas bagian Pipeline Details dan memasukkan nama file YAML. Gambar berikut menunjukkan konfigurasi.

image.png

Bagian Pipeline Details mencakup subbagian alat di sebelah kiri dan subbagian pengeditan YAML di sebelah kanan.

  • Di editor YAML, Anda dapat memodifikasi file YAML pipeline untuk memodifikasi proses pipeline. Untuk informasi lebih lanjut, lihat Gunakan file .yaml untuk mendeskripsikan pipeline.

  • Subbagian alat menyediakan alat bantu untuk mengedit file YAML. Tab berikut termasuk dalam subbagian:

    • Tab Process Preview: Anda dapat melihat pratinjau dan memodifikasi proses pipeline. Tab Pratinjau Proses

    • Tab Task Template: Anda dapat melihat template YAML umum yang disediakan. Tab Template Tugas

Di sudut kanan atas subbagian, tombol Simpan, Layar Penuh, dan Reset disediakan.

  • Anda dapat mengklik Simpan untuk menyimpan semua modifikasi dalam file YAML. Kemudian, semua data yang disimpan disinkronkan ke file YAML pipeline.

  • Anda dapat mengklik Layar Penuh untuk menampilkan subbagian pengeditan secara penuh.

  • Anda dapat mengklik Reset untuk membatalkan modifikasi terbaru pada file YAML.

Penting

Jika Anda mengklik Reset, modifikasi terbaru hilang. Sebelum melanjutkan, kami sarankan Anda mencadangkan data Anda.

Tab Pratinjau Proses

Di tab Process Preview, Anda dapat melihat pratinjau proses pipeline dan memodifikasi konten dasar tugas dan hubungan antar tugas. Anda juga dapat membuat dan menambahkan tugas menggunakan template. Proses pipeline terdiri dari node berikut: node awal (sumber kode dan metode pemicu), node tugas, dan node akhir. Node-node tersebut dihubungkan oleh panah putus-putus, yang menunjukkan ketergantungan di antara node. Saat Anda mengarahkan pointer ke node tugas, tombol untuk menambah atau menghapus tugas ditampilkan.

image.png

  • Node awal (sumber kode dan metode pemicu)

    Node ini berisi informasi tentang sumber kode dan metode pemicu pipeline, dan Anda tidak dapat memodifikasi informasi tersebut. Jika Anda ingin mengubah metode pemicu, buka bagian Pipeline Configurations.

    Penting

    Jika Anda ingin mengubah repositori kode, buka halaman detail aplikasi. Untuk informasi lebih lanjut, lihat Kelola aplikasi. Setelah Anda mengubah repositori kode, semua pipeline yang menggunakan kode dari repositori menjadi tidak valid. Lanjutkan dengan hati-hati.

  • Node akhir

    Node terakhir dalam proses pipeline. Anda tidak dapat mengedit node ini.

  • Node tugas

    Node ini berisi informasi dasar tentang tugas tertentu. Secara default, node tugas menampilkan nama tugas. Saat Anda mengklik node, pop-up muncul. Anda dapat melihat dan memodifikasi parameter dalam pop-up, seperti parameter Task Name, Run After, dan Enable. Jika Anda tidak ingin mengaktifkan tugas, tugas dilewati dan redup selama proses pipeline.

  • Ketergantungan

    Ketergantungan antar node ditunjukkan oleh panah putus-putus satu arah. Jika panah dimulai dari Tugas A dan menunjuk ke Tugas B, panah tersebut menunjukkan bahwa Tugas B berjalan setelah dan bergantung pada Tugas A. Tugas dapat bergantung dan menjadi bergantung pada beberapa tugas.

    Anda dapat memodifikasi dependensi dengan menyesuaikan parameter Run After. Sebagai contoh, untuk menghapus dependensi Tugas B pada Tugas A, klik node Tugas B dan hapus Tugas A.

  • Tambahkan tugas

    Jika Anda ingin menambahkan tugas, klik ikon plus. Anda dapat mengonfigurasi ikon plus di bagian atas, bawah, dan sisi kanan node tugas. Misalnya, jika Anda ingin menambahkan Tugas B untuk berjalan sebelum Tugas A, klik ikon plus di bagian atas node Tugas A untuk membuat Tugas B. Dengan cara ini, Tugas A berjalan setelah dan bergantung pada Tugas B. Jika Anda ingin menambahkan Tugas C untuk berjalan setelah Tugas A, klik ikon plus di bagian bawah node Tugas A untuk membuat Tugas C. Dengan cara ini, Tugas C berjalan setelah dan bergantung pada Tugas A. Jika Anda ingin menambahkan Tugas D, yang memiliki ketergantungan yang sama dengan Tugas A, klik ikon plus di sisi kanan node Tugas A untuk membuat Tugas D. Dengan cara ini, Tugas D memiliki pra-tugas yang sama dan bergantung pada tugas yang sama dengan Tugas A.

  • Hapus tugas

    Jika Anda ingin menghapus tugas, klik ikon silang (x). Ikon silang dikonfigurasi di sudut kanan atas node tugas. Saat Anda mengklik ikon silang, sistem meminta Anda untuk mengonfirmasi penghapusan tugas untuk mencegah kesalahan operasi.

image.png

Tab Template Tugas

Di tab Task Template, template YAML berikut untuk tugas pipeline disediakan: Code Check, Create, Deploy, dan Common. Selain itu, template YAML berikut untuk pengaturan internal tugas disediakan: Advanced Settings dan Task Plug-in.

Anda dapat memilih template dari daftar template dan mengkliknya untuk melihat deskripsi rinci dan konten YAML template. Salin dan tempel konten YAML ke posisi yang sesuai dalam file YAML pipeline.

image.png

Proses pipeline default

Secara default, proses pipeline terdiri dari tiga tugas: Config Comparison, Manual Review, dan Build and Deploy. Ketiga tugas tersebut dijalankan secara berurutan. Secara default, tugas Tinjauan Manual dinonaktifkan. Anda harus mengaktifkannya secara manual.

  • Config Comparison

    Tugas ini memeriksa apakah file YAML pipeline konsisten dengan konfigurasi online. Ini membantu Anda mendeteksi perubahan konfigurasi yang tidak terduga sebelumnya.

  • Manual Review

    Untuk memastikan pelepasan aman dan stabilitas aplikasi, Anda dapat mengaktifkan fitur tinjauan manual. Setelah Anda mengaktifkan fitur ini, pipeline diblokir pada fase ini sampai tinjauan manual disetujui. Proses selanjutnya dilakukan hanya setelah perubahan disetujui. Jika tidak, pipeline dihentikan. Secara default, fitur tinjauan manual dinonaktifkan. Anda harus mengaktifkan fitur ini.

  • Build and Deploy

    Tugas ini membangun aplikasi dan menerapkan aplikasi ke cloud. Secara default, penyebaran penuh dilakukan.

image.png

Lihat catatan eksekusi pipeline

Di halaman detail suatu lingkungan, klik tab Pipeline Management. Di bagian Pipeline Execution History, Anda dapat melihat catatan eksekusi untuk pipeline tertentu. pipeline-history

Anda dapat mengklik versi eksekusi pipeline untuk melihat detail eksekusi pipeline. Kemudian, Anda dapat menggunakan detail tersebut untuk melihat log eksekusi dan status pipeline serta memecahkan masalah.

Perbarui runtime pipeline

Tabel berikut menjelaskan lingkungan build default pipeline. Manajer paket bawaan pipeline default termasuk Maven, pip, dan npm. Hanya OS Debian 10 yang didukung sebagai lingkungan runtime.

Runtime

Versi yang didukung

Node.js

  • Node.js 12

  • Node.js 14 (default)

  • Node.js 16

  • Node.js 18

  • Node.js 20

Java

  • Java 8 (default)

  • Java 11

  • Java 17

Python

  • Python 2.7

  • Python 3.6

  • Python 3.7

  • Python 3.9 (default)

  • Python 3.10

Golang

  • Go 1.18 (default)

  • Go 1.19

  • Go 1.20

  • Go 1.21

PHP

  • PHP 7.2

.NET

  • .NET 3.1

Anda dapat menentukan versi runtime pipeline dengan menggunakan plug-in runtime-setup atau memodifikasi variabel dalam file YAML.

Plug-in runtime-setup (direkomendasikan)

Anda dapat masuk ke konsol Function Compute dan temukan aplikasi yang ingin Anda kelola. Di bagian Pipeline Details tab Pipeline Management, perbarui file YAML pipeline di sebelah kanan menggunakan template tugas. Untuk memperbarui file YAML, lakukan langkah-langkah berikut seperti yang ditunjukkan pada gambar berikut: Klik Task Template, pilih Task Plug-in, lalu klik Configure Runtime. Kemudian, perbarui file YAML dan klik Save.

Catatan

Kami merekomendasikan Anda menempatkan plug-in runtime-setup di langkah pertama untuk memastikan semua langkah berikutnya berlaku.

image.png

Untuk informasi tentang parameter plug-in runtime-setup, lihat Gunakan plug-in runtime-setup untuk menginisialisasi runtime.

Variabel dalam file YAML

Anda juga dapat menggunakan hook aksi dalam file YAML untuk mengubah versi Node.js atau Python. Item berikut menjelaskan detailnya:

  • Node.js

    • export PATH=/usr/local/versions/node/v12.22.12/bin:$PATH

    • export PATH=/usr/local/versions/node/v16.15.0/bin:$PATH

    • export PATH=/usr/local/versions/node/v14.19.2/bin:$PATH

    • export PATH=/usr/local/versions/node/v18.14.2/bin:$PATH

    Kode contoh:

    services:
      upgrade_runtime:
        component: 'fc'
        actions:
          pre-deploy:
            - run: export PATH=/usr/local/versions/node/v18.14.2/bin:$PATH && npm run build
        props:
    ...
  • Python

    • export PATH=/usr/local/envs/py27/bin:$PATH

    • export PATH=/usr/local/envs/py36/bin:$PATH

    • export PATH=/usr/local/envs/py37/bin:$PATH

    • export PATH=/usr/local/envs/py39/bin:$PATH

    • export PATH=/usr/local/envs/py310/bin:$PATH

    Kode contoh:

    services:
      upgrade_runtime:
        component: 'fc'
        actions:
          pre-deploy:
            - run: export PATH=/usr/local/envs/py310/bin:$PATH && pip3 install -r requirements.txt -t .
        props:
    ...