Openwisp-utils: [Peningkatan] Skrip CI umum

Dibuat pada 13 Feb 2019  ·  13Komentar  ·  Sumber: openwisp/openwisp-utils

Kami memerlukan skrip CI umum untuk menjalankan semua tes CI, sehingga jika ada perubahan kecil atau pemeriksaan baru ditambahkan/dihapus, kami tidak perlu memperbarui semua repositori dengan perubahan kecil.

Baca lebih lanjut: https://github.com/openwisp/openwisp-utils/pull/37#issuecomment -461733269

testing

Semua 13 komentar

Apakah ini semua skrip yang harus dijalankan?

  • checkcommit
  • runcheckendline
  • runcheckmigration
  • runflake8
  • runisort

Namun, beberapa pemeriksaan ini tidak berlaku untuk semua repositori, bagaimana Anda menyelesaikannya?
Misalnya, runcheckmigration tidak akan benar-benar berlaku di openwisp-website , tetapi checkcommit dan runcheckendline harus tetap dijalankan.

@dwang Saya berpikir variabel baris perintah, secara default, semua tugas akan berjalan,
Namun, jika saya ingin menghindari runcheckmigration , saya cukup melakukan --no-runcheckmigration untuk menghindari menjalankan skrip itu, apa pendapat Anda tentang ini? :senyum:

Terdengar bagus untukku!

@atb00ker ini kedengarannya bagus! apakah kamu sedang mengerjakan yang ini?

Tidak. Saat ini saya tidak sedang mengerjakannya. :senyum:

oke saya sedang mengerjakannya sekarang

@atb00ker dalam urutan apa skrip harus dijalankan?
Saya melihat checkcommit dan runcheckendline harus dijalankan di setiap repo.
Jadi saya akan mengambil maksimal 3 argumen

Tes tidak bergantung satu sama lain sehingga urutannya tidak masalah.
Anda dapat checkout file .travis.yml di setiap repositori untuk memeriksa tes apa yang sedang berjalan pada repositori tertentu.
Periksa hal yang sama untuk repositori berikut:

- django-ipam
- openwisp-ipam
- django-freeradius
- openwisp-freeradius
- openwisp-users
- openwisp-utils
- openwisp-config
- openwisp-controller
- django-loci
- django-netjsonconfig
- django-x509

@atb00ker Saya melihat bahwa file .travis.yml di setiap repositori dibagi menjadi 3 bagian

  • before_install: di sini ./runflake8 , ./runisort , ./runcheckmigration dll dipanggil
  • instal: di sini adalah semua perintah instal ...
  • skrip: checkcommit berjalan di sini dan pengujian khusus repositori yaitu jshint, ./runtest , coverage dll dipanggil.

Juga ada perintah yang berbeda di setiap .travis.yml untuk menginstal openwisp-utils

  • pip install openwisp-utils[qa]>=0.2.1 di openwisp-config
  • pip install https://github.com/openwisp/openwisp-utils/tarball/master di situs web OpenWISP
  • pip install https://github.com/openwisp/openwisp-utils/tarball/master#egg=openwisp_utils --upgrade di openwisp-users
  • pip install -U https://github.com/openwisp/openwisp-utils/tarball/master dalam django-freeradius
  • pip install --user https://github.com/openwisp/openwisp-utils/tarball/master di ansible-openwisp

beberapa memiliki baris di requirements-test.txt juga salinan file uji yang ada di repositori. Saya berpikir untuk memasukkan perintah instal untuk openwisp-utils

beberapa kekhawatiran:

  1. Apakah boleh menjalankan tes di bagian skrip saja? dan bukan before_install (lihat https://github.com/openwisp/django-ipam/blob/master/.travis.yml)
  2. Saya mengambil argumen sebagai --no testname1 testname2 testname2 ..... tidak apa-apa?

tolong beri tahu saya pandangan Anda tentang ini :)

@ankit-kumar-dwivedi jangan jalankan skrip "before_install" di bagian "skrip". Inilah yang saya coba jelaskan mengapa (koreksi dihargai) -

Menjalankan beberapa skrip sebelumnya mungkin diperlukan untuk menjalankan skrip utama dengan benar.
& Jika ada "before_script" atau "after_script" yang gagal, itu tidak memengaruhi "status" build secara keseluruhan.

"Misalnya, runcheckmigration tidak akan benar-benar berlaku di situs web openwisp, tetapi checkcommit dan runcheckendline harus tetap dijalankan."
Saya pikir kita perlu menambahkan variabel untuk mengecualikan repositori. @dwang

@ankit-kumar-dwivedi

  1. Ya, tes CI dapat berjalan setelah tes lain juga, jadi selama itu berfungsi, saya tidak melihat masalah. :senyum:
  2. Ya, terlihat Bagus. Jika ada yang sudah siap, dapatkah Anda membuat permintaan tarik [Pekerjaan dalam proses] sehingga kami dapat melihatnya saat Anda sedang mengerjakannya?
    Terima kasih. :senyum:

Ditutup oleh #45

Apakah halaman ini membantu?
0 / 5 - 0 peringkat