3 poin oleh GN⁺ 2024-10-21 | 2 komentar | Bagikan ke WhatsApp
  • Pustaka dari awslabs yang memungkinkan Amazon S3 digunakan sebagai remote git dan server LFS
  • Implementasi git remote helper untuk menggunakan S3 sebagai server Git tanpa server
  • Juga mencakup implementasi git-lfs custom transfer yang dapat mendorong file manajemen LFS ke bucket S3 yang sama
  • Skrip Python. Berjalan pada 3.9 atau lebih baru
  • Semua data dienkripsi secara default saat disimpan dan ditransmisikan. Untuk lapisan keamanan tambahan, data dapat dienkripsi di bucket S3 menggunakan kunci KMS yang dikelola pelanggan. Disarankan menggunakan bucket key untuk mengurangi biaya
  • Kontrol akses ke remote dijamin melalui izin IAM. Dapat dikendalikan pada tingkat bucket, tingkat prefix, dan tingkat kunci KMS
  • Karena sifat git yang terdistribusi, meski jarang, beberapa pengguna dapat menjalankan git push pada branch yang sama secara bersamaan. Dalam kasus ini, beberapa bundle disimpan di S3 dan git push berikutnya dapat gagal. Untuk mengatasi masalah ini, jalankan perintah git-remote-s3 doctor

Ringkasan GN⁺

  • git-remote-s3 adalah alat berguna yang memungkinkan Amazon S3 digunakan sebagai server remote Git dan LFS tanpa server.
  • Keamanan dapat diperkuat melalui enkripsi data dan kontrol akses.
  • Alat untuk mengatasi masalah penulisan bersamaan juga disediakan guna meningkatkan keandalan.
  • Proyek lain dengan fungsi serupa adalah lfs-s3.

2 komentar

 
ganadist 2024-10-22

Kalau selain Git, LFS juga dipakai dengan autentikasi terpisah, sepertinya bakal muncul lumayan banyak kerepotan yang tidak terduga.

 
GN⁺ 2024-10-21
Komentar Hacker News
  • Jika ingin menggunakan S3 sebagai git remote tetapi khawatir soal privasi, ada yang membuat alat yang menggunakan Restic agar S3 bisa dipakai sebagai git remote yang tidak tepercaya

  • Perlu diingat bahwa unit penagihan minimum AWS S3 adalah 128KB. Jika source tree Anda dipenuhi file-file kecil, biaya repositori Git bisa jadi lebih mahal dari perkiraan

  • Saya terkejut ini bisa diimplementasikan hanya dengan bucket S3. Saya sempat ingin menopang bucket S3 dengan API Gateway, fungsi Lambda, dan tabel DynamoDB. Saya tidak terpikir untuk mengimplementasikannya di sisi klien

  • Sangat disayangkan semua hal dimock padahal moto sudah ada

  • Salah satu cara untuk mengatasi masalah ini adalah moto, tetapi implementasi penyimpanan S3 ada sangat banyak. Termasuk minio versi Apache 2, dan untuk sesuatu yang stabil seperti API S3 tidak perlu memakai versi terbaru

  • Saya menggunakan rudolfs yang ditulis dalam Rust. Performanya sangat baik, tetapi tidak memiliki semua fitur yang saya butuhkan (autentikasi)

  • Saya sudah lama menggunakan template CloudFormation untuk LFS di S3

  • GitHub harus menurunkan harga LFS

  • Dengan Cloudflare Workers, langkah konfigurasi/komponen bergerak bisa dikurangi

  • Untuk bagian LFS, dvc bekerja lebih baik daripada git-lfs dan mendukung S3 secara bawaan

  • git-annex juga menyediakan dukungan bawaan untuk S3

  • Di S3, push tidak bisa dilakukan secara transaksional dan konsisten, jadi ini terlihat seperti alat yang kurang tepat

  • Ini terlihat seperti alat yang kurang tepat untuk meng-host repositori Git