GitHub Actions - Chetabahana/method GitHub Wiki
GitHub Actions memudahkan untuk mengotomatisasi semua alur kerja perangkat lunak dengan CI/CD kelas dunia.
Bangun, uji, dan gunakan kode Anda langsung dari GitHub. Buat ulasan kode, manajemen cabang, dan triase bekerja sesuai keinginan Anda.
Saat tulisan ini dibuat status adalah beta, maka belum semuanya sempurna. Jika Anda ingin menjadi yang pertama menggunakan GitHub Actions, daftar untuk beta sekarang.
Konfirmasi akan dikirim via email seperti berikut ini:
Melebihi batas penggunaan dapat menyebabkan antrian pekerjaan, gagal berjalan, atau gagal menyelesaikan. Batas dapat berubah.- Anda dapat menjalankan hingga 20 alur kerja secara bersamaan per repositori.
- Anda dapat menjalankan hingga 1000 permintaan API dalam satu jam
- Setiap pekerjaan dalam alur kerja dapat berjalan hingga 6 jam waktu eksekusi.
- Anda dapat menjalankan hingga 20 pekerjaan secara bersamaan per repositori.
- name
- on
- jobs
- jobs.<job_id></job_id>
- jobs.<job_id></job_id>.name
- jobs.<job_id></job_id>.needs
- jobs.<job_id></job_id>.runs-on
- jobs.<job_id></job_id>.steps
- jobs.<job_id></job_id>.timeout-minutes
- jobs.<job_id></job_id>.strategy
- jobs.<job_id></job_id>.container
- jobs.<job_id></job_id>.services
on:
push:
branches:
- '*'
- '!master'
Contoh ini memicu alur kerja setiap 15 menit:
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '*/15 * * * *'
Cron syntax has five fields separated by a space, and each field represents a unit of time.
ββββββββββββββ minute (0 - 59)
β ββββββββββββββ hour (0 - 23)
β β ββββββββββββββ day of the month (1 - 31)
β β β ββββββββββββββ month (1 - 12 or JAN-DEC)
β β β β ββββββββββββββ day of the week (0 - 6 or SUN-SAT)
β β β β β
β β β β β
β β β β β
Anda dapat menggunakan GitHub API untuk memicu acara webhook yang disebut repository_dispatch ketika Anda ingin memicu alur kerja untuk aktivitas yang terjadi di luar GitHub.
Untuk informasi lebih lanjut, lihat "Membuat acara pengiriman repositori" di dokumentasi Pengembang GitHub.
on: repository_dispatch
Untuk memicu acara repository_dispatch kustom, Anda harus mengirim permintaan POST ke titik akhir API GitHub dan memberikan nama event_type untuk menjelaskan jenis aktivitas.
Untuk memicu proses alur kerja, Anda juga harus mengonfigurasi alur kerja Anda untuk menggunakan acara repository_dispatch. Untuk mengakses titik akhir ini selama periode pratinjau, Anda harus memberikan jenis media khusus di header:
curl https://api.github.com/users/technoweenie -I
HTTP/1.1 200 OK
X-GitHub-Media-Type: github.v3
curl https://api.github.com/users/technoweenie -I \
-H "Accept: application/vnd.github.everest-preview+json"
HTTP/1.1 200 OK
X-GitHub-Media-Type: github.v3; param=full; format=json
curl https://api.github.com/users/technoweenie -I \
-H "Accept: application/vnd.github.everest-preview+json"
HTTP/1.1 200 OK
X-GitHub-Media-Type: github.v3; param=full; format=json
Implementasi dari GitHub Actions ini akan mengikuti Bagan-Project. Eksekusi secara detil kita bahas di sesi tutorial pada bagian setelan otomasi dan selanjutnya akan bermuara di sesi implementasi.
Integrasi dengan GitHub Actions dapat dilakukan dengan eksternal seperti misalnya Listener via Google-Cloud-Functions atau triggering via Codefresh.
Pendekatan rekayasa perangkat lunak penting dilakukan untuk memastikan bahwa perangkat lunak dapat dirilis setiap saat. Kita akan bahas lebih lanjut di sesi Continuous Delivery