Mempercepat kinerja github workflow

Satu-satunya cara untuk mempercepat kinerja github workflow (ci) adalah menggunakan metode Cache Strategy. Metode cache ini dapat beruba in-program function dan github action method, kamu juga dapat menggunakan keduanya untuk mepercepat kinerja Continous Integration di github workflow.

Metode Cache Menggunakan Package GitHub Workflow

cara ini menggunakan fungsi internal dari github workflow itu sendiri untuk menyimpan cache. Berikut contoh konfigurasi github workflow cache:

name: CI NPM Menggunakan Cache
on: push
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2 # ini wajib
      - name: Metode Cache Dimulai
        uses: actions/cache@v2 # ini nama packagenya
        with:
          # folder yang akan di cache ialah `~/.npm, ./node_modules, dan ./vendor folder
          path: |
            ~/.npm
            ./node_modules
            ./vendor
          key: ${{ runner.os }}-build-${{ hashFiles('package-lock.json') }} # ini kunci menyimpan/save
          restore-keys: ${{ runner.os }}-build # ini kunci restore
      - run: npm install # install project nodejs

dengan konfigurasi diatas, command npm install akan sangat lebih cepat ketimbang tidak menggunakan cache. Yang biasanya menginstall biasa memerlukan waktu 10 menit, sekarang hanya butuh 2 menit saja untuk menyelesaikan-nya.

build-${{ hashFiles('package-lock.json') }} merupakan kunci untuk save, apabila dependencies atau packages berubah atau di update, maka kunci ini akan membuat cache baru otomatis sesuai dengan yang saat itu dikerjakan oleh workflow. Kunci tersebut akan membuat cache index baru misalnya seperti build-d5ea0750. Apabila kamu tidak memberikan kunci unik seperti build-${{ hashFiles('package-lock.json') }}, maka workflow tidak akan membuat cache baru melainkan mengambil cache yang lama dan akan terus mengulangi instalasi. Jadi perlu untuk memberikan kode unik di kunci save.

Metode Cache Menggunakan In-Memory Cache (In-Program)

Metode ini harus kamu tulis sendiri di dalam program-mu. Setiap bahasa pemrograman berbeda caranya. Berikut metode-metode yang bisa kamu buat di dalam program-mu.

Sekian artikel tentang metode cache github workflow. Artikel ini akan terus di update, jangan lupa di bookmark. Jangan lupa komentar agar tidak ketinggalan metode-metode baru dalam menerapkan caching strategy di GitHub Flow.