Auto: Pertanyaan - lerna ERR! ENOGIT Terpisah git HEAD dalam Gitlab CI

Dibuat pada 19 Apr 2020  ·  28Komentar  ·  Sumber: intuit/auto

Jelaskan bugnya

Saat menjalankan shipit, lerna kesalahan pada langkah terakhir

Ini mungkin lebih terkait dengan lerna, karena saya telah melihat kesalahan yang dilaporkan beberapa kali, tetapi saya ingin tahu apakah kalian punya saran karena panggilan lerna ada di dalam otomatis?

EDIT : Pengujian secara lokal mengembalikan kesalahan yang berbeda. Akan melihat lebih jauh dan menindaklanjutinya!

bug

Semua 28 komentar

Tampaknya berfungsi dengan baik ketika dijalankan secara lokal, hanya saja tidak di lingkungan ci. Hmm

Pertama, IDK seberapa baik auto dapat bekerja dengan GitLab karena kami banyak menggunakan API GitHub. Hal-hal seperti mencari permintaan tarik, membuat rilis, dan banyak hal lainnya tidak akan berfungsi seperti yang diharapkan.


Adapun masalah kepala terpisah: Sebagian besar env CI tidak memeriksa kode Anda dengan cara yang sama. Agar auto berfungsi, diperlukan tampilan git repo yang relatif lengkap. Banyak CI envs mencoba menjadi pintar dan tidak melakukan checkout penuh. Beberapa akan melakukan klon dangkal (tindakan github). Beberapa akan melakukan pra-penggabungan cabang Anda dan checkout cabang tmp (jenkins)

Melihat log Anda, sepertinya GitLab melakukan checkout yang relatif penuh, tetapi dengan kepala yang terpisah (Anda tidak berada di cabang). Coba periksa master .

# See what branches are available
git branch -a

# Checkout master
git checkout master

Itu sepertinya memperbaiki kesalahan itu, tetapi sekarang tidak dirilis karena ini :cry:

Melakukan pencarian cepat tetapi sepertinya saya tidak tahu apa yang menyebabkan pesan kesalahan itu.

Kesalahan itu berasal dari auto

https://github.com/intuit/auto/blob/adf4e85590a75a9fd97945b4803f3535b8c45383/packages/core/src/auto.ts#L405

Mungkin menelan kesalahan lain. Saya dapat menambahkan log untuk dicetak dalam fungsi ini jika Anda membutuhkannya

:facepalm: tidak yakin bagaimana saya melewatkannya. Apakah mungkin untuk menampilkan kesalahan itu jika flag verbose disetel? Saya menyadari bahwa saya tidak dapat melakukan ini secara lokal karena saya tidak dapat membuat kesalahan secara lokal lol

Apakah mungkin flag -silent harus --silent ? atau --quiet ? Saya tidak yakin untuk apa flag false dan -silent itu.

https://gitlab.com/jdalrymple/gitbeaker/-/jobs/518962749#L1391

Astaga Saya pasti telah menghapus -

https://github.com/intuit/auto/pull/1160

Setelah ini diterbitkan, itu harus bagus https://github.com/intuit/auto/pull/1161/files

Masalah lain diperbaiki butttt hehe Ada saran lain?

Anda tampaknya masih menggunakan kenari lama "auto" version: v9.28.2-canary.1160.15021.0 dan bukan versi terakhir yang dirilis

Ups! hanya memperbaiki itu. Masih bernasib buruk :( Sekarang dengan Kesalahan: Perintah gagal: git merge-base --is-ancestor :cry:

Hmm membaca log lagi, apakah mungkin menggunakan url jarak jauh yang salah?

ℹ info Using remote: https://gitlab-ci-token:[MASKED]@gitlab.com/jdalrymple/gitbeaker.git

Itu sebenarnya bisa menjadi masalah. Repo di-host di github, tetapi saya menggunakan gitlab ci untuk pipeline. Sepertinya itu menyimpulkan remote untuk didorong, tetapi menyimpulkan salah. Tidak yakin bagaimana mengubahnya hmm

Jadi saya mengatasi kesalahan ini dengan secara eksplisit mengatur url jarak jauh. Agak hacky, tapi itu akan berhasil untuk saat ini. Mencoba memperbaiki kesalahan npm yang aneh sekarang . Begitu dekat :/

Itu berhasil!!! Harus secara eksplisit mengatur beberapa hal tapi yay! Terima kasih untuk bantuannya!!

Pertanyaan cepat @hipstersmoothie , untuk menghindari membuka masalah baru. Apakah penanganan otomatis membuat rilis github baru? Itu membuat tag dan catatan rilis baik-baik saja, tetapi tidak ada rilis github :(

Seharusnya membuat rilis github juga. Saya akan melihat apa yang telah Anda posting. Kami dapat dm di twitter jika Anda ingin tanggapan lebih cepat juga

Membangun di GitLab mungkin adalah sumber dari sebagian besar masalah ini. Seperti yang Anda temukan dengan layanan CI jarak jauh cenderung membuat banyak asumsi berbeda.

Yang mengatakan kami mungkin dapat meningkatkan logika jarak jauh dan mendeteksi ketika kami menggunakan gitlab CI.

Di sinilah Anda akan mengubah kode untuk mengetahui remote https://github.com/intuit/auto/blob/master/packages/core/src/auto.ts#L556

Seharusnya membuat rilis github juga. Saya akan melihat apa yang telah Anda posting. Kami dapat dm di twitter jika Anda ingin tanggapan lebih cepat juga

Saya akan membuat rilis lain dalam waktu sekitar 10 menit sehingga Anda dapat melihat apa yang akhirnya terjadi, tetapi rilis terakhir yang dibuat saya harus menambahkan catatan rilis github secara manual.

Melihat ke dalam memodifikasi batas itu sekarang. Sepertinya itu kesalahan ketika mencoba untuk mendapatkan git log AH, ia menggunakan tag dengan awalan 'v' tetapi konfigurasi lerna saya mengecualikan awalan?

ℹ  info      Using 17.0.3 as previous release.
ℹ  info      Current "Latest Release" on Github: v17.0.3
ℹ  info      Getting commits from v17.0.3 to HEAD

bukankah seharusnya mencari komit dari tag ke kepala, jadi dalam hal ini 17.0.3 ke HEAD?

Ini karena default otomatis ke awalan v . Saya baru saja membuka PR yang akan membuat otomatis menghormati konfigurasi lerna

https://github.com/intuit/auto/pull/1170

Anda juga bisa mengatur noVersionPrefix di konfigurasi otomatis Anda. tapi saya pikir mengotomatiskan ini lebih baik

Anda juga bisa mengatur noVersionPrefix di konfigurasi otomatis Anda. tapi saya pikir mengotomatiskan ini lebih baik

Apakah itu cara yang lebih baik untuk mendefinisikan konfigurasi itu? Mungkin ya?

Masalahnya adalah Anda juga harus mengatur konfigurasi lerna juga

https://github.com/intuit/auto/pull/1170

Saya membuatnya otomatis jadi Anda hanya perlu memutakhirkan otomatis

Anda mungkin perlu mengedit tag/rilis terakhir agar tidak memiliki awalan v

Aku akan memeriksanya! Terima kasih!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat