Mengesahkan Modul Private Go dalam Google App Engine Standard dengan Go 1.11
Apabila mengemas kini projek Go App Engine Standard kepada modul Go 1.11, pengesahan untuk modul persendirian boleh menimbulkan cabaran. Secara lalai, sistem binaan Awan Google tidak mempunyai akses kepada repositori peribadi.
Ralat:
Apabila cuba menggunakan projek yang termasuk modul peribadi, ralat serupa dengan yang berikut mungkin berlaku:
ERROR: (gcloud.app.deploy) Error Response: [9] Cloud build <GUI> status: FAILURE. Build error details: go: bitbucket.org/[email protected]: https://api.bitbucket.org/2.0/repositories/myPrivateRepo?fields=scm: 403 Forbidden
Bolehkah Ia Dilakukan?
Ya, adalah mungkin untuk mengesahkan modul peribadi dalam App Engine Standard menggunakan modul Go 1.11 . Walau bagaimanapun, panduan dokumentasi migrasi tentang mengalihkan fail ke GOPATH mengelirukan. Sistem modul baharu sememangnya direka bentuk untuk mengekalkan kod di luar GOPATH.
Penyelesaian: Menggunakan Penggantian Modul
Daripada mengurus bukti kelayakan, penyelesaian yang lebih baik ialah menggunakan Go's fungsi menggantikan modul. Ini membenarkan projek tempatan menggunakan salinan tempatan modul peribadi semasa binaan.
Kaedah:
module myServiceGAE require ( bitbucket.org/me/myService v0.0.0 google.golang.org/appengine v1.4.0 ) replace bitbucket.org/me/myService => ./src replace bitbucket.org/me/myModule => ./modules/utils
Kebaikan:
Keburukan:
Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Modul Private Go dalam Google App Engine Standard dengan Go 1.11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!