No mundo de hoje, a agilidade no desenvolvimento de software é crucial para o sucesso. Toda empresa moderna precisa de uma plataforma de desenvolvimento, uma ferramenta que se tornou comum em organizações de todos os níveis de maturidade.
Neste artigo, vamos conhecer melhor a StackSpot, uma plataforma de desenvolvimento com inúmeros recursos que buscam a padronização, escalabilidade e segurança das aplicações. Acompanhe!
O que é uma plataforma de desenvolvimento?
Uma plataforma de desenvolvimento pode ser desde um “Portal para desenvolvedores” com práticas comuns dos times e script de automação para padronização, até uma plataforma onde as pessoas desenvolvedoras podem usar auto-service de processos automatizados.
Assim, a maturidade de uma plataforma é determinada pelas capacidades já desenvolvidas e implementadas. Em resumo, uma plataforma que possa lidar com os cinco componentes essenciais descritos a seguir:
- Gestão de configuração de aplicação;
- Orquestração de infraestrutura;
- Gestão de configuração de ambiente;
- Gestão de deploy;
- Gestão de acesso e permissão (RBac/Abac/Pbac).
StackSpot e plataforma de desenvolvimento
A StackSpot é uma plataforma de desenvolvimento e a grande vantagem de utilizá-la é que, em vez de criar tudo do zero e adquirir novas competências, você pode aproveitar uma plataforma robusta e pronta para uso.
A plataforma oferece uma base completa que otimiza o processo de desenvolvimento de ponta a ponta, permitindo que as equipes se concentrem em entregar valor rapidamente e com segurança.
Workspaces personalizados para cada equipe
A StackSpot nos possibilita criar Workspaces dedicados para cada equipe, proporcionando um ambiente de desenvolvimento organizado e personalizado. Isso garante que cada equipe tenha acesso aos recursos e configurações específicas de que precisa para trabalhar com eficiência.
Usamos essa abordagem internamente para estruturar os acessos na nossa plataforma:
Consuma inovação, comece a transformação
Assine nosso boletim informativo para se manter atualizado sobre as práticas recomendadas mais recentes para aproveitar a tecnologia para gerar impacto nos negócios
Gerenciamento granular de acessos e contas na nuvem
Com a StackSpot, configuramos o acesso aos Workspaces, garantindo que cada pessoa da equipe tenha o nível de acesso necessário para realizar suas tarefas. Isso evita acessos indevidos e protege os dados confidenciais da empresa.
Então, criamos os grupos para os times:
E, em cada grupo, adicionamos as pessoas membras e os papéis correspondentes a cada um:
Também definimos os Recursos que cada grupo terá acesso:
Os recursos podem ser adicionados de forma granular:
Padronização, escalabilidade e segurança com Plugins
Para criar suas aplicações e recursos de infraestrutura na nuvem, as equipes utilizam exclusivamente os Plugins criados no Estúdio do time de plataforma. Essa abordagem garante padronização, escalabilidade e segurança em todo o processo de desenvolvimento.
Os Plugins são compartilhados com as Workspaces dos times usando o conceito de Stacks, onde agrupamos os Plugins por finalidades. As Stacks e os Plugins são versionados e documentados, trazendo clareza sobre seus funcionamentos e evoluções.
Criação e implementação rápidas de novas aplicações
Agora, confira o dia a dia de uma pessoa desenvolvedora usando a StackSpot para criar uma nova aplicação e sua respectiva infraestrutura. O processo é simples e intuitivo, seguindo estas etapas:
- No terminal, o primeiro passo é a pessoa usuária fazer login na plataforma.
- Depois, selecione o Workspace da sua equipe. Aqui, usaremos o do próprio time de plataforma para demonstração.
- Basta criar a aplicação a partir de um Starter. Para nosso exemplo, iremos criar uma simples Aplicação que lista arquivos de um Bucket S3, e ela executará no nosso Cluster Kubernetes. Então, usaremos aqui o Starter eks-app, que já inicializa para a aplicação com a pipeline pronta para ser deployada quando necessário.
- Agora, a pessoa usuária define os recursos de infraestrutura que sua Aplicação. É necessário um repositório ECR para armazenar as imagens da própria aplicação e um Bucket S3 que servirá de fonte para listar os arquivos contidos nele.
- Então, basta listar os Plugins do Studio e aplicar eles:
- listando;
- Então, basta listar os Plugins do Studio e aplicar eles:
- aplicando o de ECR repository;
- aplicando o S3 Bucket.
- Podemos registrar a aplicação na StackSpot. Com isso, ela já estará visível no portal e pronta para começar o deploy.
- Vamos executar um primeiro deploy da aplicação no nosso ambiente de desenvolvimento versão 0.0.1. Com isso, os recursos de infraestrutura (ECR e bucket S3) já serão provisionados.
- Podemos acompanhar o status com o comando sugerido no passo anterior.
- Podemos ver no portal as Connection Interfaces criadas referentes aos recursos provisionados na nuvem.
- Vamos aplicar o Plugin que gera nosso código Python de exemplo:
- Nosso Plugin gera o Dockerfile e o app.py:
- Vamos aplicar o Plugin que irá gerar o deployment e os outros objetos do Kubernetes para nossa Aplicação:
- Por último, basta fazer “commit & push” dos arquivos, disparar a pipeline e teremos nossa Aplicação pronta para acesso interno:
- Nossa pipeline gerada pelo Plugin que faz uso de um Reusable Workflow na nossa Organização:
- Adicionamos arquivo de exemplo ao Bucket:
- Como nossos Plugins já definem padrões de endereços internos para as Aplicações, tudo já é provisionado e, por meio da nossa VPN interna, podemos acessar a nossa nova aplicação:
Conclusão
A StackSpot se tornou uma plataforma essencial para o nosso processo de desenvolvimento de software.
Por meio da criação de Workspaces personalizados, gerenciamento granular de acessos, Plugins padronizados e pipelines automatizadas, conseguimos agilizar o desenvolvimento de novas aplicações, garantir a segurança e a escalabilidade da infraestrutura, além de otimizar o tempo das equipes.
Enfim, a StackSpot nos permite trabalhar de forma mais eficiente e colaborativa, impulsionando a inovação e o sucesso da nossa empresa.
Comente abaixo se tiver alguma dúvida!