

Bem -vindo às baterias incluídas - a plataforma definitiva para o desenvolvimento moderno de serviços! Construído em Kubernetes e código aberto, nossa plataforma de software oferece uma experiência de infraestrutura incrível e com tudo incluído, graças a uma interface do usuário intuitiva e automação avançada.
Neste repositório, você encontrará tudo o que precisa para contribuir para o desenvolvimento. De código e scripts a documentação e informação, este é o hub de todas as coisas incluídas nas baterias .
Vamos construir algo incrível juntos!
O método mais fácil é usar nossa interface do usuário hospedada para configurar uma instalação. Em seguida, use o script de instalação de não-dependências para baixar nossa ferramenta bi , que iniciará o Kubernetes (localmente via tipo ou em um provedor de nuvem via Pulumi), todas as dependências baseadas em contêineres de código aberto e as baterias incluíram servidor de controle.
bi e inicie a instalação da JWK assinada pela base.Se você quiser experimentar tudo isso por um curto período de tempo sem se inscrever, isso é possível. No entanto, a instalação parará de funcionar após algumas horas para não poder relatar o status.
bi do último lançamento do GitHubmaster , Run bi start bootstrap/local.spec.json Para começar a desenvolver ou alterar o código, verifique se o seu sistema operacional está configurado e pronto para ir. Recomendamos o uso de uma máquina Linux, mas nosso código deve funcionar em qualquer sistema com um daemon do docker (ou compatível) e um shell do tipo Unix. Precisamos de algumas dependências, ASDF, e depois para iniciar um cluster Kubernetes configurado para desenvolvimento.
Dependendo da sua distribuição Linux, você precisará instalar as seguintes dependências:
Para sistemas baseados em 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-chromedriverPara sistemas baseados em 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 chromedriverDepois de instalar as dependências, verifique se o Docker está ativado e seu usuário tem os privilégios corretos:
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp dockerPara o MacOS, você precisará instalar as seguintes dependências, além do Docker Desktop ou Podman.
brew install cmake flock direnvasdf ASDF é um gerente de versão para vários idiomas. Nós o usamos para gerenciar as ferramentas que são úteis no projeto. Você precisará instalar asdf e alguns plugins:
git clone https://github.com/asdf-vm/asdf.git ~ /.asdf --branch v0.14.0Em seguida, adicione o seguinte ao seu perfil Bash (outras conchas variam um pouco):
. $HOME /.asdf/asdf.sh
. $HOME /.asdf/completions/asdf.bash
eval " $( direnv hook bash ) "Em seguida, instale todos os plugins necessários:
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 Este Monorepo contém várias partes que se reúnem para construir a plataforma de baterias incluídas . bix é a nossa ferramenta de desenvolvimento que ajuda a gerenciar as diferentes partes do projeto.
TLDR: bix bootstrap && bix dev
static contém o código que constrói e implanta baterias incluídas .
As postagens públicas estão em static/src/content/posts .
Existem outras páginas de documentos em static/src/content/docs .
Este é o diretório principal. Ele usa a estrutura do Phoenix e existem vários aplicativos Elixir diferentes em platform_umbrella/apps enquanto a configuração global está em platform_umbrella/config .
Este é o aplicativo para componentes compartilhados e interface do usuário. Ele é usado na Web do servidor de controle e na Web do servidor doméstico e executa uma instância de livro de histórias em desenvolvimento.
Este é o principal repo Ecto para o servidor de controle que é instalado no Kubernetes do cliente.
Este é o aplicativo da Web Phoenix. É principalmente Phoenix.Component , Phoenix.LiveComponent e Phoenix.LiveView . Extensivamente usando CSS do Tailwind como estilo.
Este é o código para obter o uso de cobrança e armazená -lo. Será o servidor doméstico centralizado que todos os clusters relatam para atualizações de versão e cobrança.
Esta é a interface do usuário para cobrar e iniciar novos clusters.
Para iniciar o tipo de cluster Kubernetes, inicie os serviços, incluindo o Postgres, crie os DBs e semele -os com resumo do destino.
bix bootstrapEm seguida, inicie o controle e os servidores da Web e os processos em segundo plano. Isso também abrirá um console da IEX, onde você pode explorar o status do processo:
bix devAgora existem três servidores da web acessíveis:
Para abrir um editor totalmente configurado, simplesmente CD no diretor principal e depois abra o espaço de trabalho everything :
cd batteries-included && code .vscode/everything.code-workspace