

Selamat datang di baterai termasuk - platform utama untuk pengembangan layanan modern! Dibangun di atas Kubernetes dan open-source, platform perangkat lunak kami memberi Anda pengalaman infrastruktur yang luar biasa dan inklusif berkat UI intuitif dan otomatisasi canggih.
Dalam repo ini, Anda akan menemukan semua yang Anda butuhkan untuk berkontribusi pada pengembangan. Dari kode dan skrip hingga dokumentasi dan informasi, ini adalah hub dari semua hal yang disertakan .
Mari kita membangun sesuatu yang luar biasa bersama!
Metode termudah adalah dengan menggunakan UI yang di -host kami untuk mengonfigurasi instalasi. Kemudian gunakan skrip instalasi no-dependensi untuk mengunduh alat bi kami yang akan memulai Kubernet (secara lokal melalui jenis atau pada penyedia cloud melalui pulumi), semua dependensi berbasis wadah open source, dan baterai termasuk server kontrol.
bi terbaru dan mulai instalasi dari JWK yang ditandatangani oleh home base.Jika Anda ingin mencoba semua ini untuk waktu yang singkat tanpa mendaftar, itu mungkin. Namun, instalasi akan berhenti bekerja setelah beberapa jam tidak dapat melaporkan status.
bi dari rilis GitHub terbarumaster , Jalankan bi start bootstrap/local.spec.json Untuk mulai mengembangkan atau mengubah kode, pastikan sistem operasi Anda diatur dan siap digunakan. Kami merekomendasikan menggunakan mesin Linux, tetapi kode kami harus bekerja pada sistem apa pun dengan daemon Docker (atau kompatibel) dan shell seperti Unix. Kita akan membutuhkan beberapa dependensi, ASDF, dan kemudian untuk memulai kluster Kubernetes yang dikonfigurasi untuk pengembangan.
Bergantung pada distribusi Linux Anda, Anda harus menginstal dependensi berikut:
Untuk sistem berbasis ubuntu/apt:
sudo apt-get install -y docker.io build-essential curl git cmake
libssl-dev pkg-config autoconf
m4 libncurses5-dev inotify-tools direnv jq
# Building and Testing deps not needed for most uses
sudo apt-get install -y chromium-browser chromium-chromedriverUntuk sistem berbasis Fedora/DNF:
sudo dnf install -y docker gcc gcc-c++ make curl git
cmake openssl-devel pkgconfig autoconf m4 ncurses-devel
inotify-tools direnv jq
# Building/Testing deps
sudo dnf install -y chromium chromedriverSetelah menginstal dependensi, pastikan Docker diaktifkan dan pengguna Anda memiliki hak istimewa yang tepat:
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp dockerUntuk macOS Anda perlu menginstal dependensi berikut selain Docker Desktop atau Podman.
brew install cmake flock direnvasdf ASDF adalah manajer versi untuk berbagai bahasa. Kami menggunakannya untuk mengelola alat yang berguna dalam proyek. Anda perlu menginstal asdf dan beberapa plugin:
git clone https://github.com/asdf-vm/asdf.git ~ /.asdf --branch v0.14.0Kemudian tambahkan yang berikut ke profil bash Anda (cangkang lain akan sedikit berbeda):
. $HOME /.asdf/asdf.sh
. $HOME /.asdf/completions/asdf.bash
eval " $( direnv hook bash ) "Kemudian pasang semua plugin yang dibutuhkan:
asdf plugin add erlang
asdf plugin add elixir
asdf plugin add nodejs
asdf plugin add golang
asdf plugin add goreleaser
asdf plugin add kubectl
asdf plugin add shfmt
asdf plugin add awscli
asdf plugin add kind
asdf install Monorepo ini berisi beberapa bagian yang menyatu untuk membangun baterai yang termasuk platform. bix adalah alat pengembangan kami yang membantu mengelola berbagai bagian proyek.
Tldr: bix bootstrap && bix dev
static berisi kode yang membuat dan menggunakan baterai yang disertakan .
Posting publik berada di static/src/content/posts .
Ada halaman dokumen lain di static/src/content/docs .
Ini adalah direktori utama. Ini menggunakan kerangka phoenix, dan ada beberapa aplikasi elixir yang berbeda di platform_umbrella/apps saat konfigurasi global ada di platform_umbrella/config .
Ini adalah aplikasi untuk komponen bersama dan UI. Ini digunakan di Web Server Kontrol dan Web Server Rumah, dan menjalankan instance buku cerita dalam pengembangan.
Ini adalah repo ecto utama untuk server kontrol yang akan diinstal pada kubernet pelanggan.
Ini adalah aplikasi web Phoenix. Phoenix.LiveComponent Phoenix.LiveView Phoenix.Component . Secara luas menggunakan CSS Tailwind sebagai gaya.
Ini adalah kode untuk mendapatkan penggunaan penagihan dan menyimpannya. Ini akan menjadi server rumah terpusat yang dilaporkan semua kelompok untuk pembaruan dan penagihan versi.
Ini adalah UI untuk penagihan, dan memulai kelompok baru.
Untuk memulai kluster Kubernetes jenis, memulai layanan termasuk postgres, buat DB, dan seed dengan ringkasan target.
bix bootstrapKemudian mulailah kontrol, dan server web rumah dan proses latar belakang. Ini juga akan membuka konsol IEX di mana Anda dapat menjelajahi status proses:
bix devSekarang ada tiga server web yang dapat diakses:
Untuk membuka editor yang sepenuhnya dikonfigurasi, cukup CD ke dalam Dir Utama dan kemudian buka everything ruang kerja:
cd batteries-included && code .vscode/everything.code-workspace