generator-springboot-hexagonal
Version:
A code generator for SpringBoot microservices in Hexagonal Architecture
95 lines (91 loc) • 3.49 kB
YAML
# This is a sample build configuration for Java (Maven).
# Check our guides at https://confluence.atlassian.com/x/zd-5Mw for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: maven:3.6.3-openjdk-17
pipelines:
pull-requests:
feature/*:
- step:
name: Test Feature
size: 2x
caches:
- maven
script:
- mvn -B -X clean test # -B batch mode makes Maven less verbose
bugfix/*:
- step:
name: Test BugFix
size: 2x
caches:
- maven
script:
- mvn -B -X clean test # -B batch mode makes Maven less verbose
branches:
master:
- step:
name: 'Build and test'
caches:
- maven
script: # Modify the commands below to build your repository.
- mvn -s settings.xml -B clean test # -B batch mode makes Maven less verbose
- step:
name: 'Gerar imagem produção'
caches:
- maven
script:
- mvn -s settings.xml clean install -DskipTests jib:dockerBuild
- MVN_VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)
- pipe: atlassian/aws-ecr-push-image:1.2.2
variables:
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION
IMAGE_NAME: <%= appName %>/<%= appName %>
TAGS: '${MVN_VERSION} latest'
services:
- docker
- step:
name: 'Deploy Produção'
deployment: production
trigger: manual
script:
- pipe: atlassian/aws-eks-kubectl-run:1.4.1
variables:
AWS_ACCESS_KEY_ID: $AWS_EKS_ID
AWS_SECRET_ACCESS_KEY: $AWS_EKS_SECRET
AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION
CLUSTER_NAME: 'esteira'
KUBECTL_COMMAND: 'rollout restart deployment microservice-Fluxos'
dev:
- step:
name: 'Build and test'
caches:
- maven
script: # Modify the commands below to build your repository.
- mvn -s settings.xml -B clean test # -B batch mode makes Maven less verbose
- step:
name: 'Gerar imagem'
caches:
- maven
script:
- mvn -s settings.xml clean install -DskipTests jib:dockerBuild
- pipe: atlassian/aws-ecr-push-image:1.2.2
variables:
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION
IMAGE_NAME: <%= appName %>/<%= appName %>
TAGS: 'dev'
services:
- docker
- step:
name: 'Deploy homologação'
deployment: staging
trigger: automatic
script:
- pipe: atlassian/kubectl-run:1.3.3
variables:
KUBE_CONFIG: $KUBE_CONFIG_HML
KUBECTL_COMMAND: '--insecure-skip-tls-verify rollout restart deployment microservice-Fluxos'