Skip to main content

pencilctl_lite

Repositório contendo o script pencilctl_lite, responsável por fazer deploy de projetos que utilizem uma estrutura de docker stack, mas que não serão executados no cluster principal da Pencil.

Quick Start

Para utilizar este script, existem algumas pré-requisitos:

  1. Um cluster swarm tem que existir na máquina em que ele será executado;
  2. O projeto que será alvo do deploy deve possuir uma pasta docker/production, contendo os arquivos Dockerfile (caso as stacks exigam imagens customizadas), e os arquivos de stack, que serão utilizados para realizar o deploy do projeto.
  3. O diretório docker/production, deve ter a seguinte estrutura:

estrutura

  • xpto: Diretório que centraliza todos os arquivos de uma stack. Um projeto pode ter mais de uma stack, por exemplo, uma stack para fazer deploy do servidor, e outra para um http proxy ou um redis. O pencilctl _lite permite fazer deploy de multiplas stacks. Diretório obrigatório;
  • xpto/stacks: Diretório contendo os arquivos de stack do projeto. Diretório obrigatório;
  • xpto/nginx_confs: Diretório contendo arquivos de configuração do nginx. Diretório optativo;
  • xpto/server: Diretório contendo o Dockerfile do serviço chamado server, declarado no arquivo de stack. Diretório optativo;
  • xpto/db: Diretório contendo o Dockerfile do serviço chamado db, declarado no arquivo de stack. Diretório optativo;
  • xpto/nginx: Diretório contendo o Dockerfile do serviço chamado nginx, declarado no arquivo de stack Diretório optativo;

Essa estrutura deve existir no repositório do projeto que será alvo do deploy. O papel do script é apenas acessar esse diretório e automatizar os processos de build e deploy. Essa estrutura também padroniza o nome/tag das imagens que são construidas via ./pencilctl_lite build.

Supondo a stack xpto, o comando para buildar a imagem do server seria:

./pencilctl_lite.sh build --docker_path=/home/user/xpto/docker --service=server --stack=xpto

Este comando geraria a imagem 127.0.0.1:5000/xpto_server:stable-prod.

O comando para fazer deploy da stack:

./pencilctl_lite.sh deploy --docker_path=/home/user/xpto/docker --stack=xpto

Este comando geraria a stack xpto_prod.

Para saber quais comandos o script possui e quais argumentos ele recebe, basta executar:

./pencilctl_lite.sh help

Release files for pencilctl-lite 0.0.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pencilctl-lite 0.0.13
File Size Uploaded
pencilctl-lite-0.0.13.tar.gz 3.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pencilctl-lite 0.0.13
File Interpreter ABI Platform
pencilctl_lite-0.0.13-py3-none-any.whl Python 3 none any Details

Total release size: 7.1 kB

Release files / pencilctl-lite-0.0.13.tar.gz

Download URL pencilctl-lite-0.0.13.tar.gz
Size 3.4 kB
Tags Source
SHA-256 checksum
How to use checksums
45365e7f063a3b5635b132e6e22e9d6e3b4feaab39569d652649901d1a096be7
BLAKE2b-256 checksum
How to use checksums
819591c8a94d5323c21e9fcb146b16b8f7d7478ae9ceeeead30ac9ad9c667cfa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.14 CPython/3.11.0 Linux/6.0.10-300.fc37.x86_64

Release files / pencilctl_lite-0.0.13-py3-none-any.whl

Download URL pencilctl_lite-0.0.13-py3-none-any.whl
Size 3.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5b76957bb2c8460fbefb1eff16aa049514881329cbedf8c83d6e5d317912c9af
BLAKE2b-256 checksum
How to use checksums
7982a1f8b66c7cbce9eb50712fdc1f4117ff28643a1418668cfff9ba2d5e753a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.14 CPython/3.11.0 Linux/6.0.10-300.fc37.x86_64

Release history Release notifications | RSS feed

This release

0.0.13 This release

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page