Harness Open Source adalah platform pengembangan open source yang dikemas dengan kekuatan hosting kode, pipa DevOps otomatis, lingkungan pengembangan yang di -host (GITSpaces), dan pendaftar artefak.
Harness Open Source adalah platform pengembangan sumber terbuka yang dikemas dengan kekuatan hosting kode, pipa DevOps otomatis, ruang gits, dan pendaftar artefak.
Gambar Docker terbaru yang dirilis publik dapat ditemukan di harness/harness.
Untuk menginstal harness sendiri, cukup jalankan perintah di bawah ini. Setelah wadah selesai, Anda dapat mengunjungi http: // localhost: 3000 di browser Anda.
docker run -d
-p 3000:3000
-p 22:22
-v /var/run/docker.sock:/var/run/docker.sock
-v /tmp/harness:/data
--name harness
--restart always
harness/harnessGambar harness menggunakan volume untuk menyimpan database dan repositori. Sangat disarankan untuk menggunakan bind mount atau volume bernama karena jika tidak semua data akan hilang setelah wadah dihentikan.
Lihat pengembang.harness.io untuk belajar bagaimana memaksimalkan harness.
Harness Open Source mewakili investasi besar -besaran dalam generasi drone berikutnya. Di mana drone hanya berfokus pada integrasi berkelanjutan, harness menambahkan hosting kode sumber, lingkungan pengembang (ruang gits), dan pendaftar artefak; Memberikan tim dengan platform DevOps open source end-to-end.
Tujuannya adalah agar harness akhirnya berada di paritas penuh dengan drone dalam hal kemampuan pipa, yang memungkinkan pengguna untuk bermigrasi mulus dari drone ke harness.
Tapi, kami berharap ini membutuhkan waktu, itulah sebabnya kami mengambil snapshot drone sebagai drone cabang fitur (readme) sehingga dapat melanjutkan pengembangan.
Sedangkan untuk harness, pengembangan terjadi di cabang utama.
Untuk informasi lebih lanjut tentang harness, silakan kunjungi pengembang.harness.io.
Untuk informasi lebih lanjut tentang drone, silakan kunjungi Drone.io.
Instal versi stabil node dan GO terbaru 1.20 atau lebih tinggi, dan kemudian instal program GO di bawah ini. Pastikan direktori tempat sampah ditambahkan ke jalur Anda.
Instal protobuf
protoc --versionbrew unlink protobufcurl -s https://raw.githubusercontent.com/Homebrew/homebrew-core/9de8de7a533609ebfded833480c1f7c05a3448cb/Formula/protobuf.rb > /tmp/protobuf.rbbrew install /tmp/protobuf.rbprotoc --versionInstal protoc-gen-go dan protoc-gen-go-rpc:
Instal Protoc-Gen-go V1.28.1 go install google.golang.org/protobuf/cmd/[email protected] (Perhatikan bahwa ini akan menginstal biner dalam $ gobin jadi pastikan $ GOBIN ada di jalur $ Anda)
Instal Protoc-Gen-go-Grpc V1.2.0 go install google.golang.org/grpc/cmd/[email protected]
$ make dep
$ make toolsLangkah pertama adalah membangun artefak antarmuka pengguna:
$ pushd web
$ yarn install
$ yarn build
$ popdSetelah itu, Anda dapat membangun biner harness:
$ make buildProyek ini mendukung semua sistem operasi dan arsitektur yang didukung oleh Go. Ini berarti Anda dapat membangun dan menjalankan sistem di mesin Anda; Wadah Docker tidak diperlukan untuk pengembangan dan pengujian lokal.
Untuk memulai server di localhost:3000 , cukup jalankan perintah berikut:
./gitness server .local.envPastikan untuk memperbarui kode klien yang diotogenerasi yang digunakan oleh UI saat menambahkan API REST baru.
Untuk meregenerasi kode, harap jalankan langkah -langkah berikut:
./gitness swagger > web/src/services/code/swagger.yamlweb dan jalankan yarn services Perubahan API terbaru sekarang harus tercermin dalam web/src/services/code/index.tsx
make conformance-test
Untuk menjalankan tes kesesuaian dengan layanan berjalan yang ada, gunakan:
make hot-conformance-test
Proyek ini mencakup antarmuka pengguna lengkap untuk berinteraksi dengan sistem. Saat Anda menjalankan aplikasi, Anda dapat mengakses antarmuka pengguna dengan menavigasi ke http://localhost:3000 di browser Anda.
Proyek ini mencakup spesifikasi Swagger. Saat Anda menjalankan aplikasi, Anda dapat mengakses spesifikasi Swagger dengan menavigasi ke http://localhost:3000/swagger di browser Anda (untuk yaml mentah lihat http://localhost:3000/openapi.yaml ). Untuk titik akhir registri, saat ini Swagger terletak di titik akhir yang berbeda http://localhost:3000/registry/swagger/ (untuk json mentah lihat http://localhost:3000/registry/swagger.json ). Ini kemudian akan dipindahkan ke titik akhir angkuh utama.
Untuk pengujian, paling sederhana hanya menggunakan CLI untuk membuat token (ini membutuhkan server harness untuk dijalankan):
# LOGIN (user: admin, pw: changeit)
$ ./gitness login
# GENERATE PAT (1 YEAR VALIDITY)
$ ./gitness user pat " my-pat-uid " 2592000 Perintah menghasilkan PAT yang valid yang telah diberikan akses penuh sebagai pengguna. Token kemudian dapat dikirim sebagai bagian dari header Authorization dengan tukang pos atau curl:
$ curl http://localhost:3000/api/v1/user
-H " Authorization: Bearer $TOKEN " Proyek ini mencakup alat baris perintah yang sangat mendasar untuk pengembangan dan menjalankan layanan. Harap diingat bahwa Anda harus memulai server sebelum Anda dapat menjalankan perintah.
Untuk daftar lengkap operasi yang didukung, silakan lihat
$ ./gitness --helpLihat Kontribusi.MD
Lisensi Apache 2.0, lihat Lisensi.