Amazon CodeCatalyst tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Lihat informasi yang lebih lengkap di Cara bermigrasi dari CodeCatalyst.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konsep paket
Berikut adalah beberapa konsep dan istilah yang perlu diketahui saat mengelola, menerbitkan, atau mengonsumsi paket CodeCatalyst.
Paket
Paket adalah bundel yang mencakup perangkat lunak dan metadata yang diperlukan untuk menginstal perangkat lunak dan menyelesaikan dependensi apa pun. CodeCatalyst mendukung format paket npm.
Paket terdiri dari:
Ruang nama paket
Beberapa format paket mendukung nama paket hierarkis untuk mengatur paket ke dalam kelompok logis dan untuk membantu menghindari tabrakan nama. Paket yang memiliki nama yang sama dapat disimpan di ruang nama yang berbeda. Misalnya, npm mendukung cakupan, dan paket npm @types/node memiliki cakupan @types dan nama. node Ada banyak nama paket lainnya dalam cakupan @types. Dalam CodeCatalyst, cakupan (“tipe”) disebut sebagai namespace paket, dan nama (“node”) disebut sebagai nama paket. Untuk paket Maven, namespace paket sesuai dengan groupID Maven. Paket Maven org.apache.logging.log4j:log4j memiliki groupID (namespace paket) org.apache.logging.log4j dan artifactID (nama paket) log4j. Beberapa format paket seperti Python tidak mendukung nama hierarkis dengan konsep yang mirip dengan ruang lingkup npm atau Maven GroupId. Jika Anda tidak memiliki cara untuk mengelompokkan nama paket, akan lebih sulit untuk menghindari tabrakan nama.
Versi paket
Versi paket mengidentifikasi versi spesifik dari sebuah paket, seperti @types/node@12.6.9. Format nomor versi dan semantik bervariasi untuk format paket yang berbeda. Sebagai contoh, npm paket versi harus sesuai dengan spesifikasi Versioning Semantik
Aset
A set adalah file individual yang disimpan CodeCatalyst yang terkait dengan versi paket, seperti file npm atau .tgz file Maven POM atau JAR.
Repositori paket
Repositori CodeCatalyst paket berisi satu set paket, yang berisi versi paket, yang masing-masing dipetakan ke satu set aset. Repositori paket bersifat poliglot, yang berarti satu repositori dapat berisi paket dari jenis apa pun yang didukung. Setiap repositori paket mengekspos titik akhir untuk mengambil dan menerbitkan paket menggunakan alat seperti NuGet CLI (nuget,dotnet), npm CLI Maven (), dan CLI Python (danmvn). pip twine Untuk informasi tentang kuota paket di CodeCatalyst, termasuk berapa banyak repositori paket yang dapat dibuat di setiap ruang, lihatKuota untuk paket.
Anda dapat menautkan repositori paket ke yang lain dengan mengaturnya sebagai hulu. Ketika repositori disetel sebagai hulu, Anda dapat menggunakan paket apa pun dari hulu serta repositori hulu tambahan dalam rantai. Untuk informasi selengkapnya, lihat Repositori hulu.
Repositori gateway adalah jenis repositori paket khusus yang menarik dan menyimpan paket dari otoritas paket eksternal resmi. Untuk informasi selengkapnya, lihat Repositori gateway.
Repositori hulu
Anda dapat menggunakan CodeCatalyst untuk membuat hubungan hulu antara dua repositori paket. Repositori paket adalah h ulu dari yang lain ketika versi paket yang dikandungnya dapat diakses dari titik akhir repositori paket dari repositori hilir. Dengan hubungan hulu, isi dari dua repositori paket secara efektif digabungkan dari sudut pandang klien.
Misalnya, jika manajer paket meminta versi paket yang tidak ada di repositori, kemudian CodeCatalyst akan mencari repositori hulu yang dikonfigurasi untuk versi paket. Repositori hulu dicari dalam urutan konfigurasi, dan setelah paket ditemukan, CodeCatalyst akan berhenti mencari.
Repositori gateway
Repositori gateway adalah jenis repositori paket khusus yang terhubung ke otoritas paket resmi eksternal yang didukung. Saat Anda menambahkan repositori gateway sebagai repositori hulu, Anda dapat menggunakan paket dari otoritas paket resmi yang sesuai. Repositori hilir Anda tidak berkomunikasi ke repositori publik, sebaliknya, semuanya diintermediasi oleh repositori gateway. Paket yang dikonsumsi dengan cara ini disimpan di repositori gateway dan repositori hilir yang menerima permintaan asli.
Repositori gateway telah ditentukan sebelumnya, tetapi harus dibuat di setiap proyek untuk digunakan. Daftar berikut berisi setiap repositori gateway yang dapat dibuat CodeCatalyst dan otoritas paket yang terhubung dengannya.
-
npm-public-registry- gateway menyediakan paket npm dari npmjs.com.
-
maven-central-gateway menyediakan paket Maven dari repositori Maven Central.
-
google-android-gateway menyediakan paket Maven dari Google Android.
-
commonsware-gateway menyediakan paket Maven dari. CommonsWare
-
gradle-plugins-gateway menyediakan paket Maven dari Gradle Plugins.
-
nuget-gallery-gateway menyediakan NuGet paket dari Galeri. NuGet
-
pypi-gateway menyediakan paket Python dari Indeks Paket Python.