

バッテリーへようこそ - 最新のサービス開発のための究極のプラットフォーム! Kubernetesとオープンソースの上に構築された当社のソフトウェアプラットフォームは、直感的なUIと高度な自動化のおかげで、信じられないほどの包括的なインフラストラクチャエクスペリエンスを提供します。
このレポでは、開発に貢献するために必要なすべてを見つけることができます。コードやスクリプトからドキュメントや情報まで、これはバッテリーを含むすべてのもののハブです。
一緒に素晴らしいものを作りましょう!
最も簡単な方法は、ホストされているUIを使用してインストールを構成することです。次に、No依存性インストールスクリプトを使用して、Kubernetes(局所的にKindを介してPulumiを介してクラウドプロバイダーで)を開始するbiツールをダウンロードし、すべてのオープンソースコンテナベースの依存関係、およびバッテリーにはコントロールサーバーが含まれています。
biバージョンをダウンロードするカスタムインストールスクリプトを実行し、Home Baseが署名したJWKからインストールを開始します。サインアップせずにこれを短時間試してみたい場合は、それが可能です。ただし、ステータスを報告できない数時間後にインストールは機能しなくなります。
biをダウンロードしてくださいmasterから、 bi start bootstrap/local.spec.json実行しますコードの開発または変更を開始するには、オペレーティングシステムがセットアップされていることを確認してください。 Linuxマシンを使用することをお勧めしますが、コードはDockerデーモン(または互換性のある)とUNIXのようなシェルを備えたシステムで動作する必要があります。いくつかの依存関係、ASDFが必要で、開発用に構成されたKubernetesクラスターを起動する必要があります。
Linuxディストリビューションに応じて、次の依存関係をインストールする必要があります。
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-chromedriverFedora/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 chromedriver依存関係をインストールした後、Dockerが有効になっていることを確認し、ユーザーに適切な特権を持っています。
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp dockerMacOSの場合、Dockerデスクトップまたはポッドマンに加えて、以下の依存関係をインストールする必要があります。
brew install cmake flock direnvasdfインストールASDFは、複数の言語のバージョンマネージャーです。プロジェクトで役立つツールを管理するために使用します。 asdfといくつかのプラグインをインストールする必要があります。
git clone https://github.com/asdf-vm/asdf.git ~ /.asdf --branch v0.14.0次に、Bashプロファイルに以下を追加します(他のシェルはわずかに異なります):
. $HOME /.asdf/asdf.sh
. $HOME /.asdf/completions/asdf.bash
eval " $( direnv hook bash ) "次に、必要なすべてのプラグインをインストールします。
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には、バッテリーが含まれるプラットフォームを構築するために一緒になっている複数の部品が含まれています。 bix 、プロジェクトのさまざまな部分を管理するのに役立つ開発ツールです。
TLDR: bix bootstrap && bix dev
static 、含まれるバッテリーを構築および展開するコードが含まれています。
パブリック投稿はstatic/src/content/postsにあります。
static/src/content/docsには他のドキュメントページがあります。
これがメインディレクトリです。 Phoenix Frameworkを使用し、Global Configurationがplatform_umbrella/configにある間、 platform_umbrella/appsにはいくつかの異なるElixirアプリケーションがあります。
これは、共有コンポーネントとUIのアプリケーションです。 Control Server WebおよびHome Server Webで使用され、開発中のストーリーブックのインスタンスを実行します。
これは、顧客のKubernetesにインストールされる制御サーバーのメインECTOレポです。
これはフェニックスのWebアプリケーションです。ほとんどがPhoenix.Component 、 Phoenix.LiveComponent 、 Phoenix.LiveViewです。スタイリングとしてTailwind CSSを広く使用します。
これは、請求使用量を取得して保存するためのコードです。これは、すべてのクラスターがバージョンの更新と請求のために報告する集中ホームサーバーになります。
これは、請求のUIであり、新しいクラスターを開始します。
Kubernetesクラスターの種類を起動するには、Postgresなどのサービスを開始し、DBを作成し、ターゲットの概要でシードします。
bix bootstrap次に、コントロールを開始し、ホームWebサーバーと背景プロセスを開始します。これにより、Processステータスを探索できるIEXコンソールも開きます。
bix dev現在、アクセス可能な3つのWebサーバーがあります。
完全に構成されたエディターをメイン監督に単純に開き、 everythingワークスペースを開くには:
cd batteries-included && code .vscode/everything.code-workspace